*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background:var(--surface-canvas);color-scheme:light}body{min-width:320px;min-height:100vh;margin:0;color:var(--ink);background:var(--surface-canvas);font-family:var(--font-sans);line-height:1.5}button,input,textarea,select{font:inherit;font-family:inherit}a{color:inherit}button,input,textarea,select{min-height:44px}button{border:1px solid transparent;font-family:inherit}h1,h2,h3,p{margin:0}ul,ol{margin:0;padding:0}:root{color:#17212b;background:#e8edf1;font-family:var(--font-sans),sans-serif;--font-sans: "Inter", system-ui, sans-serif;--accent: #135E96;--accent-fg: #FFFFFF;--success: #00875A;--warning: #FFAB00;--danger: #DE350B;--info: #135E96;--ink: #17212b;--muted: #5d6975;--line: #c4ccd3;--paper: #ffffff;--control-border: #3f5360;--focus-ring: #1e5068;--active-indicator: #1e5068;--surface-canvas: #e9eef1;--surface-raised: #ffffff;--surface-muted: #f4f7f8}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,a{font:inherit}.surface{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:32px 0 56px}.surface-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;min-height:72px;border-bottom:3px solid var(--ink)}.brand-logo{width:46px;height:46px;object-fit:contain}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:1.2rem}h2{max-width:18ch;margin-bottom:18px;font-size:clamp(2.1rem,6vw,4.8rem);line-height:.98;letter-spacing:-.05em}.section-label{margin-bottom:4px;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.surface-name{padding:7px 10px;border:1px solid var(--ink);font-size:.78rem;font-weight:700}.workspace{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.5fr);min-height:560px;background:var(--paper)}.workspace-nav{padding:56px 32px;border-right:1px solid var(--line);background:#f3f6f8}.workspace-nav ul{margin:28px 0 0;padding:0;list-style:none}.workspace-nav li{padding:13px 0;border-top:1px solid var(--line);font-weight:700}.workspace-main{padding:64px clamp(28px,7vw,84px)}.lede{max-width:58ch;color:var(--muted);font-size:1.05rem;line-height:1.65}.primary-action{display:inline-block;margin-top:28px;padding:13px 18px;border:2px solid var(--accent);border-radius:2px;background:var(--accent);color:var(--accent-fg);font-weight:800;text-decoration:none}.portal-links{display:flex;flex-wrap:wrap;gap:12px}.auth-form,.setup-form{display:grid;max-width:420px;gap:18px;margin-top:32px}.auth-form label,.setup-form label{display:grid;gap:7px;color:var(--muted);font-size:.82rem;font-weight:700}.auth-form input,.setup-form input{width:100%;padding:12px;border:1px solid var(--line);border-radius:2px;color:var(--ink);background:var(--paper);font:inherit}.auth-form .primary-action,.setup-form .primary-action{justify-self:start;margin-top:2px}.workflow-panel{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.secondary-action{padding:9px 12px;border:1px solid var(--ink);border-radius:2px;color:var(--ink);background:transparent;cursor:pointer}.service-state{margin-top:42px;padding:14px 16px;border-left:4px solid var(--accent);background:#edf4f8}.service-state--error{border-color:var(--danger)}@media(max-width:720px){.surface-header{grid-template-columns:auto 1fr}.surface-name{display:none}.workspace{grid-template-columns:1fr}.workspace-nav{border-right:0;border-bottom:1px solid var(--line)}}.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.button:focus-visible,.menu [role=menuitem]:focus-visible,.dialog__close:focus-visible,.command-palette [role=option]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.button--primary{border-color:var(--accent);background:var(--accent);color:var(--accent-fg);box-shadow:0 1px 2px #14202b12}.button--secondary{border-color:var(--control-border);background:var(--surface-raised)}.button--ghost{color:var(--muted)}.button--ghost:hover:not(:disabled){background:#eef2f5;color:var(--ink)}.button--danger{border-color:var(--danger);background:var(--danger);color:#fff}.button:disabled{opacity:.55;cursor:not-allowed}.card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface-raised);box-shadow:0 1px 2px #14202b12}.card__header,.card__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px}.card__header{border-bottom:1px solid var(--line)}.card__header h2{font-size:1rem}.card__body{padding:22px}.card__footer{border-top:1px solid var(--line)}.badge{display:inline-flex;min-height:24px;align-items:center;padding:2px 9px;border:1px solid var(--line);border-radius:999px;background:#eef2f5;color:var(--muted);font-size:.75rem;font-weight:700;line-height:1}.badge--success{border-color:color-mix(in srgb,var(--success) 42%,var(--line));background:color-mix(in srgb,var(--success) 12%,#eef2f5);color:var(--ink)}.badge--warning{border-color:color-mix(in srgb,var(--warning) 46%,var(--line));background:color-mix(in srgb,var(--warning) 12%,#eef2f5);color:var(--ink)}.badge--danger{border-color:color-mix(in srgb,var(--danger) 42%,var(--line));background:color-mix(in srgb,var(--danger) 12%,#eef2f5);color:var(--ink)}.badge--info{border-color:color-mix(in srgb,var(--info) 42%,var(--line));background:color-mix(in srgb,var(--info) 12%,#eef2f5);color:var(--ink)}.badge--accent{border-color:color-mix(in srgb,var(--accent) 42%,var(--line));background:color-mix(in srgb,var(--accent) 12%,#eef2f5);color:var(--ink)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head__copy{display:grid;min-width:0;gap:6px}.page-head__copy h1{font-size:clamp(1.6rem,3vw,2rem);letter-spacing:-.02em}.eyebrow{color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.page-head__description,.empty-state__description{color:var(--muted)}.page-head__actions{display:flex;flex-wrap:wrap;gap:10px}.alert{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--line);border-left-width:4px;border-radius:12px;background:var(--surface-muted)}.alert--info{border-left-color:var(--info)}.alert--success{border-left-color:var(--success)}.alert--warning{border-left-color:var(--warning)}.alert--danger{border-left-color:var(--danger)}.empty-state{display:grid;justify-items:center;gap:9px;padding:48px 24px;text-align:center}.empty-state__mark{width:56px;height:8px;margin-bottom:7px;border-radius:999px;background:var(--line)}.progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:999px;background:#eef2f5}.progress::-webkit-progress-bar{background:#eef2f5}.progress::-webkit-progress-value{background:var(--accent)}.progress::-moz-progress-bar{background:var(--accent)}.skeleton{display:grid;gap:10px}.skeleton span{height:14px;border-radius:8px;background:#eef2f5;animation:skeleton-pulse 1.4s ease-in-out infinite alternate}.skeleton span:last-child{width:68%}.stepper{display:grid;gap:12px;list-style:none}.stepper li{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:start;gap:12px;color:var(--muted)}.stepper li[data-state=current],.stepper li[data-state=complete]{color:var(--ink)}.stepper__marker{display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface-raised);color:inherit;font-weight:800}.stepper [aria-current=step] .stepper__marker{border-color:var(--accent);background:var(--accent);color:var(--accent-fg)}.stepper li[data-state=complete] .stepper__marker{border-color:var(--success);background:color-mix(in srgb,var(--success) 12%,var(--surface-raised))}.stepper small{display:block;margin-top:3px;color:var(--muted)}.menu{position:absolute;z-index:300;display:grid;min-width:210px;gap:2px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface-raised);box-shadow:0 18px 52px #14202b2e}.menu [role=menuitem]{display:flex;width:100%;min-height:44px;align-items:center;gap:10px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer}.menu [role=menuitem]:hover:not(:disabled){background:#eef2f5}.dialog-layer,.command-layer{position:fixed;z-index:400;inset:0;display:grid;place-items:center;padding:20px;background:#14202b57}.dialog{display:grid;width:min(100%,560px);max-height:min(760px,90vh);overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface-raised);box-shadow:0 18px 52px #14202b2e}.dialog__header,.dialog__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px}.dialog__header{border-bottom:1px solid var(--line)}.dialog__footer{border-top:1px solid var(--line)}.dialog__body{overflow-y:auto;padding:22px}.dialog__close{min-width:44px;min-height:44px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:inherit;cursor:pointer}.toast-stack{position:fixed;z-index:500;right:20px;bottom:20px;display:grid;width:min(380px,calc(100vw - 32px));gap:10px}.toast{padding:14px 16px;border:1px solid var(--line);border-left-width:4px;border-radius:12px;background:var(--surface-raised);box-shadow:0 18px 52px #14202b2e}.toast--info{border-left-color:var(--info)}.toast--success{border-left-color:var(--success)}.toast--warning{border-left-color:var(--warning)}.toast--danger{border-left-color:var(--danger)}.message-list{display:grid;gap:14px;margin:0;padding:0;list-style:none}.message-list__item{display:flex}.message-list__item--patient{justify-content:flex-end}.message-bubble{display:grid;width:min(680px,88%);gap:8px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-raised);box-shadow:0 1px 2px #14202b12}.message-list__item--patient .message-bubble{border-color:color-mix(in srgb,var(--accent) 38%,var(--line));background:color-mix(in srgb,var(--accent) 12%,transparent)}.message-bubble>p:not(.record-meta){white-space:pre-wrap;overflow-wrap:anywhere}.command-layer{place-items:start center;padding-top:14vh}.command-palette{width:min(580px,100%);overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface-raised);box-shadow:0 18px 52px #14202b2e}.command-palette__search{display:grid;gap:6px;padding:14px 16px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.78rem;font-weight:700}.command-palette__search input{min-height:44px;padding:0;border:0;background:transparent;color:var(--ink);outline:0;font-size:1rem}.command-palette__list{display:grid;max-height:340px;gap:2px;overflow-y:auto;padding:8px}.command-palette [role=option]{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:12px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.command-palette [role=option][aria-selected=true]{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--active-indicator)}.command-palette [role=option] small{color:var(--muted)}.command-palette__empty{padding:32px 16px;color:var(--muted);text-align:center}@keyframes skeleton-pulse{0%{opacity:.52}to{opacity:1}}@media(max-width:720px){.page-head{display:grid}.page-head__actions{width:100%}.page-head__actions>*{flex:1 1 auto}.dialog-layer{padding:12px}.dialog{align-self:end;max-height:88vh}.toast-stack{right:16px;bottom:calc(80px + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){.skeleton span{animation:none}}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.skip-link{position:fixed;z-index:20;top:12px;left:12px;padding:10px 14px;background:var(--ink);color:var(--surface-raised);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.marketing-shell{display:grid;min-width:320px;min-height:100vh;grid-template-rows:auto 1fr auto;background:var(--surface-canvas)}.marketing-header,.marketing-footer{display:flex;width:min(74rem,calc(100% - 48px));align-items:center;justify-content:space-between;gap:24px;margin:0 auto}.marketing-header{min-height:76px;border-bottom:1px solid var(--line)}.marketing-brand{display:inline-flex;min-width:0;align-items:center;gap:12px;color:var(--ink);font-size:1rem;font-weight:800;text-decoration:none}.marketing-brand img{width:auto;max-width:180px;height:34px;object-fit:contain}.marketing-brand span{overflow-wrap:anywhere}.marketing-support,.marketing-footer a,.empty-state a,.alert a{color:var(--ink);font-weight:750;text-underline-offset:3px}.marketing-layout{display:grid;width:min(74rem,calc(100% - 48px));grid-template-columns:minmax(190px,240px) minmax(0,1fr);gap:clamp(36px,7vw,88px);margin:0 auto;padding:56px 0 72px}.marketing-progress{align-self:start;padding-top:8px}.marketing-progress .stepper{margin-top:20px}.marketing-layout main{min-width:0}.marketing-reading-column{display:grid;max-width:51.25rem;gap:28px}.marketing-reading-column>h1{max-width:20ch;font-size:clamp(2rem,5vw,3.6rem);font-weight:780;line-height:1.02;letter-spacing:-.04em;overflow-wrap:anywhere}.page-introduction{max-width:64ch;color:var(--muted);font-size:1.05rem}.program-catalog{display:grid;gap:28px}.program-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;list-style:none}.program-grid[data-program-count="1"]{grid-template-columns:minmax(0,560px)}.program-grid>li,.program-grid .card{min-width:0;height:100%}.program-grid .card{display:grid;grid-template-rows:auto 1fr auto}.program-grid .card__header h2{font-size:1.2rem;overflow-wrap:anywhere}.program-grid .card__footer .button{width:100%}.program-detail{display:grid;gap:18px;color:var(--muted)}.program-states{padding-top:16px;border-top:1px solid var(--line);overflow-wrap:anywhere}.program-states strong{color:var(--ink)}.eligibility-panel{display:grid;max-width:620px;gap:24px}.eligibility-program{display:grid;gap:6px;padding-bottom:18px;border-bottom:1px solid var(--line)}.eligibility-program h2{font-size:1.25rem}.eligibility-panel .form-field{max-width:30rem}.eligibility-panel .alert p+p{margin-top:6px}.form-field{display:grid;min-width:0;gap:7px}.form-field>label{color:var(--ink);font-weight:750}.form-field>input,.form-field>textarea,.form-field>select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:9px 12px;border:1px solid var(--control-border);border-radius:8px;background:var(--surface-raised);color:var(--ink)}.form-field>input:focus-visible,.form-field>textarea:focus-visible,.form-field>select:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.form-field__hint{max-width:62ch;color:var(--muted);font-size:.88rem;overflow-wrap:anywhere}.form-field__error{max-width:62ch;color:var(--danger);font-size:.88rem;overflow-wrap:anywhere}.eligibility-actions{display:flex;flex-wrap:wrap;gap:12px;padding-top:4px}.intake-panel,.intake-form,.intake-section,.intake-questions,.review-panel,.setup-panel,.completion-panel{display:grid;min-width:0;gap:24px}.setup-panel,.completion-panel{max-width:620px}.setup-actions{display:flex;flex-wrap:wrap;gap:12px}.intake-section{padding:0;border:0}.intake-section>legend{margin-bottom:18px;color:var(--ink);font-size:1.2rem;font-weight:780}.intake-grid{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.intake-error-summary{padding:18px;border:1px solid var(--danger);border-left-width:4px;border-radius:8px;background:var(--surface-raised)}.intake-error-summary h2{margin-bottom:4px;font-size:1.05rem}.choice-field{display:grid;min-width:0;gap:10px;padding:0;border:0}.choice-field>legend{margin-bottom:2px;color:var(--ink);font-weight:750}.choice-field>label,.consent-field>label{display:flex;min-width:0;align-items:flex-start;gap:10px;line-height:1.45}.choice-field input,.consent-field input{width:20px;min-width:20px;height:20px;margin-top:1px}.choice-field span,.consent-field span{overflow-wrap:anywhere}.consent-field{display:grid;gap:7px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface-raised)}.intake-actions{display:flex;flex-wrap:wrap;gap:12px;padding-top:4px}.intake-retry{display:flex}.review-list{display:grid;border-top:1px solid var(--line)}.review-list>div{display:grid;min-width:0;grid-template-columns:minmax(120px,.4fr) minmax(0,1fr);gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.review-list dt{color:var(--muted);font-weight:700}.review-list dd{overflow-wrap:anywhere}.review-note{color:var(--muted)}.checkout-panel,.payment-return-panel{display:grid;min-width:0;max-width:680px;gap:18px}.checkout-price{font-size:1.1rem}.checkout-status,.payment-return-status{max-width:62ch;overflow-wrap:anywhere}.payment-return-actions{display:flex;flex-wrap:wrap;gap:12px}.empty-state{justify-items:start;max-width:620px;padding:32px;border:1px solid var(--line);border-left:4px solid var(--info);text-align:left}.marketing-footer{min-height:72px;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem}@media(max-width:760px){.marketing-layout{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:32px}.marketing-progress .stepper{grid-template-columns:repeat(3,minmax(0,1fr))}.marketing-progress .stepper li{grid-template-columns:32px minmax(0,1fr)}}@media(max-width:640px){.marketing-header,.marketing-footer,.marketing-layout{width:calc(100% - 24px)}.marketing-header{min-height:66px}.marketing-support{font-size:.82rem}.marketing-brand img{max-width:132px;height:30px}.marketing-layout{grid-template-columns:minmax(0,1fr);padding:24px 0 48px}.marketing-reading-column{gap:22px}.marketing-reading-column>h1{font-size:clamp(1.85rem,10vw,2.6rem)}.marketing-progress .stepper{display:grid;grid-template-columns:minmax(0,1fr)}.program-grid{grid-template-columns:minmax(0,1fr)}.eligibility-actions{display:grid}.eligibility-actions .button{width:100%}.intake-grid{grid-template-columns:minmax(0,1fr)}.intake-actions{display:grid}.intake-actions .button,.checkout-panel,.payment-return-panel{width:100%}.payment-return-actions{display:grid}.payment-return-actions .button{width:100%}.review-list>div{grid-template-columns:minmax(0,1fr);gap:4px}.marketing-footer{align-items:flex-start;flex-direction:column;justify-content:center;gap:4px;padding:16px 0}}@media(max-width:400px){.marketing-brand--with-logo span{display:none}}@media(prefers-reduced-motion:reduce){.skip-link{transition:none}}
