/* The4thStack Core — form base styles. Themes can override the custom properties. */
.t4s-form{--_bg:var(--t4s-field-bg,#0d1110);--_bd:var(--t4s-border,#26302b);--_tx:var(--t4s-text,#f5f7f5);--_mu:var(--t4s-muted,#a4ada8);--_ac:var(--t4s-accent,#5e9e7e);--_er:var(--t4s-danger,#ff6b72);display:grid;gap:1rem;max-width:100%}
.t4s-form__grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.t4s-form__row{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));align-items:start}
.t4s-field{display:grid;gap:.375rem;min-width:0;margin:0;border:0;padding:0}
.t4s-field>label,.t4s-field legend{font-weight:600;font-size:.9375rem;color:var(--_tx)}
.t4s-field legend{margin-bottom:.5rem;padding:0}
.t4s-opt{font-weight:400;color:var(--_mu);font-size:.8125rem}
.t4s-req{color:var(--_er)}
.t4s-form input[type=text],.t4s-form input[type=email],.t4s-form input[type=file],.t4s-form select,.t4s-form textarea{width:100%;min-height:2.875rem;padding:.65rem .85rem;border:1px solid var(--_bd);border-radius:10px;background:var(--_bg);color:var(--_tx);font:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}
.t4s-form textarea{min-height:9rem;resize:vertical}
.t4s-form input:focus-visible,.t4s-form select:focus-visible,.t4s-form textarea:focus-visible{outline:none;border-color:var(--_ac);box-shadow:0 0 0 3px color-mix(in srgb,var(--_ac) 30%,transparent)}
.t4s-form [aria-invalid=true]{border-color:var(--_er)!important}
.t4s-error{margin:0;color:var(--_er);font-size:.8125rem;min-height:0}
.t4s-error:empty{display:none}
.t4s-help,.t4s-fineprint{margin:0;color:var(--_mu);font-size:.8125rem;line-height:1.5}
.t4s-fineprint a,.t4s-consent__link{color:var(--_ac)}
.t4s-chips__list{display:flex;flex-wrap:wrap;gap:.5rem}
.t4s-chip{position:relative;display:inline-flex;cursor:pointer}
.t4s-chip input{position:absolute;opacity:0;inset:0;cursor:pointer}
.t4s-chip span{padding:.45rem .85rem;border:1px solid var(--_bd);border-radius:999px;font-size:.875rem;color:var(--_mu);transition:all .2s}
.t4s-chip input:checked+span{border-color:var(--_ac);color:var(--_tx);background:color-mix(in srgb,var(--_ac) 14%,transparent)}
.t4s-chip input:checked+span::before{content:"✓ ";color:var(--_ac)}
.t4s-chip input:focus-visible+span{outline:2px solid var(--_ac);outline-offset:2px}
.t4s-radios label{display:inline-flex;align-items:center;gap:.4rem;margin-right:1rem;color:var(--_tx);cursor:pointer}
.t4s-radios--stacked label{display:flex;margin:0 0 .5rem}
.t4s-indent{margin:0 0 .75rem 1.6rem}
.t4s-consent label{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;font-size:.875rem;color:var(--_mu);line-height:1.5;cursor:pointer}
.t4s-consent input,.t4s-radios input{accent-color:var(--_ac);width:1.1rem;height:1.1rem;flex:none;margin-top:.15rem}
.t4s-form__status:empty{display:none}
.t4s-form__status,.t4s-notice{padding:.85rem 1rem;border-radius:10px;border:1px solid var(--t4s-border,#26302b);background:rgba(255,255,255,.03);color:var(--t4s-text,#f5f7f5);font-size:.9375rem;outline:none}
.t4s-form__status.is-success,.t4s-notice.is-success{border-color:var(--t4s-accent,#5e9e7e);background:color-mix(in srgb,var(--t4s-accent,#5e9e7e) 10%,transparent)}
.t4s-form__status.is-error,.t4s-notice.is-error{border-color:var(--t4s-danger,#ff6b72);background:color-mix(in srgb,var(--t4s-danger,#ff6b72) 10%,transparent)}
.t4s-notice{margin-bottom:1rem}
.t4s-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.t4s-panel{display:grid;gap:1rem}
.t4s-lead{font-size:1.0625rem;margin:0}
.t4s-gpc{padding:.85rem 1rem;border-left:3px solid var(--t4s-accent,#5e9e7e);background:rgba(94,158,126,.06);border-radius:6px}
.t4s-dns__browser{padding:1rem 1.25rem;border:1px dashed var(--t4s-border,#26302b);border-radius:12px}
.t4s-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.t4s-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.875rem;padding:.7rem 1.3rem;border-radius:10px;border:1px solid transparent;font:inherit;font-weight:700;font-size:.9375rem;line-height:1;text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .2s,background .2s,border-color .2s}
.t4s-btn--primary{background:var(--t4s-cta,#dc143c);color:var(--t4s-cta-ink,#fff)}
.t4s-btn--primary:hover{background:var(--t4s-cta-hover,var(--t4s-cta,#dc143c));box-shadow:0 0 0 4px color-mix(in srgb,var(--t4s-cta,#dc143c) 22%,transparent);transform:translateY(-1px)}
.t4s-btn--ghost{background:transparent;color:var(--t4s-text,#f5f7f5);border-color:var(--t4s-border,#26302b)}
.t4s-btn--ghost:hover{border-color:var(--t4s-accent,#5e9e7e)}
.t4s-btn--danger{background:var(--t4s-red,#dc143c);color:#fff}
.t4s-btn:focus-visible{outline:2px solid var(--t4s-accent,#5e9e7e);outline-offset:3px}
.t4s-btn[disabled]{opacity:.7;cursor:progress}
.t4s-form--inline{grid-template-columns:1fr auto;align-items:end}
@media (max-width:540px){.t4s-form--inline{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.t4s-btn,.t4s-chip span{transition:none}.t4s-btn--primary:hover{transform:none}}
.t4s-btn--block{width:100%}
.t4s-consents{display:grid;gap:.6rem}
.t4s-thankyou{padding:1.5rem;border:1px solid var(--t4s-accent,#5e9e7e);border-radius:14px;background:color-mix(in srgb,var(--t4s-accent,#5e9e7e) 8%,transparent);outline:none}
.t4s-thankyou__icon{display:grid;place-items:center;width:2.75rem;height:2.75rem;margin:0 0 .75rem;border-radius:50%;background:var(--t4s-accent,#5e9e7e);color:#04110a;font-weight:800;font-size:1.25rem}
.t4s-thankyou__title{margin:0 0 .5rem;font-size:1.25rem}
.t4s-thankyou .t4s-actions{margin-top:.5rem}
.t4s-form__more{display:grid;gap:inherit}
