:root{--ink:#173438;--muted:#5c7072;--line:#d9e2e0;--canvas:#f6f8f6;--surface:#ffffff;--teal:#007c71;--teal-dark:#006158;--coral:#e97163;--focus:#d85d24;--radius:8px}*{box-sizing:border-box}html{min-height:100%}body,html{background:var(--canvas)}body{min-height:100vh;min-height:100svh;min-height:100dvh;margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.button,button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.wordmark{font-size:1.3rem;font-weight:800;letter-spacing:0}.wordmark span{color:var(--teal)}.nanai-brand{display:inline-flex;min-width:0;align-items:center;gap:10px;color:#246f34;font-size:.82rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.nanai-brand-wordmark{width:140px;height:auto;object-fit:contain}.nanai-brand-symbol{display:none;width:38px;height:38px;object-fit:contain}.nanai-brand>span{padding-left:10px;border-left:1px solid #bfd3c3}.access-page,.public-page{min-height:100vh;min-height:100svh;min-height:100dvh;padding:max(24px,env(safe-area-inset-top,0px)) max(clamp(20px,6vw,96px),env(safe-area-inset-right,0px)) max(24px,env(safe-area-inset-bottom,0px)) max(clamp(20px,6vw,96px),env(safe-area-inset-left,0px))}.app-header,.public-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.text-link{color:var(--teal-dark);font-weight:700}.orientation{max-width:800px;padding:clamp(80px,14vh,150px) 0 72px}.eyebrow{margin:0 0 10px;color:var(--teal-dark);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}h1,h2,p{margin-top:0}h1{font-size:clamp(2.3rem,5vw,4.5rem);line-height:1.05;letter-spacing:0;margin-bottom:20px}h2{line-height:1.2}.lead{max-width:600px;color:var(--muted);font-size:1.15rem;margin-bottom:32px}.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius);padding:10px 18px;font-weight:750;text-align:center}.button.primary{background:var(--teal);color:white}.button.primary:hover{background:var(--teal-dark)}.button.secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.orientation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid var(--line);padding-top:30px}.orientation-grid article{max-width:300px}.orientation-grid b{color:var(--coral);font-size:1.2rem}.orientation-grid h2{margin:8px 0;font-size:1.1rem}.orientation-grid p{color:var(--muted)}.access-page{display:grid;grid-template-columns:1fr minmax(320px,470px);align-items:start;gap:70px}.access-panel{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(28px,5vw,48px)}.access-panel h1{font-size:2rem}.access-panel form,.access-panel label{display:grid;gap:8px}.access-panel form{gap:18px}.access-panel input{width:100%}.divider{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;color:var(--muted);margin:22px 0}.divider:after,.divider:before{content:"";height:1px;background:var(--line)}.help-text,.quiet{color:var(--muted);font-size:.9rem}.field-error,.form-message{color:#ad3026;font-size:.88rem;margin:5px 0 0}.app-header{background:var(--surface);padding:17px clamp(20px,6vw,96px);border-bottom:1px solid var(--line)}.app-header nav{display:flex;align-items:center;gap:22px;font-size:.94rem}.app-header nav a.active{color:var(--teal-dark);font-weight:750}.link-button{border:0;background:transparent;color:var(--muted);padding:4px}.app-main{max-width:1040px;margin:0 auto;padding:clamp(38px,7vw,80px) 24px}.loading-page{display:grid;min-height:100vh;place-items:center;color:var(--muted)}.home-heading{max-width:640px}.home-heading h1{font-size:clamp(2rem,4vw,3.4rem)}.home-heading p:not(.eyebrow){color:var(--muted);font-size:1.1rem}.next-action{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:38px}.next-action h2{margin-bottom:6px}.next-action p:not(.eyebrow){margin:0;color:var(--muted)}.timeline{display:flex;margin-top:48px;max-width:680px}.timeline-item{flex:1 1;color:var(--muted);font-size:.9rem}.timeline-item span{display:block;width:15px;height:15px;border:2px solid var(--line);border-radius:50%;margin-bottom:10px}.timeline-item.done{color:var(--ink)}.timeline-item.done span{border-color:var(--teal);background:var(--teal)}.wizard{max-width:760px}.wizard-head{display:flex;align-items:start;justify-content:space-between;gap:20px}.wizard-head h1{font-size:clamp(2rem,4vw,3rem)}.save-state{margin-top:4px;font-size:.88rem;color:var(--muted)}.save-state.saving{color:var(--teal-dark)}.save-state.conflict,.save-state.offline{color:#ad3026}.progress-wrap{margin:28px 0 24px}.progress-label{display:flex;justify-content:space-between;font-size:.9rem;color:var(--muted);margin-bottom:7px}.progress{height:8px;overflow:hidden;background:#dce8e5;border-radius:99px}.progress span{display:block;height:100%;background:var(--teal);transition:width .2s ease}.step-list{gap:16px;padding:0;margin:0 0 36px;list-style:none}.step-list li{flex:0 0 auto;color:var(--muted);font-size:.84rem}.step-list li.current{color:var(--teal-dark);font-weight:750}.step-list li.done:before{content:"✓ "}.wizard form{padding:clamp(24px,4vw,40px);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.wizard fieldset{display:grid;gap:20px;border:0;margin:0;padding:0}.wizard legend{margin-bottom:18px;font-weight:800;font-size:1.2rem}.wizard label{display:grid;gap:7px;font-weight:650}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.access-panel input,.wizard input:not([type=checkbox]),.wizard select,.wizard textarea{border:1px solid #b7c8c4;border-radius:5px;padding:10px 12px;background:white;color:var(--ink)}.wizard textarea{resize:vertical}.choices{padding:16px;border:1px solid var(--line)!important;border-radius:5px!important}.choices legend{font-size:1rem;margin-bottom:12px}.check-row,.choices label{grid-template-columns:auto 1fr;align-items:center;font-weight:400!important}.field-error-summary{min-height:24px;color:#ad3026;font-size:.9rem}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:36px}.wizard-actions .primary:only-child{margin-left:auto}.review dl{display:grid;gap:16px}.review dl div{border-bottom:1px solid var(--line);padding-bottom:12px}.review dt{font-size:.85rem;color:var(--muted)}.review dd{margin:2px 0 0}.success-state{max-width:660px;padding:44px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.success-state h1{font-size:2.4rem}@media (max-width:650px){.access-page,.public-page{padding:max(20px,env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) max(20px,env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px))}.orientation{padding:72px 0 52px}.access-page,.orientation-grid{grid-template-columns:1fr}.orientation-grid{gap:14px}.access-page{gap:55px}.field-grid,.service-area{grid-template-columns:1fr}.next-action{display:grid;padding:22px}.next-action .button{width:100%}.app-header nav{gap:12px}.app-header{padding:15px 20px}.app-header nav a:not(.active){display:none}.wizard form{padding:24px 18px}.wizard-head{display:grid}.step-list{flex-wrap:wrap;gap:10px 14px;overflow-x:visible}.timeline-item{font-size:.76rem}.wizard-actions .button{flex:1 1}}.access-modes{display:flex;gap:18px;margin:0 0 24px;border-bottom:1px solid var(--line)}.access-modes button,.text-button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--teal-dark);padding:8px 0;font-weight:750;text-align:left}.access-modes button.active{border-bottom-color:var(--teal);color:var(--ink)}.text-button{margin-top:16px}.password-control{position:relative;display:block}.password-control input{padding-right:48px!important}.password-control button{position:absolute;top:50%;right:2px;display:grid;width:42px;height:42px;padding:0;place-items:center;transform:translateY(-50%);border:0;background:transparent;color:var(--muted)}.password-requirements{margin:-8px 0 0;color:var(--muted);font-size:.82rem}.auth-feedback{padding:12px 14px;border-left:3px solid;background:#f2f5f4;font-size:.9rem}.auth-feedback p{margin:0}.auth-feedback.error{border-color:#ad3026;background:#fff1ef;color:#842820}.auth-feedback.success{border-color:var(--teal);background:#e8f4f1;color:var(--teal-dark)}.auth-feedback a:not(.button){display:inline-block;margin-top:8px;font-weight:750;text-decoration:underline;text-underline-offset:2px}.auth-feedback .button{margin-top:14px}.auth-action-page .access-panel>.button{margin-top:10px}.service-area{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px}.service-area .text-button{margin:0 0 8px}.wizard input:not([type=checkbox]):not([type=radio]){border:1px solid #b7c8c4;border-radius:5px;padding:10px 12px;background:white;color:var(--ink)}.field-grid,.phone-fields,.service-area,.verified-input,.wizard,.wizard fieldset,.wizard form,.wizard label{min-width:0}.field-grid,.phone-fields,.wizard{width:100%}.wizard input:not([type=checkbox]):not([type=radio]),.wizard select,.wizard textarea{width:100%;max-width:100%}.save-state.authentication,.save-state.server,.save-state.validation{color:#ad3026}.wizard input[readonly]{background:#edf2f0!important;color:var(--muted)!important}.field-error-summary{display:grid;gap:4px}.catalog-warning{margin-bottom:22px;padding:10px 12px;border-left:3px solid #bd7b00;background:#fff6dc;color:#6e4a00;font-size:.9rem}.wizard-error,.wizard-loading{max-width:680px;padding:34px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius)}.wizard-error h1{font-size:2rem}.verified-input{position:relative;display:block}.verified-input input{width:100%;padding-right:92px!important}.verified-badge{position:absolute;top:50%;right:9px;transform:translateY(-50%);padding:3px 6px;border-radius:4px;background:#dceee9;color:var(--teal-dark);font-size:.72rem;font-weight:750}.verified-badge.pending{background:#fcecc2;color:#6e4a00}.phone-fields{display:grid;grid-template-columns:minmax(110px,.7fr) 1.3fr;gap:10px;align-items:start}.phone-fields .field-error{grid-column:1/-1}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}.optional{color:var(--muted);font-size:.8rem;font-weight:400}.pilot-species{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.pilot-species span{color:var(--teal-dark);font-weight:750}.consent-row a{color:var(--teal-dark);text-decoration:underline;text-underline-offset:2px}.consent-row small{color:var(--muted)}.review>h2{margin:0 0 24px}.review-section{padding:20px 0;border-top:1px solid var(--line)}.review-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.review-section-head h3{margin:0;font-size:1.05rem}.review-section-head .text-button{margin:0}.review-section dl{gap:12px;margin-bottom:0}.review-section dl div{border-bottom:0;padding-bottom:10px}.review dd{overflow-wrap:anywhere}.application-process{margin:0 0 32px;padding:0 0 28px;border-bottom:1px solid var(--line)}.process-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px}.process-summary div{display:grid;gap:3px}.process-summary span{color:var(--muted);font-size:.82rem}.allowed-actions,.api-timeline{margin-top:24px}.allowed-actions h3,.api-timeline h3{margin-bottom:10px;font-size:1rem}.allowed-actions ul{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0;list-style:none}.allowed-actions li{padding:5px 8px;border:1px solid var(--line);border-radius:4px;font-size:.82rem}.api-timeline ol{display:grid;gap:12px;padding:0;margin:0;list-style:none}.api-timeline li{display:flex;justify-content:space-between;gap:18px;padding-left:15px;border-left:2px solid var(--teal)}.api-timeline time{color:var(--muted);font-size:.82rem;white-space:nowrap}@media (max-width:650px){.access-page{align-content:start;gap:36px}.access-panel{padding:26px 22px}.access-panel h1{font-size:1.75rem}.choice-grid,.phone-fields,.process-summary{grid-template-columns:1fr}.api-timeline li{display:grid;gap:2px}.api-timeline time{white-space:normal}.verified-input input{padding-right:12px!important}.verified-badge{position:static;display:inline-block;transform:none;margin-top:6px}}.button:disabled,button:disabled{cursor:not-allowed;opacity:.58}.wizard .choices{padding:12px 0 0;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important}.choice-grid label,.choices>label{min-height:46px;padding:8px 0}.button.danger{border-color:#a93830;background:#fff;color:#942d26}.button.danger:hover{background:#fff1ef}.information-request{margin-bottom:24px;padding:18px;border:1px solid #e8c56f;border-left:4px solid #bd7b00;border-radius:var(--radius);background:#fffaf0}.information-request h2{margin-bottom:8px;font-size:1.25rem}.information-request p:not(.eyebrow){margin-bottom:8px}.information-request time{color:var(--muted);font-size:.82rem}.candidate-actions{display:grid;gap:22px;margin:0 0 36px}.action-state,.criterion-test{padding:22px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.action-state h2,.criterion-test h2{margin-bottom:10px;font-size:1.45rem}.action-state>p:not(.eyebrow),.criterion-head>p:not(.eyebrow){color:var(--muted)}.accepted-state{border-top:4px solid var(--teal)}.state-symbol{display:grid;width:38px;height:38px;margin-bottom:18px;place-items:center;border-radius:50%;background:#dceee9;color:var(--teal-dark);font-size:1.25rem;font-weight:800}.action-primary{width:100%;margin-top:6px}.contact-channel{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:center;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.contact-channel>span{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:#e5f1ee;color:var(--teal-dark);font-weight:800}.contact-channel div{display:grid;gap:2px}.contact-channel small{color:var(--muted)}.criterion-head{margin-bottom:22px}.criterion-progress{margin-bottom:24px}.criterion-progress>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;color:var(--muted);font-size:.82rem}.criterion-progress b{color:var(--teal-dark)}.criterion-question{min-width:0;margin:0;padding:0;border:0}.criterion-question legend{width:100%;margin-bottom:18px;font-size:1.08rem;font-weight:750}.criterion-question legend span{display:block;margin-bottom:5px;color:var(--teal-dark);font-size:.78rem;text-transform:uppercase}.radio-rows{display:grid;gap:10px}.radio-rows label{display:grid;min-height:54px;grid-template-columns:22px 1fr;gap:12px;align-items:center;padding:13px 14px;border:1px solid #b7c8c4;border-radius:6px;background:#fff;cursor:pointer}.radio-rows label:hover{border-color:var(--teal)}.radio-rows label.selected{border-color:var(--teal);background:#eff8f5;box-shadow:inset 3px 0 0 var(--teal)}.check-row input,.choices input,.criterion-consent input,.radio-rows input{width:20px;height:20px;margin:0;accent-color:var(--teal)}.criterion-navigation,.withdrawal-actions{display:grid;gap:10px;margin-top:24px}.criterion-navigation .button,.withdrawal-actions .button{width:100%}.criterion-review h3{font-size:1.1rem}.criterion-review ol{display:grid;gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.criterion-review li{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.criterion-review li div{display:grid;gap:3px}.criterion-review li span{color:var(--muted);font-size:.78rem}.criterion-review .text-button{margin:0}.criterion-consent{margin-top:20px;padding:14px;border:1px solid var(--line);border-radius:6px;background:#f7faf9}.action-error{margin:14px 0 0;color:#a52f26;font-size:.9rem}.withdrawal{padding-top:18px;border-top:1px solid var(--line)}.withdrawal-trigger{border:0;background:transparent;color:#8c3530;font-weight:700;text-decoration:underline;text-underline-offset:3px}.withdrawal-confirmation{padding:18px;border:1px solid #e3b7b2;border-radius:var(--radius);background:#fffafa}.withdrawal-confirmation h2{margin-bottom:8px;font-size:1.2rem}.withdrawal-confirmation>p{color:var(--muted)}.withdrawal-confirmation label{display:grid;gap:7px;font-weight:650}.withdrawal-confirmation textarea{width:100%;padding:11px 12px;border:1px solid #c9b2af;border-radius:5px;resize:vertical}.journey{margin-top:36px}.application-process .journey{margin-top:28px}.journey-heading h2{margin-bottom:18px;font-size:1.15rem}.journey ol{display:grid;margin:0;padding:0;list-style:none}.journey li{position:relative;display:grid;min-height:68px;grid-template-columns:32px 1fr;gap:13px;color:var(--muted)}.journey li:not(:last-child):after{content:"";position:absolute;top:30px;bottom:0;left:15px;width:2px;background:var(--line)}.journey-marker{position:relative;z-index:1;display:grid;width:32px;height:32px;place-items:center;border:2px solid var(--line);border-radius:50%;background:var(--canvas);font-size:.78rem;font-weight:800}.journey-copy{display:grid;align-content:start;gap:1px;padding-top:3px}.journey-copy small{color:var(--muted)}.journey li.complete,.journey li.current{color:var(--ink)}.journey li.complete .journey-marker{border-color:var(--teal);background:var(--teal);color:#fff}.journey li.complete:not(:last-child):after{background:var(--teal)}.journey li.current .journey-marker{border-color:var(--teal);background:#fff;color:var(--teal-dark);box-shadow:0 0 0 4px #dceee9}.next-action.action-required{border-left:4px solid #bd7b00}.next-action.success{border-left:4px solid var(--teal)}.success-state .state-symbol{margin-bottom:20px}@media (min-width:651px){.action-state,.criterion-test,.information-request{padding:26px 28px}.action-primary{width:auto}.criterion-navigation,.withdrawal-actions{display:flex;justify-content:flex-end}.criterion-navigation .button,.withdrawal-actions .button{width:auto;min-width:132px}.journey ol{grid-template-columns:repeat(5,minmax(0,1fr))}.journey li{min-height:0;grid-template-columns:1fr;gap:10px;padding-right:12px}.journey li:not(:last-child):after{top:15px;right:0;bottom:auto;left:32px;width:calc(100% - 32px);height:2px}.journey-copy{padding-top:0}}.candidate-shell{min-height:100vh;min-height:100svh;min-height:100dvh;background:#f3f7f5}.candidate-content{min-height:calc(100vh - 68px);min-height:calc(100svh - 68px);min-height:calc(100dvh - 68px)}.app-header{position:sticky;top:0;z-index:50;min-height:68px;padding:12px max(20px,env(safe-area-inset-right,0px)) 12px max(20px,env(safe-area-inset-left,0px));border-bottom:1px solid rgba(23,52,56,.1);background:rgba(255,255,255,.96);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.desktop-nav{display:flex;align-items:center;gap:4px!important}.desktop-nav a{display:inline-flex;min-height:42px;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius);color:var(--muted);font-weight:700}.desktop-nav a.active,.desktop-nav a:hover{background:#edf6f3;color:var(--teal-dark)}.account-action{display:inline-flex;min-height:42px;align-items:center;gap:7px;padding:8px 10px;border:0;border-radius:var(--radius);background:transparent;color:var(--muted);font-weight:700}.account-action:hover{background:#f6eeee;color:#8c3530}.mobile-bottom-nav{display:none}.app-main{width:min(1080px,100%);max-width:none;padding:32px 24px 72px}.eyebrow{margin-bottom:7px;letter-spacing:0}.application-hero h1,.home-heading h1,.page-hero h1{margin-bottom:10px;font-size:2.25rem;line-height:1.12;letter-spacing:0}.application-hero p:not(.eyebrow),.home-heading p:not(.eyebrow),.page-hero p:not(.eyebrow){max-width:680px;margin-bottom:0;color:var(--muted);font-size:1rem}.application-hero,.page-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:8px 0 24px;border-bottom:1px solid var(--line)}.status-pill{display:inline-flex;min-height:30px;max-width:280px;align-items:center;justify-content:center;padding:5px 9px;border:1px solid #c8ded8;border-radius:999px;background:#edf7f4;color:var(--teal-dark);font-size:.78rem;font-weight:800;line-height:1.25;text-align:center}.status-pill.authentication,.status-pill.conflict,.status-pill.offline,.status-pill.server,.status-pill.validation,.status-pill.warning{border-color:#e2c480;background:#fff7e2;color:#755008}.status-pill.saving{border-color:#b8d3cd;background:#fff}.onboarding-wizard{width:100%;max-width:none}.application-hero{margin-bottom:18px}.application-hero .status-pill{width:min(280px,100%);height:52px;flex:0 0 auto;overflow-y:auto}.application-hero h1:focus{outline:none}.wizard-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,310px);gap:18px;align-items:start}.wizard-primary{min-width:0}.progress-wrap{margin:0 0 16px;padding:0 2px}.progress-label{margin-bottom:8px}.progress-label strong{color:var(--teal-dark)}.progress{height:7px}.step-list{display:flex;flex-wrap:nowrap;gap:7px;margin:0 0 14px;padding:0 0 3px;overflow-x:auto;scrollbar-width:thin}.step-list li{flex:1 0 112px}.step-list button{display:flex;width:100%;min-height:52px;align-items:center;gap:8px;padding:7px 8px;border:1px solid transparent;border-radius:var(--radius);background:transparent;color:var(--muted);font-size:.78rem;font-weight:700;text-align:left}.step-list button:disabled{cursor:default;opacity:1}.step-list .current button{border-color:#c7ddd7;background:#edf6f3;color:var(--teal-dark)}.step-list .done button{color:var(--ink)}.step-number{display:grid;width:26px;height:26px;flex:0 0 26px;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:.72rem}.step-list .current .step-number{border-color:var(--teal);color:var(--teal-dark)}.step-list .done .step-number{border-color:var(--teal);background:var(--teal);color:#fff}.wizard form{padding:28px;border-color:rgba(23,52,56,.12);box-shadow:0 10px 28px rgba(23,52,56,.055)}.wizard legend{margin-bottom:20px;font-size:1.22rem;line-height:1.25}.wizard input:not([type=checkbox]):not([type=radio]),.wizard select,.wizard textarea{min-height:48px;border-color:#aebfbc;border-radius:var(--radius);padding:11px 12px}.wizard textarea{min-height:104px}.wizard input[aria-invalid=true],.wizard select[aria-invalid=true],.wizard textarea[aria-invalid=true]{border-color:#b94236;box-shadow:0 0 0 1px rgba(185,66,54,.12)}.wizard .field-error{height:2.7rem;margin-top:3px;line-height:1.35;overflow-y:auto}.field-error-summary{height:64px;margin-bottom:18px;padding:10px 12px;border-left:3px solid transparent;overflow-y:auto}.field-error-summary:empty{visibility:hidden}.field-error-summary:not(:empty){border-left:3px solid #b94236;background:#fff4f2}.wizard-step-anchor{display:block;scroll-margin-top:92px}.wizard-actions{align-items:center;margin-top:32px;padding-top:18px;border-top:1px solid var(--line)}.wizard-actions .button{gap:8px}.wizard-actions .save-exit-button{margin-left:auto;border-color:transparent;background:transparent;color:var(--muted);font-weight:700}.wizard-actions .save-exit-button:hover:not(:disabled){background:#f1f5f4;color:var(--ink)}.wizard-summary{position:sticky;top:86px;display:grid;gap:16px;padding:20px;border:1px solid rgba(23,52,56,.12);border-radius:var(--radius);background:var(--surface);box-shadow:0 8px 24px rgba(23,52,56,.045)}.final-step-layout{grid-template-columns:minmax(0,1fr)}.final-step-layout .wizard-primary{width:100%;max-width:780px;margin:0 auto}.final-readiness{display:flex;gap:12px;align-items:flex-start;margin-bottom:24px;padding:14px 16px;border-left:4px solid var(--teal);background:#edf6f3}.final-readiness.attention{border-left-color:#bd7b00;background:#fff6dc}.final-readiness-marker{display:grid;width:30px;height:30px;flex:0 0 30px;place-items:center;border-radius:50%;background:var(--teal);color:#fff;font-size:.8rem;font-weight:800}.final-readiness.attention .final-readiness-marker{background:#946000}.final-readiness b{display:block}.final-readiness p{margin:2px 0 0;color:var(--muted);font-size:.9rem}.compact-review .review-section dl{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}.compact-review .review-section dl div:last-child{grid-column:1/-1}.summary-heading h2{margin:0;font-size:1.25rem}.summary-metrics{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.summary-metrics div{display:grid;gap:3px;padding:2px 10px}.summary-metrics div:first-child{padding-left:0;border-right:1px solid var(--line)}.summary-metrics div:last-child{padding-right:0}.summary-metrics span{color:var(--muted);font-size:.73rem}.summary-metrics strong{font-size:1.08rem}.summary-steps{display:grid;gap:3px;margin:0;padding:0;list-style:none}.summary-steps button{display:grid;width:100%;min-height:48px;grid-template-columns:28px 1fr;gap:9px;align-items:center;padding:7px;border:0;border-radius:var(--radius);background:transparent;color:var(--muted);text-align:left}.summary-steps button:disabled{cursor:default;opacity:1}.summary-steps .current button{background:#edf6f3;color:var(--ink)}.summary-steps .complete button{color:var(--ink)}.summary-step-marker{display:grid;width:26px;height:26px;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:.7rem;font-weight:800}.summary-steps .complete .summary-step-marker{border-color:var(--teal);background:var(--teal);color:#fff}.summary-steps button>span:last-child{display:grid;gap:1px}.summary-steps small{color:var(--muted);font-size:.72rem}.summary-save-note{margin:0;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem}.summary-save-note.authentication,.summary-save-note.conflict,.summary-save-note.offline,.summary-save-note.server,.summary-save-note.validation{color:#8c3530}.process-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.7fr);gap:28px;align-items:start;padding-top:8px}.process-primary .journey{margin-top:28px}.process-summary-card{display:grid;gap:9px;margin-top:28px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.process-summary-card h2{margin:0;font-size:1.25rem}.process-summary-card p:not(.eyebrow){margin:0 0 8px;color:var(--muted)}.process-summary-card .button{gap:8px;justify-self:start}.summary-icon{display:grid;width:40px;height:40px;margin-bottom:5px;place-items:center;border-radius:50%;background:#e5f1ee;color:var(--teal-dark)}.wizard .phone-fields{grid-template-columns:minmax(145px,.9fr) minmax(0,1.1fr)}.fixed-field{display:flex;min-height:48px;align-items:center;padding:11px 12px;border:1px solid #c8d4d1;border-radius:var(--radius);background:#f3f7f5;color:var(--ink);font-weight:600}.coverage-choices label{min-height:46px}.availability-builder,.future-interest{padding-top:22px!important;border-top:1px solid var(--line)!important}.availability-builder{gap:12px!important}.availability-builder>legend{margin-bottom:2px}.availability-builder>.help-text{margin:0}.future-interest>.help-text{margin-top:-12px}.availability-block,.availability-list{display:grid;gap:10px}.availability-block{min-width:0;padding:13px;border:1px solid #c9d7d3;border-radius:var(--radius);background:#fbfdfc}.availability-block-actions,.availability-block-head,.future-commune-picker,.selected-communes li{display:flex;align-items:center}.availability-block-head{justify-content:space-between;gap:12px}.availability-block-head h3{margin:0;font-size:1rem}.availability-block-actions{gap:6px}.icon-button{display:inline-grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border:1px solid #b9cbc6;border-radius:var(--radius);background:#fff;color:var(--teal-dark)}.icon-button:hover:not(:disabled){background:#edf6f3}.icon-button.danger{color:#943b34}.icon-button:disabled{cursor:default;opacity:.38}.weekday-selector{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.weekday-selector button{min-width:0;min-height:44px;padding:7px 4px;border:1px solid #b9cbc6;border-radius:var(--radius);background:#fff;color:var(--muted);font-weight:750}.weekday-selector button[aria-pressed=true]{border-color:var(--teal);background:#e6f3ef;color:var(--teal-dark)}.availability-times{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;min-width:0;max-width:100%}.availability-times label{gap:5px;width:100%;min-width:0;max-width:100%;overflow:hidden;color:var(--muted);font-size:.8rem}.availability-times input[type=time]{display:block;width:100%;min-width:0!important;max-width:100%;inline-size:100%;min-inline-size:0!important;max-inline-size:100%;min-height:44px!important;box-sizing:border-box;overflow:hidden;padding:7px 8px!important;color:var(--ink);font-size:1rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center}.availability-times input[type=time]::-webkit-date-and-time-value{display:block;width:100%;min-width:0;padding:0;text-align:center}.availability-times input[type=time]::-webkit-datetime-edit,.availability-times input[type=time]::-webkit-datetime-edit-fields-wrapper{min-width:0;padding:0}@supports (-webkit-touch-callout:none){.availability-times input[type=time]{width:0;min-width:100%!important;appearance:none}}.availability-block>.field-error{height:2.4rem;margin-top:0;font-size:.8rem}.availability-add-row{display:flex;flex-wrap:wrap;align-items:center;gap:5px 12px}.add-availability{justify-self:start;gap:8px}.availability-add-guidance{min-height:1.2rem;flex:1 1 220px;margin:0;color:var(--muted);font-size:.78rem;line-height:1.3}.future-interest{margin-top:4px!important}.future-interest>legend{margin-bottom:8px}.future-consent-row{min-height:48px}.future-interest-options{display:grid;gap:18px;padding:16px;border-left:3px solid #9fc7bc;background:#f5faf8}.future-commune-picker{gap:8px;align-items:stretch;margin-top:7px}.future-commune-picker select{min-width:0;flex:1 1}.future-commune-picker .button{gap:7px}.selected-communes{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}.selected-communes li{min-height:44px;justify-content:space-between;gap:12px;padding:4px 4px 4px 12px;border:1px solid #c8d9d4;border-radius:var(--radius);background:#fff}.future-services{background:#fff}@media (max-width:899px){.process-layout,.wizard-layout{grid-template-columns:minmax(0,1fr)}.wizard-summary{position:static;order:2}.process-summary-card{margin-top:0}}@media (max-width:700px){body:has(.candidate-shell),html:has(.candidate-shell){height:100%;overflow:hidden;overscroll-behavior:none}.candidate-shell{display:grid;height:100vh;height:100svh;height:100dvh;min-height:0;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.candidate-content{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.app-header{position:relative;min-height:60px;padding:calc(10px + env(safe-area-inset-top, 0px)) max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px))}.app-header .desktop-nav{display:none}.account-action{width:42px;height:42px;min-height:42px;justify-content:center;padding:0}.account-action span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.mobile-bottom-nav{position:relative;z-index:60;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:6px max(10px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom, 0px)) max(10px,env(safe-area-inset-left,0px));border-top:1px solid rgba(23,52,56,.12);background:rgba(255,255,255,.97);box-shadow:0 -8px 24px rgba(23,52,56,.07)}.mobile-bottom-nav a{display:flex;min-width:0;min-height:58px;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:var(--radius);color:var(--muted);font-size:.7rem;font-weight:700}.mobile-bottom-nav a.active{background:#edf6f3;color:var(--teal-dark)}.app-main{width:100%;padding:14px 12px 28px}.application-hero h1,.home-heading h1,.page-hero h1{margin-bottom:6px;font-size:1.58rem}.application-hero,.page-hero{display:grid;gap:8px;padding:2px 0 12px}.application-hero{margin-bottom:10px}.application-hero p:not(.eyebrow){font-size:.88rem;line-height:1.4}.status-pill{max-width:100%;justify-self:start;text-align:left}.application-hero .status-pill{width:fit-content;max-width:100%;height:40px;min-height:32px}.progress-wrap{margin-bottom:10px;padding-inline:0}.progress-label{margin-bottom:5px;font-size:.8rem}.step-list{gap:5px;margin-bottom:10px}.step-list li{flex-basis:100px}.step-list button{min-height:44px;gap:6px;padding:5px 6px;font-size:.74rem}.step-number{width:24px;height:24px;flex-basis:24px}.wizard form{padding:14px 12px;box-shadow:none}.field-error-summary{height:42px;margin-bottom:8px;padding:6px 8px;font-size:.78rem;line-height:1.25}.wizard fieldset{gap:12px}.wizard legend{margin-bottom:8px;font-size:1.08rem}.wizard label{gap:4px;font-size:.88rem}.wizard input:not([type=checkbox]):not([type=radio]),.wizard select,.wizard textarea{min-height:44px;padding:9px 10px}.wizard textarea{min-height:84px}.wizard .field-error{height:1.9rem;margin-top:0;font-size:.76rem;line-height:1.25;overflow:hidden}.wizard .choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:10px}.wizard .choices legend,.wizard .choices>.choice-grid,.wizard .choices>.field-error,.wizard .choices>.help-text{grid-column:1/-1}.wizard .choices legend{margin-bottom:4px}.choice-grid label,.choices>label{min-height:40px;padding:6px 8px}.wizard-summary{padding:14px 12px}.choice-grid,.field-grid,.phone-fields,.process-summary,.service-area{grid-template-columns:minmax(0,1fr);gap:8px}.availability-builder,.future-interest{padding-top:14px!important}.availability-builder>.help-text,.future-interest>.help-text{font-size:.8rem}.future-interest-options{gap:12px;padding:12px}.wizard-actions{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:20px 0 0;padding:12px 0 0;border-top:1px solid var(--line);background:transparent;box-shadow:none}.wizard-actions .button{width:100%;min-width:0;padding-inline:12px}.wizard-actions .save-exit-button{grid-column:1/-1;grid-row:2;margin-left:0}.wizard-actions .wizard-previous{grid-column:1;grid-row:1}.wizard-actions .wizard-next{grid-column:2;grid-row:1}.wizard-actions.first-step .wizard-next{grid-column:1/-1}.compact-review .review-section dl{grid-template-columns:minmax(0,1fr)}.compact-review .review-section dl div:last-child{grid-column:auto}.review>h2{margin-bottom:14px}.review-section{padding:14px 0}.review-section dl{gap:8px}.wizard-actions .primary:only-child{margin-left:0}.next-action{padding:20px 16px}}.final-consent-panel{margin-top:12px!important;padding-top:26px!important;border-top:1px solid var(--line)!important}.final-consent-panel legend{margin-bottom:6px;font-size:1.25rem}.final-consent-panel .help-text{margin-bottom:4px}.final-consent-panel .consent-row{min-height:52px;padding:10px 0}.candidate-legal-summary{display:grid;grid-template-columns:42px minmax(0,1fr) minmax(245px,.8fr);gap:14px 18px;align-items:start;margin-top:32px;padding:24px 0;border-top:1px solid var(--line)}.candidate-legal-summary .summary-icon{margin:0}.candidate-legal-copy h2{margin:0 0 5px;font-size:1.2rem}.candidate-legal-copy p:not(.eyebrow){margin:0;color:var(--muted);font-size:.9rem}.candidate-legal-links{display:grid;gap:8px}.candidate-legal-links a{display:grid;gap:1px;padding:6px 0;color:var(--teal-dark);font-weight:750}.candidate-legal-links a:hover span{text-decoration:underline;text-underline-offset:3px}.candidate-legal-links small{color:var(--muted);font-size:.75rem;font-weight:400;overflow-wrap:anywhere}.public-legal-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 28px;margin-top:56px;padding:24px 0 4px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.public-legal-footer p{margin:0}.public-legal-footer nav{display:flex;flex-wrap:wrap;gap:10px 22px}.legal-back:hover,.legal-document a:hover,.legal-index a:hover,.public-legal-footer a:hover{color:var(--teal-dark);text-decoration:underline;text-underline-offset:3px}.legal-page{min-height:100vh;min-height:100svh;min-height:100dvh;background:var(--canvas)}.legal-header{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:20px;padding:max(12px,env(safe-area-inset-top,0px)) max(clamp(20px,6vw,96px),env(safe-area-inset-right,0px)) 12px max(clamp(20px,6vw,96px),env(safe-area-inset-left,0px));border-bottom:1px solid var(--line);background:rgba(255,255,255,.96)}.legal-back{display:inline-flex;align-items:center;gap:7px;color:var(--teal-dark);font-size:.9rem;font-weight:750}.legal-page>.public-legal-footer,.legal-shell{width:min(1120px,calc(100% - 40px));margin-right:auto;margin-left:auto}.legal-hero{max-width:820px;padding:54px 0 40px;border-bottom:1px solid var(--line)}.legal-hero h1{max-width:760px;margin-bottom:16px;font-size:2.45rem;line-height:1.08}.legal-intro{max-width:700px;margin-bottom:24px;color:var(--muted);font-size:1.08rem}.legal-meta{display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--muted);font-size:.84rem}.legal-layout{display:grid;grid-template-columns:220px minmax(0,760px);gap:58px;align-items:start;padding:44px 0 16px}.legal-index{position:sticky;top:24px}.legal-index>p{margin-bottom:12px;color:var(--ink);font-size:.82rem;font-weight:800;text-transform:uppercase}.legal-index nav{display:grid;gap:7px}.legal-index a{color:var(--muted);font-size:.84rem}.legal-document{min-width:0}.legal-callout{margin-bottom:10px;padding:18px 20px;border-left:4px solid var(--teal);background:#edf7f4}.legal-callout p{margin:4px 0 0;color:var(--muted)}.legal-document section{scroll-margin-top:24px;padding:32px 0;border-top:1px solid var(--line)}.legal-document section:first-of-type{border-top:0}.legal-document h2{margin-bottom:14px;font-size:1.32rem;line-height:1.25}.legal-document li,.legal-document p{color:#3f575a}.legal-document p:last-child,.legal-document ul:last-child{margin-bottom:0}.legal-document ul{display:grid;gap:9px;padding-left:22px}.legal-document a{color:var(--teal-dark);font-weight:700;text-decoration:underline;text-underline-offset:2px}.legal-contact{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;margin-top:22px;padding-top:20px;border-top:1px solid var(--line);color:var(--teal-dark)}.legal-contact div{display:grid;gap:2px}@media (max-width:780px){.candidate-legal-summary{grid-template-columns:42px minmax(0,1fr)}.candidate-legal-links{grid-column:1/-1;padding-left:60px}.legal-header{min-height:60px;padding:10px 16px}.legal-back{font-size:.82rem}.legal-page>.public-legal-footer,.legal-shell{width:min(100% - 32px,760px)}.legal-hero{padding:38px 0 30px}.legal-hero h1{font-size:2rem}.legal-layout{grid-template-columns:minmax(0,1fr);gap:30px;padding-top:28px}.legal-index{position:static;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.legal-index nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}.legal-document section{padding:27px 0}.legal-callout{padding:16px}.public-legal-footer{display:grid}}@media (max-width:350px){.candidate-legal-summary{grid-template-columns:minmax(0,1fr)}.candidate-legal-links{grid-column:auto;padding-left:0}.legal-back svg{display:none}.legal-index nav{grid-template-columns:minmax(0,1fr)}.public-legal-footer nav{display:grid}}.navigation-test-page{display:grid;gap:18px;max-width:880px;padding-bottom:104px}.navigation-test-hero{display:grid;gap:14px;padding-bottom:18px;border-bottom:1px solid var(--line)}.navigation-complete-hero h1,.navigation-test-hero h1,.navigation-unavailable h1{margin-bottom:10px;font-size:1.78rem;line-height:1.12}.navigation-complete-hero>p:last-child,.navigation-test-hero p:not(.eyebrow),.navigation-unavailable>p:last-child{margin:0;color:var(--muted)}.navigation-live-status,.pending-sync,.route-matched-label,.route-mode-label,.synced-label{display:inline-flex;width:fit-content;min-height:30px;align-items:center;gap:6px;padding:5px 9px;border:1px solid #cddbd8;border-radius:999px;background:#fff;color:var(--muted);font-size:.76rem;font-weight:800}.navigation-live-status.is-live{border-color:#78bba9;background:#e8f5f1;color:var(--teal-dark)}.navigation-live-status.is-live svg{animation:navigation-signal 1.4s ease-in-out infinite}.navigation-complete-hero,.navigation-route-panel,.navigation-start-panel,.navigation-unavailable{padding:20px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.navigation-start-panel{display:grid;grid-template-columns:46px minmax(0,1fr);gap:18px 12px}.navigation-complete-hero>span,.navigation-start-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:#e5f3ef;color:var(--teal-dark)}.navigation-route-panel h2,.navigation-start-panel h2{margin-bottom:10px;font-size:1.26rem}.navigation-preflight{display:grid;gap:9px;padding:0;margin:0;list-style:none;color:var(--muted);font-size:.9rem}.navigation-retest-note{margin:0 0 12px;padding:10px 12px;border-left:3px solid #bd7b00;background:#fff7e2;color:#6e4a00;font-size:.88rem}.navigation-preflight li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:6px;align-items:start}.navigation-preflight svg{margin-top:2px;color:var(--teal)}.navigation-mode-picker{display:grid;grid-column:1/-1;gap:7px}.navigation-mode-picker>span{color:var(--muted);font-size:.78rem;font-weight:750}.navigation-mode-picker>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;border:1px solid #c7d6d2;border-radius:var(--radius);background:#eef3f1}.navigation-mode-picker button{min-width:0;min-height:42px;border:0;border-radius:calc(var(--radius) - 2px);background:transparent;color:var(--muted);font-size:.86rem;font-weight:800}.navigation-mode-picker button.is-active{background:#fff;color:var(--teal-dark);box-shadow:0 1px 4px rgba(23,52,56,.13)}.navigation-consent{display:grid;grid-column:1/-1;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;padding-top:16px;border-top:1px solid var(--line);color:#3f5658;font-size:.9rem}.navigation-consent input{width:19px;height:19px;margin:2px 0 0;accent-color:var(--teal)}.navigation-primary-action{grid-column:1/-1;gap:8px}.navigation-keep-test-button{grid-column:1/-1;min-height:40px;border:0;background:transparent;color:var(--muted);font-weight:750}.navigation-repeat-action{width:100%;gap:8px}.navigation-live-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.navigation-live-metrics>div{min-width:0;padding:14px 8px;text-align:center}.navigation-live-metrics>div+div{border-left:1px solid var(--line)}.navigation-live-metrics span,.navigation-live-metrics strong{display:block}.navigation-live-metrics span{margin-bottom:3px;color:var(--muted);font-size:.72rem;font-weight:700}.navigation-live-metrics strong{overflow-wrap:anywhere;font-size:1.16rem}.navigation-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.navigation-section-heading h2,.navigation-section-heading p{margin-bottom:0}.navigation-route-statuses{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.route-matched-label{border-color:#acd2b6;background:#eef8f0;color:#246f34;white-space:nowrap}.route-mode-label{border-color:#b8cbc6;background:#f5f8f7;color:var(--ink);white-space:nowrap}.pending-sync{border-color:#e3c679;background:#fff8e5;color:#71500b;white-space:nowrap}.synced-label{border-color:#b8d8cf;background:#edf7f4;color:var(--teal-dark);white-space:nowrap}.navigation-route-trace{display:block;width:100%;aspect-ratio:2/1;border-radius:var(--radius)}.navigation-map-shell{position:relative;width:100%;height:clamp(320px,48dvh,430px);min-height:320px;overflow:hidden;border:1px solid #c8d8d4;border-radius:var(--radius);background:#edf3f1;isolation:isolate}.navigation-map-canvas{position:absolute;inset:0;z-index:1;width:100%;height:100%;opacity:0;transition:opacity .16s ease}.navigation-map-canvas.is-ready{opacity:1}.navigation-map-canvas .mapboxgl-canvas,.navigation-map-canvas .mapboxgl-canvas-container,.navigation-map-canvas .mapboxgl-control-container{width:100%;height:100%}.navigation-map-loading{position:absolute;inset:0;z-index:2;display:grid;place-items:center;color:var(--muted);font-size:.86rem;font-weight:750}.navigation-map-controls{position:absolute;top:12px;right:12px;z-index:3;display:grid;gap:6px}.navigation-map-controls button{display:grid;width:44px;height:44px;min-width:44px;padding:0;place-items:center;border:1px solid #bfd0cc;border-radius:7px;background:rgba(255,255,255,.96);box-shadow:0 2px 8px rgba(20,54,56,.14);color:#294d50;cursor:pointer}.navigation-map-controls button:focus-visible,.navigation-map-controls button:hover:not(:disabled){border-color:var(--teal);color:var(--teal-dark)}.navigation-map-controls button:focus-visible{outline:3px solid rgba(0,124,113,.2);outline-offset:2px}.navigation-map-controls button.is-active{border-color:#71ab9d;background:#e8f5f1;color:var(--teal-dark)}.navigation-map-controls button:disabled{cursor:default;opacity:.5}.navigation-map-fallback{position:relative}.navigation-map-fallback>p{margin:10px 0 0;color:var(--muted);font-size:.8rem}.route-trace-background{fill:#edf3f1}.route-trace-grid{stroke:#dbe5e2;stroke-width:1}.route-trace-line{fill:none;stroke:var(--teal);stroke-linecap:round;stroke-linejoin:round;stroke-width:6}.route-trace-start{fill:#397a56;stroke:#fff;stroke-width:4}.route-trace-end{fill:var(--coral);stroke:#fff;stroke-width:4}.navigation-route-empty{display:grid;min-height:170px;place-items:center;padding:24px;border:1px dashed #bfcfcb;border-radius:var(--radius);background:#f3f6f5;color:var(--muted);text-align:center}.navigation-route-empty span{width:12px;height:12px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 7px rgba(0,124,113,.13)}.navigation-route-empty p{margin:0;font-size:.88rem}.route-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:12px;color:var(--muted);font-size:.76rem}.route-legend span{display:inline-flex;align-items:center;gap:6px}.route-legend i{width:9px;height:9px;border-radius:50%;background:#397a56}.route-legend i.end{background:var(--coral)}.navigation-alert{display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px;align-items:start;margin:0;padding:12px 14px;border-left:4px solid #bd7b00;background:#fff7e2;color:#6e4a00;font-size:.88rem}.navigation-alert svg{margin-top:1px}.navigation-interruption-notice{display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px;align-items:start;margin:0;padding:12px 14px;border-left:4px solid var(--teal);background:#e9f5f2;color:var(--teal-dark);font-size:.88rem;font-weight:700}.navigation-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.navigation-controls .button{min-width:0;gap:7px;padding-right:10px;padding-left:10px}.navigation-controls .finish{background:#173438}.navigation-cancel-button{display:inline-flex;grid-column:1/-1;min-height:42px;align-items:center;justify-content:center;gap:7px;border:0;background:transparent;color:#8c3530;font-size:.86rem;font-weight:750}.centered-modal-backdrop{position:fixed;top:var(--modal-viewport-top,0);left:var(--modal-viewport-left,0);z-index:100;display:grid;width:var(--modal-viewport-width,100vw);height:var(--modal-viewport-height,100dvh);place-items:center;overflow-y:auto;overscroll-behavior:contain;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:rgba(15,35,38,.46)}.navigation-dialog{width:min(100%,480px);max-height:100%;overflow-y:auto;overscroll-behavior:contain;padding:22px 18px calc(18px + env(safe-area-inset-bottom, 0px));border-radius:var(--radius);background:#fff;box-shadow:0 18px 50px rgba(15,35,38,.24)}.navigation-dialog h2{margin-bottom:8px;font-size:1.3rem}.navigation-dialog>p{color:var(--muted)}.navigation-dialog>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.session-exit-dialog .session-exit-error{color:#8c3530;font-weight:700}.session-exit-discard{grid-column:1/-1;min-height:42px;border:0;background:transparent;color:#8c3530;font-size:.84rem;font-weight:750;cursor:pointer}.session-exit-discard:disabled{cursor:default;opacity:.6}.navigation-complete-hero,.navigation-unavailable{text-align:left}.navigation-complete-hero>span,.navigation-unavailable>svg{margin-bottom:18px;color:var(--teal-dark)}.navigation-review-note{display:grid;gap:3px;margin:16px 0 0;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}.navigation-review-note b{color:var(--ink)}.navigation-loading{padding:48px 0;color:var(--muted);text-align:center}@keyframes navigation-signal{50%{opacity:.45}}@media (max-width:780px){.mobile-bottom-nav{grid-template-columns:repeat(auto-fit,minmax(70px,1fr))}.app-header .nanai-brand-wordmark{display:none}.app-header .nanai-brand-symbol{display:block}.navigation-map-shell{height:clamp(300px,48dvh,390px);min-height:300px}.weekday-selector{grid-template-columns:repeat(4,minmax(0,1fr))}.availability-block{gap:9px;padding:11px}.future-commune-picker{display:grid;grid-template-columns:minmax(0,1fr) auto}}@media (max-width:430px){.future-commune-picker{grid-template-columns:minmax(0,1fr)}.add-availability,.future-commune-picker .button{width:100%}.availability-add-row{display:grid;grid-template-columns:minmax(0,1fr)}}@media (min-width:720px){.navigation-test-page{gap:24px;padding-top:42px;padding-bottom:76px}.navigation-test-hero{grid-template-columns:minmax(0,1fr) auto;align-items:start}.navigation-complete-hero h1,.navigation-test-hero h1,.navigation-unavailable h1{font-size:2.25rem}.navigation-complete-hero,.navigation-route-panel,.navigation-start-panel,.navigation-unavailable{padding:28px}.navigation-primary-action{width:fit-content;min-width:220px}.navigation-keep-test-button{width:fit-content}.navigation-repeat-action{width:fit-content;justify-self:end}.navigation-controls{grid-template-columns:repeat(2,minmax(180px,240px));justify-content:end}.navigation-cancel-button{grid-column:1/-1;justify-self:end}}