.twf-form{display:grid;gap:1rem;max-width:36rem;position:relative}
.twf-form-preview-shell{padding:1.25rem;border-radius:var(--tw-radius-card,.75rem);background:var(--tw-color-surface,#fff);border:1px solid var(--tw-color-border,#e2e8f0)}
.twf-form__title{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--tw-color-text,#0f172a)}
/* Visually hidden — never left:-9999px (RTL scrollWidth = viewport+9999). */
.twf-form__hp{position:absolute;inset-inline-start:0;inset-block-start:0;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;pointer-events:none}
.twf-form__label{display:block;font-weight:600;margin-bottom:.35rem;text-align:start;color:var(--tw-color-text,#0f172a)}
/* Float-inside-field labels (text-like inputs): real <label for> + logical inset */
.twf-form__field--float{position:relative}
.twf-form__field--float > .twf-form__label{position:absolute;inset-inline-start:.75rem;top:50%;transform:translateY(-50%);margin:0;padding:0 .25rem;font-size:.9375rem;font-weight:500;color:var(--tw-color-muted,#64748b);pointer-events:none;background:var(--tw-color-surface,#fff);transition:top .15s ease,transform .15s ease,font-size .15s ease,color .15s ease;z-index:1}
.twf-form__field--float.twf-form__field--textarea > .twf-form__label{top:1rem;transform:none}
.twf-form__field--float.is-floating > .twf-form__label,.twf-form__field--float:focus-within > .twf-form__label{top:0;transform:translateY(-50%);font-size:.75rem;font-weight:600;color:var(--tw-color-brand-primary,#2563eb)}
.twf-form__field--float .twf-form__input,.twf-form__field--float textarea{padding-block:.85rem}
.twf-form__input,.twf-form__select,.twf-form select,.twf-form textarea{width:100%;padding:.65rem .75rem;border:1px solid var(--tw-color-border,#e2e8f0);border-radius:var(--tw-radius-input,.5rem);background:var(--tw-color-surface,#fff);color:var(--tw-color-text,#0f172a);font:inherit}
.twf-form__input:user-invalid,.twf-form__select:user-invalid,.twf-form select:user-invalid,.twf-form textarea:user-invalid{border-color:#dc2626}
.twf-form__field.is-preview-highlight .twf-form__input,.twf-form__field.is-preview-highlight .twf-form__select,.twf-form__field.is-preview-highlight select,.twf-form__field.is-preview-highlight textarea,.twf-form__field.is-preview-highlight .twf-form__radio-group,.twf-form__field.is-preview-highlight .twf-form__checkbox{outline:2px solid color-mix(in srgb,var(--tw-color-brand-primary,#2563eb) 45%,transparent);outline-offset:2px;border-radius:var(--tw-radius-input,.5rem)}
.twf-form__select{appearance:auto;cursor:pointer}
.twf-form__input--file{padding:.5rem .65rem;font-size:.875rem;cursor:pointer}
.twf-form__input--file::file-selector-button{margin-inline-end:.75rem;padding:.35rem .75rem;border:1px solid var(--tw-color-border,#e2e8f0);border-radius:var(--tw-radius-button,.5rem);background:color-mix(in srgb,var(--tw-color-brand-primary,#2563eb) 10%,transparent);color:var(--tw-color-text,#0f172a);font:inherit;font-weight:600;cursor:pointer}
.twf-form__help{margin:.35rem 0 0;font-size:.8125rem;color:var(--tw-color-muted,#64748b);line-height:1.4}
.twf-form__radio-group{display:grid;gap:.5rem}
.twf-form__radio{display:flex;align-items:flex-start;gap:.5rem;font-size:.9375rem;color:var(--tw-color-text,#0f172a);cursor:pointer}
.twf-form__radio-input,.twf-form__checkbox-input{width:1.1rem;height:1.1rem;margin-top:.15rem;accent-color:var(--tw-color-brand-primary,#2563eb);flex-shrink:0}
.twf-form__submit{display:inline-flex;align-items:center;justify-content:center;font-weight:600;cursor:pointer;border:0;padding:var(--tw-button-padding-y,.65rem) var(--tw-button-padding-x,1.25rem);border-radius:var(--tw-radius-button,.5rem);background:var(--tw-color-brand-primary,#2563eb);color:var(--tw-color-brand-on-primary,#fff);font-size:1rem;line-height:1.25}
.twf-form__submit:disabled{opacity:.65;cursor:not-allowed}
.twf-form__submit:not(:disabled):hover{filter:brightness(.95)}
.twf-form__error{color:#dc2626;font-size:.875rem;margin:.25rem 0 0}
.twf-form__field.is-invalid .twf-form__input,.twf-form__field.is-invalid .twf-form__select,.twf-form__field.is-invalid select,.twf-form__field.is-invalid textarea,.twf-form__field.is-invalid .twf-form__radio-group,.twf-form__field.is-invalid .twf-form__checkbox{border-color:#dc2626;box-shadow:0 0 0 1px #dc2626}
.twf-form__message{padding:.75rem;border-radius:.5rem;background:#ecfdf5;color:#047857}
.twf-form__message.is-error{background:#fef2f2;color:#b91c1c}
.twf-form__empty{padding:1rem;border:1px dashed var(--tw-color-border,#e2e8f0);border-radius:.5rem;color:var(--tw-color-muted,#64748b)}
.twf-form__empty-hint{margin:0;color:var(--tw-color-muted,#64748b);font-size:.875rem}
.twf-form__captcha{min-height:65px}
.twf-form__captcha-preview{margin:.5rem 0}
.twf-form__captcha-badge{display:inline-block;padding:.35rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;background:color-mix(in srgb,var(--tw-color-brand-primary,#2563eb) 12%,transparent);color:var(--tw-color-text,#0f172a)}
.twf-form__captcha-hint{margin:.25rem 0;font-size:.8125rem;color:var(--tw-color-muted,#64748b)}
.twf-form__captcha-hint--off{font-style:italic}
.twf-form__checkbox{display:flex;align-items:flex-start;gap:.5rem;font-size:.9375rem;color:var(--tw-color-text,#0f172a);cursor:pointer}
.twf-form__checkbox input{margin-top:.2rem}
.twf-form__field--radio .twf-form__label,.twf-form__field--radio > .twf-form__label{margin-bottom:.5rem}
.twf-form__html{font-size:.9375rem;line-height:1.5;color:var(--tw-color-text,#0f172a)}
.twf-form__html p{margin:0 0 .5rem}
.twf-form__html p:last-child{margin-bottom:0}
.twf-form__field--hidden-preview{display:flex;align-items:center;min-height:2.25rem;padding:.5rem .75rem;border:1px dashed var(--tw-color-border,#e2e8f0);border-radius:var(--tw-radius-input,.5rem);background:color-mix(in srgb,var(--tw-color-muted,#64748b) 6%,transparent)}
.twf-form__hidden-chip{display:inline-flex;align-items:center;border-radius:var(--tw-radius-button,.5rem);padding:.15rem .55rem;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--tw-color-page,#f8fafc);color:var(--tw-color-muted,#64748b)}
.twf-form__policy-link{font-weight:600;text-decoration:underline}
body[data-twf-thanks-open]{overflow:hidden}
.twf-thanks-backdrop{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(15,23,42,.45);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.twf-thanks-backdrop[hidden]{display:none!important}
.twf-thanks-backdrop:not(.is-reduced){animation:twf-thanks-fade .15s ease}
.twf-thanks{width:100%;max-width:32rem;max-height:90vh;overflow:auto;background:var(--tw-color-surface,#fff);color:var(--tw-color-text,#0f172a);border:1px solid var(--tw-color-border,#e2e8f0);border-radius:var(--tw-radius-card,.75rem);box-shadow:0 24px 48px -16px rgba(15,23,42,.22)}
.twf-thanks-backdrop:not(.is-reduced) .twf-thanks{animation:twf-thanks-in .2s cubic-bezier(.22,1,.36,1)}
@keyframes twf-thanks-fade{from{opacity:0}to{opacity:1}}
@keyframes twf-thanks-in{from{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
.twf-thanks-backdrop,.twf-thanks{animation:none!important}
}
.twf-thanks__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--tw-color-border,#e2e8f0)}
.twf-thanks__title{margin:0;font-size:1.125rem;font-weight:600;letter-spacing:-.01em}
.twf-thanks__close{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin:0;padding:0;border:0;background:transparent;color:var(--tw-color-muted,#64748b);font-size:1.5rem;line-height:1;cursor:pointer;border-radius:var(--tw-radius-button,.5rem)}
.twf-thanks__close:hover,.twf-thanks__close:focus-visible{color:var(--tw-color-text,#0f172a);background:color-mix(in srgb,var(--tw-color-muted,#64748b) 12%,transparent)}
.twf-thanks__body{display:grid;gap:.75rem;padding:1.25rem;justify-items:center;text-align:center}
.twf-thanks__image{max-height:5.5rem;width:auto;max-width:100%;object-fit:contain}
.twf-thanks__image[hidden]{display:none!important}
.twf-thanks__message{margin:0;white-space:pre-wrap;text-align:center;color:var(--tw-color-text,#0f172a);line-height:1.5}
.twf-thanks__footer{display:flex;justify-content:flex-end;padding:.75rem 1.25rem 1.25rem}
.twf-thanks__ok{display:inline-flex;align-items:center;justify-content:center;font-weight:600;cursor:pointer;border:0;padding:var(--tw-button-padding-y,.65rem) var(--tw-button-padding-x,1.25rem);border-radius:var(--tw-radius-button,.5rem);background:var(--tw-color-brand-primary,#2563eb);color:var(--tw-color-brand-on-primary,#fff);font:inherit;font-size:1rem;line-height:1.25}
