.step-shell{display:flex;flex-direction:column;min-height:100dvh;width:100%}.step-shell__header{position:sticky;top:0;z-index:10;background:var(--bg-page);border-bottom:1px solid var(--border-default);padding:var(--space-4) var(--space-5);display:flex;align-items:center;gap:var(--space-4)}.step-shell__logo{height:22px;flex-shrink:0}.step-shell__progress-track{flex:1;height:6px;background:var(--bg-sunken);border-radius:999px;overflow:hidden}.step-shell__progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.step-shell__progress-label{font-size:13px;color:var(--neutral-400);white-space:nowrap;flex-shrink:0}.step-shell__body{flex:1;width:100%;max-width:var(--max-content-width);margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-8)}.step-shell__intro h1{font-family:var(--font-display);font-weight:400;font-size:34px;text-transform:uppercase;letter-spacing:.01em;margin-bottom:var(--space-2)}.step-shell__subtitle{color:var(--neutral-400);font-size:16px;max-width:56ch}.step-shell__footer{position:sticky;bottom:0;background:var(--bg-page);border-top:1px solid var(--border-default);padding:var(--space-4) var(--space-5);padding-bottom:max(var(--space-4),env(safe-area-inset-bottom));display:flex;justify-content:space-between;gap:var(--space-3)}@media(max-width:480px){.step-shell__header{padding:var(--space-3) var(--space-4)}.step-shell__body{padding:var(--space-5) var(--space-4) var(--space-7)}.step-shell__intro h1{font-size:28px}}.btn{font-family:var(--font-body);font-weight:400;text-transform:uppercase;letter-spacing:.04em;font-size:15px;min-height:var(--touch-target);padding:0 var(--space-5);border-radius:var(--radius-sm);border:2px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);transition:transform .08s ease,background .15s ease,opacity .15s ease;-webkit-tap-highlight-color:transparent}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn--primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent)}.btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn--secondary{background:transparent;color:var(--text-primary);border-color:var(--border-strong)}.btn--secondary:hover:not(:disabled){background:var(--bg-sunken)}.btn--ghost{background:transparent;color:var(--neutral-400);border-color:transparent;min-height:auto;padding:var(--space-2) var(--space-3)}.btn--ghost:hover:not(:disabled){color:var(--text-primary)}.field-group{display:grid;gap:var(--space-4);margin-bottom:var(--space-5)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field__label{font-family:var(--font-primary);font-weight:700;font-size:14px;color:var(--text-primary)}.field__input{min-height:var(--touch-target);padding:0 var(--space-4);border:2px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:17px;width:100%;appearance:none}.field__select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23181818' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;background-size:20px;padding-right:var(--space-7)}.field__input:focus{outline:none;border-color:var(--text-primary);box-shadow:0 0 0 3px #ffd90066}.field__input--error{border-color:var(--error)}.field__hint{font-size:13px;color:var(--neutral-400)}.field__error{font-size:13px;color:var(--error);font-weight:700}.plan-details__funding-label{display:block;margin-bottom:var(--space-3)}.funding-picker{display:grid;gap:var(--space-3);margin-bottom:var(--space-2)}.funding-card{text-align:left;background:var(--bg-surface);border:2px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-4);min-height:var(--touch-target);display:flex;flex-direction:column;gap:var(--space-1);-webkit-tap-highlight-color:transparent}.funding-card--selected{border-color:var(--text-primary);background:var(--accent)}.funding-card__title{font-family:var(--font-primary);font-weight:700;font-size:16px}.funding-card__desc{font-size:14px;color:var(--neutral-400)}.funding-card--selected .funding-card__desc{color:var(--neutral-200)}@media(min-width:640px){.funding-picker{grid-template-columns:repeat(3,1fr)}}.signer-picker{display:grid;gap:var(--space-3);margin-bottom:var(--space-5)}.signer-card{text-align:left;background:var(--bg-surface);border:2px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-5) var(--space-4);min-height:var(--touch-target);display:flex;flex-direction:column;gap:var(--space-2);-webkit-tap-highlight-color:transparent}.signer-card--selected{border-color:var(--text-primary);background:var(--accent)}.signer-card__title{font-family:var(--font-primary);font-weight:700;font-size:18px}.signer-card__desc{font-size:14px;color:var(--neutral-400)}.signer-card--selected .signer-card__desc{color:var(--neutral-200)}@media(min-width:640px){.signer-picker{grid-template-columns:1fr 1fr}}.agreement-text{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-6) var(--space-5);font-family:var(--font-body);color:var(--text-primary);max-width:100%}.agreement-text__masthead{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;font-size:14px;color:var(--neutral-400);border-bottom:3px solid var(--accent);padding-bottom:var(--space-3);margin-bottom:var(--space-5)}.agreement-text h2{font-family:var(--font-display);font-weight:400;font-size:28px;text-transform:uppercase;letter-spacing:.01em}.agreement-text h3{font-family:var(--font-primary);font-size:18px;margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border-default)}.agreement-text__lead{font-family:var(--font-primary);font-weight:700;font-size:18px}.agreement-text ul{margin:0 0 var(--space-4);padding-left:var(--space-5)}.agreement-text li{margin-bottom:var(--space-2)}.agreement-text__table{width:100%;border-collapse:collapse;margin:var(--space-3) 0 var(--space-4);font-size:15px}.agreement-text__table td,.agreement-text__table th{border:1px solid var(--border-default);padding:var(--space-2) var(--space-3);text-align:left;vertical-align:top}.agreement-text__table--contact th{background:var(--bg-sunken);font-family:var(--font-primary);font-weight:700}.agreement-text__provider-heading{font-weight:700;font-family:var(--font-primary)}.agreement-text__clause{font-style:italic;color:var(--neutral-300);border-left:3px solid var(--accent);padding-left:var(--space-3)}.agreement-text__signatures{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);margin-top:var(--space-4)}.sig-box__image{height:90px;border-bottom:2px solid var(--border-strong);display:flex;align-items:flex-end;justify-content:center;padding-bottom:var(--space-2)}.sig-box__image img{max-height:100%;max-width:100%;object-fit:contain}.sig-box__placeholder{font-size:13px;color:var(--neutral-500);font-style:italic}.sig-box__caption{display:flex;flex-direction:column;font-size:13px;color:var(--neutral-400);padding-top:var(--space-1)}.sig-box__caption span:last-child{color:var(--text-primary);font-weight:700;font-family:var(--font-primary)}.agreement-text__signature-dates{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);margin-top:var(--space-3);font-size:14px;color:var(--neutral-400)}@media(max-width:560px){.agreement-text{padding:var(--space-5) var(--space-4)}.agreement-text__signatures,.agreement-text__signature-dates{grid-template-columns:1fr}}.review-agreement__scroll{max-height:55vh;overflow-y:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.review-agreement__hint{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--bg-sunken);color:var(--neutral-400);font-size:14px;text-align:center;transition:background .2s ease,color .2s ease}.review-agreement__hint--done{background:var(--accent);color:var(--text-on-accent);font-weight:700}@media(min-width:700px){.review-agreement__scroll{max-height:60vh}}.signature-pad{position:relative;width:100%;height:220px;background:var(--bg-surface);border:2px dashed var(--border-default);border-radius:var(--radius-md);overflow:hidden}.signature-pad__canvas{width:100%;height:100%;touch-action:none;display:block}.signature-pad__placeholder{position:absolute;bottom:var(--space-4);left:50%;transform:translate(-50%);color:var(--neutral-500);font-family:var(--font-primary);font-size:15px;pointer-events:none}.sign-step__pad-wrap{margin-bottom:var(--space-5)}.sign-step__pad-actions{display:flex;justify-content:flex-end;margin-top:var(--space-1)}.sign-step__signer{color:var(--neutral-400);margin-bottom:var(--space-4)}.sign-step__signer strong{color:var(--text-primary);font-family:var(--font-primary)}.sign-step__consent{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:2px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;margin-bottom:var(--space-2)}.sign-step__consent input{width:24px;height:24px;flex-shrink:0;margin-top:2px;accent-color:var(--color-black)}.sign-step__consent--error{border-color:var(--error)}.sign-step__submit{width:100%;margin-top:var(--space-5)}.sign-step__error{margin-top:var(--space-5);padding:var(--space-4);border:2px solid var(--error);border-radius:var(--radius-md);background:#fdf0ef}.sign-step__error p{margin-bottom:var(--space-2)}.sign-step__error-actions{display:flex;gap:var(--space-3);margin-top:var(--space-3)}.done-step{text-align:center;padding:var(--space-6) 0}.done-step__icon{width:72px;height:72px;margin-bottom:var(--space-4)}.done-step__title{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:32px}.done-step__body{color:var(--neutral-400);max-width:48ch;margin:0 auto var(--space-6)}.done-step__actions{display:flex;flex-direction:column;gap:var(--space-3);max-width:360px;margin:0 auto}@media(min-width:480px){.done-step__actions{flex-direction:row;justify-content:center}}.app-done-screen{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6) var(--space-5);max-width:var(--max-content-width);margin:0 auto}.app-done-screen__logo{height:28px;margin-bottom:var(--space-7)}@font-face{font-family:League Gothic;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/league-gothic-vietnamese-400-normal-C-AcueAd.woff2) format("woff2"),url(/assets/league-gothic-vietnamese-400-normal-Ds2KY40T.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:League Gothic;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/league-gothic-latin-ext-400-normal-D25_PHT_.woff2) format("woff2"),url(/assets/league-gothic-latin-ext-400-normal-LR-xQ2ki.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:League Gothic;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/league-gothic-latin-400-normal-BQfHUhlb.woff2) format("woff2"),url(/assets/league-gothic-latin-400-normal-DHErDkGv.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Questrial;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/questrial-vietnamese-400-normal-e8YnA9wZ.woff2) format("woff2"),url(/assets/questrial-vietnamese-400-normal-B2ptJQWX.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Questrial;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/questrial-latin-ext-400-normal-rdiUVXr0.woff2) format("woff2"),url(/assets/questrial-latin-ext-400-normal-urOzOTIY.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Questrial;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/questrial-latin-400-normal-DNhQdR1R.woff2) format("woff2"),url(/assets/questrial-latin-400-normal-BcF-iMQl.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-black: #181818;--color-yellow: #ffd900;--color-concrete: #f2f2f2;--color-balmy-blue: #b3cfe5;--color-tech-white: #f5f5f5;--color-sweet-grey: #d9d9d9;--neutral-100: #111111;--neutral-200: #2a2a2a;--neutral-300: #4a4a4a;--neutral-400: #6b6b6b;--neutral-500: #8f8f8f;--neutral-600: #b3b3b3;--neutral-700: #d1d1d1;--neutral-800: #e8e8e8;--neutral-900: #f6f6f6;--color-white: #ffffff;--bg-page: var(--color-white);--bg-surface: var(--color-white);--bg-sunken: var(--color-tech-white);--bg-inverse: var(--color-black);--text-primary: var(--color-black);--text-secondary: var(--neutral-300);--text-inverse: var(--color-white);--text-on-accent: var(--color-black);--border-default: var(--neutral-700);--border-strong: var(--color-black);--accent: var(--color-yellow);--accent-hover: #e6c400;--error: #c22b1f;--success-bg: var(--color-concrete);--font-display: "League Gothic", "Arial Narrow", sans-serif;--font-body: "Questrial", "Century Gothic", "Segoe UI", sans-serif;--font-primary: "Century Gothic", Avenir, Futura, "Segoe UI", sans-serif;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--touch-target: 56px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--max-content-width: 720px;--shadow-card: 0 4px 24px rgba(24, 24, 24, .08)}@media(prefers-color-scheme:dark){:root{color-scheme:light}}*{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg-page);color:var(--text-primary);font-family:var(--font-body);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}#root{min-height:100dvh;display:flex;flex-direction:column}h1,h2,h3{font-family:var(--font-primary);font-weight:700;line-height:1.15;margin:0 0 var(--space-3);color:var(--text-primary)}p{margin:0 0 var(--space-4)}button,input,select,textarea{font-family:inherit;font-size:16px}button{cursor:pointer}a{color:inherit}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
