:root{color-scheme:light;--bg:#f4f1ec;--surface:#fff;--ink:#1c2528;--muted:#5c686c;--line:#ddd6cc;--line-strong:#bdb4aa;--accent:#2f2483;--accent-dark:#241a6a;--accent-soft:#efecff;--warning:#8b3e13;--error:#a32020;--focus:#4f46e5;--shadow:0 16px 44px rgba(28,37,40,.08);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-height:100%}body,html{background:var(--bg)}body{color:var(--ink);margin:0;min-height:100vh;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}a{color:inherit}[hidden]{display:none!important}.app-shell{margin:0 auto;padding:18px 14px 28px;width:min(100%,760px)}.app-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:14px;padding:2px 2px 0}.app-header h1,.panel h2{letter-spacing:0;margin:0}.app-header h1{font-size:clamp(1.45rem,1.2rem + 1vw,2rem);line-height:1.05}.header-actions{display:grid;flex:0 0 auto;gap:8px;justify-items:end;max-width:50%}.language-switch{background:hsla(0,0%,100%,.76);border:1px solid var(--line);border-radius:8px;display:inline-grid;gap:2px;grid-template-columns:repeat(2,minmax(0,1fr));padding:2px}.language-switch button{background:transparent;border:0;border-radius:6px;color:var(--muted);cursor:pointer;font-size:.78rem;font-weight:900;min-height:32px;min-width:38px}.language-switch button.is-active{background:var(--accent);color:#fff}.eyebrow{color:var(--accent-dark);font-size:.72rem;font-weight:800;letter-spacing:.08em;margin:0 0 6px;text-transform:uppercase}.session-pill{background:hsla(0,0%,100%,.76);border:1px solid var(--line);border-radius:999px;color:var(--muted);flex:0 0 auto;font-size:.78rem;font-weight:700;max-width:100%;overflow:hidden;padding:7px 10px;text-overflow:ellipsis;white-space:nowrap}.app-main{min-height:420px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.flow-panel,.state-panel{padding:20px}.state-panel{display:grid;gap:12px;place-items:center;text-align:center}.flow-panel h2,.state-panel h2{font-size:1.35rem;line-height:1.15}.consent-summary p,.inline-alert,.panel-heading p,.state-panel p,.status{color:var(--muted)}.consent-summary p,.inline-alert,.state-panel p{line-height:1.5;margin:0}.panel-heading{margin-bottom:18px}.stepper{display:grid;gap:8px;grid-template-columns:repeat(var(--intake-step-count,3),minmax(0,1fr));list-style:none;margin:0 0 12px;padding:0}.stepper li{align-items:center;background:hsla(0,0%,100%,.64);border:1px solid var(--line);border-radius:8px;color:var(--muted);display:flex;gap:8px;min-width:0;padding:9px}.stepper span{border:1px solid var(--line-strong);border-radius:999px;display:grid;flex:0 0 24px;font-size:.78rem;font-weight:800;height:24px;place-items:center;width:24px}.stepper strong{font-size:.82rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stepper li.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--ink)}.stepper li.is-complete span{background:var(--accent);border-color:var(--accent);color:#fff}.field-grid{display:grid;gap:14px}label{display:grid;gap:7px}.dob-field__label,.signature-heading span,label>span{color:#2f3a3d;font-size:.9rem;font-weight:750}.dob-field{display:grid;gap:7px;min-width:0}.dob-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.dob-grid label>span{font-size:.78rem}input,select,textarea{background:#fff;border:1px solid var(--line-strong);border-radius:8px;color:var(--ink);min-height:46px;outline:none;padding:10px 12px;width:100%}textarea{min-height:112px;resize:vertical}.language-switch button:focus-visible,a:focus-visible,button:focus-visible,canvas:focus-visible,input:focus,select:focus,textarea:focus{border-color:var(--focus);outline:3px solid rgba(79,70,229,.25);outline-offset:2px}.button{align-items:center;border:1px solid transparent;border-radius:8px;cursor:pointer;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:46px;padding:11px 16px;text-decoration:none}.button.primary{background:var(--accent);color:#fff}.button.primary:hover{background:var(--accent-dark)}.button.secondary{background:#fff;border-color:var(--line-strong);color:var(--ink)}.button:disabled{cursor:not-allowed;opacity:.58}.icon-button{background:#fff;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink);cursor:pointer;display:inline-grid;font-size:1.12rem;font-weight:900;height:42px;line-height:1;place-items:center;width:42px}.icon-button:disabled{cursor:not-allowed;opacity:.42}.text-button{background:transparent;border:0;color:var(--accent-dark);cursor:pointer;font-weight:800;padding:4px}.actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.actions .button{width:100%}.split-actions{justify-content:space-between}.split-actions .button{min-width:112px;width:auto}.status{font-size:.92rem;line-height:1.45;margin:14px 0 0;min-height:22px}.inline-alert,.status.is-error{color:var(--error)}.consent-summary{align-items:flex-start;background:#fbfaf8;border:1px solid var(--line);border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:14px}.consent-summary strong{display:block;margin-bottom:4px}.consent-summary .button{flex:0 0 auto;min-height:40px;padding:8px 12px}.check-row{align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:8px;display:flex;gap:10px;grid-template-columns:none;margin-top:16px;padding:12px}.check-row input{flex:0 0 20px;margin-top:2px;min-height:20px;width:20px}.check-row span{line-height:1.45}.signature-block{margin-top:16px}.signature-heading{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}#signaturePad{background:linear-gradient(#fff,#fff),repeating-linear-gradient(0deg,transparent,transparent 34px,rgba(28,37,40,.08) 35px);border:1px solid var(--line-strong);border-radius:8px;display:block;height:180px;touch-action:none;width:100%}.question-progress{display:grid;gap:8px;margin-bottom:16px}#questionCounter{color:var(--muted);font-size:.88rem;font-weight:800}.progress-track{background:#e5dfd7;border-radius:999px;height:8px;overflow:hidden}.progress-track span{background:var(--accent);border-radius:inherit;display:block;height:100%;transition:width .16s ease;width:0}.question-host{min-height:250px}.question-card{display:grid;gap:14px}.question-title{font-size:1.15rem;line-height:1.25;margin:0}.question-help{color:var(--muted);line-height:1.45;margin:-6px 0 0}.choice-list{display:grid;gap:10px}.choice{align-items:center;background:#fff;border:1px solid var(--line-strong);border-radius:8px;display:flex;gap:10px;grid-template-columns:none;min-height:48px;padding:12px}.choice input{flex:0 0 20px;min-height:20px;width:20px}.choice:has(input:checked){background:var(--accent-soft);border-color:var(--accent)}.question-followup{margin-top:2px}.insurance-investigation-card{border-top:1px solid var(--line);margin-top:14px;padding-top:16px}.insurance-followup,.insurance-question{display:grid;gap:10px}.insurance-followup[hidden]{display:none}.insurance-choice-list{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.complete-mark{background:var(--accent-soft);border-radius:999px;color:var(--accent-dark);display:grid;font-size:1.7rem;font-weight:900;height:54px;place-items:center;width:54px}.spinner{animation:spin .8s linear infinite;border:3px solid #ded8cf;border-radius:50%;border-top:3px solid var(--accent);height:34px;width:34px}.modal-backdrop{background:rgba(28,37,40,.5);display:grid;inset:0;padding:12px;place-items:stretch;position:fixed;z-index:40}.pdf-modal{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 22px 70px rgba(28,37,40,.24);display:grid;grid-template-rows:auto minmax(0,1fr) auto;justify-self:center;max-height:calc(100vh - 24px);overflow:hidden;width:min(100%,940px)}.pdf-modal-footer,.pdf-modal-header{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:10px;padding:12px 14px}.pdf-modal-header{justify-content:space-between}.pdf-modal-header h2{font-size:1.05rem;line-height:1.2;margin:0}.pdf-viewer-wrap{background:#f7f3ef;display:grid;gap:8px;grid-template-rows:minmax(0,1fr) auto;min-height:0;overflow:auto;padding:12px}.pdf-viewer-frame{background:#fff;border:1px solid var(--line);border-radius:4px;box-shadow:0 10px 28px rgba(28,37,40,.14);height:100%;min-height:min(72vh,760px);width:100%}.pdf-modal-status{color:var(--muted);font-size:.92rem;line-height:1.45;margin:0;text-align:center}.pdf-modal-status.is-error{color:var(--error)}.pdf-modal-footer{border-bottom:0;border-top:1px solid var(--line);justify-content:flex-end}@keyframes spin{to{transform:rotate(1turn)}}@media (min-width:640px){.app-shell{padding-top:34px}.flow-panel,.state-panel{padding:28px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.actions .button{width:auto}#signaturePad{height:220px}}@media (max-width:520px){.app-header{align-items:stretch;flex-direction:column}.header-actions{justify-items:stretch;max-width:none}.language-switch{width:100%}.session-pill{max-width:none}.consent-summary{align-items:stretch;flex-direction:column}.modal-backdrop{padding:0}.pdf-modal{border-radius:0;max-height:100vh;width:100%}.pdf-viewer-frame{min-height:calc(100vh - 170px)}.pdf-modal-footer .button{width:100%}}@supports not selector(:has(*)){.choice.is-selected{background:var(--accent-soft);border-color:var(--accent)}}