/* The questionnaire is a focused, full-height mobile guide. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#explorer{--guide-ink:#09213d;--guide-muted:#4c607a;--guide-green:#006344;color:var(--guide-ink);width:min(920px,calc(100% - 48px));height:min(940px,calc(100dvh - 40px));font-size:15px;background:#fff}
#explorer .flow-header{padding:16px 28px;min-height:78px;border-bottom:1px solid #e5ebef}
#explorer .flow-header .brand{width:265px}
#explorer .flow-header .icon-button{color:var(--guide-ink);background:#f1f5f7;width:44px;height:44px;flex:none}
.guide-progress{padding:22px 32px 12px;flex:none;max-width:650px;width:100%;margin:auto}
.guide-progress ol{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0;position:relative}
.guide-progress li{margin:0;position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:12px;color:var(--guide-muted);line-height:1.25;min-width:0}
.guide-progress li::before{content:'';position:absolute;height:1px;background:#dbe3ea;top:14px;left:-50%;width:100%;z-index:0}
.guide-progress li:first-child::before{display:none}.guide-progress li.reached::before{background:#b5d4c5}
.guide-progress .step-number{position:relative;z-index:1;width:29px;height:29px;display:grid;place-items:center;background:white;border:1px solid #d5dfe8;border-radius:50%;font-size:13px;font-weight:700;color:#74839a}
.guide-progress .reached .step-number{background:var(--guide-green);border-color:var(--guide-green);color:white}
.guide-progress [aria-current=step]+span{font-weight:700;color:var(--guide-ink)}
#explorer .flow-content{padding:26px 32px 24px;width:100%;scrollbar-gutter:stable;outline:none}
#explorer .flow-content>*{max-width:610px;margin-left:auto;margin-right:auto}
#explorer .flow-content h1{font-size:32px;line-height:1.14;letter-spacing:-.045em;font-weight:750;color:var(--guide-ink);margin:0 0 14px}
#explorer .flow-content p{font-size:15px;line-height:1.5;color:var(--guide-muted)}
#explorer #flow-title:focus{outline:none}
#explorer .flow-intro{margin-bottom:26px}#explorer .flow-intro p{margin:0}
#explorer .flow-choices{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:0;margin-bottom:10px}
#explorer .debt-choice{display:flex;align-items:center;gap:13px;padding:17px 14px;min-height:104px;border:1px solid #dce4ea;border-radius:11px;background:white;color:var(--guide-ink);transition:border-color .15s,background .15s}
#explorer .debt-choice[aria-pressed=true]{border-color:#23855d;background:#f1f8f4}
#explorer .check-mark{width:20px;height:20px;border:1.5px solid #8fa2b2;border-radius:4px;flex:none}
#explorer .check-mark svg{width:15px;height:15px;stroke-width:3}
#explorer .debt-symbol{color:#007149;width:34px;height:34px;flex:none}
#explorer .debt-symbol svg{display:block;width:100%;height:100%}
#explorer .debt-choice strong{font-size:15px;line-height:1.3;letter-spacing:-.025em}
#explorer .debt-choice small{font-size:13px;line-height:1.4;color:var(--guide-muted);margin-top:5px;font-weight:400}
#explorer .more-choice .debt-symbol{color:#086be5}#explorer .more-choice .check-mark{visibility:hidden}
#explorer .selected-extra{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}#explorer .selected-extra:empty{display:none}
#explorer .compact-tools{margin-top:4px;margin-bottom:0;font-size:12px;min-height:12px}
#explorer .compact-tools .link-button{font-size:12px;min-height:36px}
#explorer .selection-count{font-size:12px;font-weight:500}
#explorer #flow-library{margin-top:20px;padding:18px;background:#f4f8fb;border-radius:12px}
#explorer #flow-library>label{font-size:14px;font-weight:650;display:block;margin-bottom:9px}
#explorer .search-results{grid-template-columns:1fr;gap:9px}
#explorer .search-results .debt-choice{min-height:86px}
#explorer input,#explorer select{font-size:16px;min-height:50px;border-color:#c6d2de;border-radius:8px;color:var(--guide-ink)}
#explorer .flow-actions{width:100%;display:grid;grid-template-columns:auto 1fr;gap:10px;padding:16px max(24px,calc((100% - 610px)/2));border-top:1px solid #edf1f5;box-shadow:0 -5px 20px #06253c04;background:#fff}
#explorer .flow-actions button{display:flex;align-items:center;justify-content:center;gap:12px;min-height:50px;font-size:16px;line-height:1.3;border-radius:8px;padding:12px 20px;min-width:0}
#explorer .flow-actions svg{width:22px;height:22px;flex:none}
#explorer #flow-next{background:linear-gradient(115deg,#00694a,#00583e);border:1px solid #006347;color:#fff;font-weight:650}
#explorer #flow-next:disabled{background:#b8c2c8;border-color:#b8c2c8;color:#fff;cursor:not-allowed;box-shadow:none}
#explorer #flow-back{border:1px solid #cdd8e1;background:white;color:var(--guide-ink);font-weight:550}
#explorer[data-step="1"] #flow-next{grid-column:1/-1}
#explorer .flow-actions #flow-unsure{grid-column:1/-1;min-height:35px;padding:4px 0;background:transparent;border:0;color:#006344;text-decoration:underline;text-underline-offset:3px;font-size:13px}
#explorer .flow-actions [hidden]{display:none!important}
#explorer .entry-caption{font-size:12px;color:#006344;font-weight:650;margin-bottom:8px}
#explorer .debt-tabs{margin-top:0;margin-bottom:22px;max-width:610px;scrollbar-width:thin}
#explorer .debt-tabs button{max-width:240px;white-space:normal;flex:none;font-size:12px;padding:8px 12px;min-height:40px}
#explorer .situation-options{border:0;padding:0;margin-top:0;display:grid;gap:12px}
.situation-choice{position:relative;display:flex;gap:14px;align-items:flex-start;min-height:88px;padding:19px 17px;border:1px solid #dce4ea;border-radius:11px;background:#fff;cursor:pointer}
.situation-choice:has(input:checked){border-color:#20855d;background:#f0f8f4}
#explorer .situation-choice input{width:23px;height:23px;min-height:23px;flex:none;accent-color:#006745;margin:2px 0 0}
.situation-choice strong{font-size:15px;line-height:1.35;display:block;font-weight:650;letter-spacing:-.025em}
.situation-choice small{font-size:13px;line-height:1.45;display:block;color:var(--guide-muted);margin-top:5px}
#explorer .other-situations{border:0;margin-top:12px;background:white}
#explorer .other-situations summary{font-size:13px;font-weight:550;color:#50677c;padding:12px 0;min-height:44px}
#explorer .other-situations fieldset{margin-top:8px}
.guide-urgent{display:flex;gap:12px;padding:16px;background:#fff3eb;border:1px solid #f1d6bf;border-radius:11px;margin:18px 0;line-height:1.4;font-size:14px}
.guide-urgent>svg{width:26px;height:26px;color:#b96b20;flex:none}
#explorer .guide-urgent p{font-size:13px;margin:7px 0;color:#6a452d}#explorer .guide-urgent a{font-size:13px;font-weight:650}
#explorer #debt-details{max-width:610px}
#explorer .field{margin:0 0 22px}#explorer .field>span{font-size:15px;font-weight:650;margin-bottom:10px}
#explorer .field .optional{font-weight:450}
#explorer .currency-input{display:flex;align-items:center;border:1px solid #b9c9d8;border-radius:8px;padding:0 15px;gap:13px;height:52px;overflow:hidden}
#explorer .currency-input:focus-within{outline:2px solid #14644b;outline-offset:2px}
#explorer .currency-input b{font-size:17px;font-weight:500}
#explorer .currency-input input{border:0;padding:10px 0;min-width:0;min-height:48px;outline:0;box-shadow:none}
#explorer .balance-field{margin-bottom:0}#explorer .field-error{color:#ab2d29;font-size:13px;margin:5px 0 0}#explorer .field-error:empty{display:none}
#explorer .field-help{display:flex;gap:9px;align-items:flex-start;font-size:12px;margin:10px 0 28px}
.field-help svg{width:17px;height:17px;flex:none;margin-top:1px}
#explorer .segmented-field{border:0;border-radius:0;padding:0;margin:0 0 28px}
#explorer .segmented-field legend{font-size:15px;font-weight:650;padding:0;margin:0 0 11px;width:100%}
.segments{display:flex;gap:9px}.segments label{flex:1;min-width:0;cursor:pointer;position:relative}
#explorer .segments input{position:absolute;opacity:0;inset:0;width:100%;height:100%;min-height:0;margin:0;cursor:pointer}
.segments span{display:grid;place-items:center;min-height:52px;padding:8px 5px;border:1px solid #dce4ea;border-radius:8px;color:var(--guide-ink);font-size:14px;text-align:center}
.segments input:checked+span{border-color:#23855d;background:#f0f8f4;font-weight:700}
.segments input:focus-visible+span{outline:3px solid #155d46;outline-offset:2px}
#explorer .jurisdiction-detail{border:0;margin:-10px 0 24px}#explorer .jurisdiction-detail summary{font-size:12px;padding:10px 0;font-weight:500;color:#49667b}#explorer .jurisdiction-detail .field{padding-top:12px}
#explorer .category-qualifiers{padding:20px 0 0;border:0;border-top:1px solid #e5ebf0;border-radius:0;margin:28px 0 0}
#explorer .category-qualifiers legend{padding:0 8px 0 0;font-size:15px;font-weight:700}#explorer .category-qualifiers>p{font-size:12px;margin:0 0 22px}
.guide-privacy{padding:22px 20px;background:#edf7ff;display:flex;gap:13px;border-radius:10px;margin:26px 0 16px}
.guide-privacy svg{width:20px;height:24px;flex:none;color:#0c375b}#explorer .guide-privacy p{font-size:12px;line-height:1.5;margin:0;color:#254967}
#explorer .debt-actions{gap:4px 20px;justify-content:flex-start}#explorer .debt-actions .link-button{font-size:12px;min-height:40px}
.guide-result-intro{text-align:center;padding:15px 10px 5px}
.guide-complete-icon{position:relative;width:82px;height:80px;margin:0 auto 20px;color:#082e4b}
.guide-complete-icon>svg{width:65px;height:70px;transform:rotate(7deg);stroke-width:1.3;background:#f8fcff}
.guide-complete-icon>span{position:absolute;right:0;bottom:0;display:grid;place-items:center;background:#006c49;border:4px solid #fff;border-radius:50%;width:40px;height:40px;color:#fff}
.guide-complete-icon span svg{width:24px;height:24px;stroke-width:2.5}
#explorer .guide-result-intro h1{font-size:32px;line-height:1.1;margin:0 0 15px}#explorer .guide-result-intro p{font-size:14px;line-height:1.55}
#explorer .guide-entry-count{font-size:13px;margin-bottom:14px}
.selection-card{margin-top:18px;margin-bottom:26px;padding:0}
.selection-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
#explorer .selection-heading h2{font-size:17px;line-height:1.3;margin:0}.selection-heading .link-button{display:flex;align-items:center;gap:6px;font-size:13px;padding:7px 0}
.selection-heading svg{width:17px;height:17px}
.selection-card ul{list-style:none;border:1px solid #e0e7ec;border-radius:10px;padding:15px 17px;margin:0;box-shadow:0 3px 12px #0a335404;display:grid;gap:12px}
.selection-card li{margin:0;display:flex;gap:14px;align-items:center;font-size:13px;line-height:1.4;color:var(--guide-muted)}.selection-card li svg{width:22px;height:22px;color:#006744;flex:none}
#explorer .recommended-heading{font-size:17px;margin:0 auto 12px}
.guide-recommendations{display:grid;gap:11px}
.guide-action-card{border:1px solid #e0e7ec;border-radius:11px;background:white}
.guide-action-card summary{display:flex;align-items:flex-start;gap:12px;padding:16px 14px;list-style:none}
.guide-action-card summary::-webkit-details-marker{display:none}
.guide-action-icon{color:#007149;width:34px;height:38px;flex:none}.guide-action-icon svg{width:32px;height:32px}.guide-action-icon.blue{color:#0667e5}.guide-action-icon.orange{color:#e4760b}
.guide-action-card summary strong{display:block;font-size:14px;line-height:1.3;letter-spacing:-.02em}
.guide-action-card summary small{display:block;font-size:12px;line-height:1.5;color:var(--guide-muted);font-weight:400;margin-top:5px}
.guide-chevron{align-self:center;margin-left:auto;flex:none;width:12px}.guide-chevron svg{width:12px;height:16px}.guide-action-card[open] .guide-chevron{transform:rotate(90deg)}
.guide-action-body{padding:0 18px 18px;color:var(--guide-muted);font-size:13px;line-height:1.5}.guide-action-body p{padding:0!important;font-size:13px!important;margin:5px 0 12px!important}.guide-action-body ul,.guide-action-body ol{padding-left:20px}.guide-action-body li{margin-bottom:10px}.guide-action-body a{font-size:13px;overflow-wrap:anywhere}
#explorer .guide-explainer{font-size:12px;line-height:1.45;color:#5d7085;margin:20px auto 0}
#explorer .guide-final-actions{grid-template-columns:1fr;gap:9px}#explorer .guide-final-actions #flow-next{order:0}#explorer .guide-final-actions #flow-back{order:1;font-size:14px;min-height:43px;color:#006344}
.personal-guide-entry{border:1px solid #d8e4ea;border-radius:13px;padding:25px;margin:24px auto;background:white}
#explorer .personal-guide-entry h2{font-size:26px;letter-spacing:-.035em;margin:0 0 10px}#explorer .personal-guide-entry h3{font-size:18px;margin:25px 0 10px}#explorer .personal-guide-entry .eyebrow{font-size:10px;margin-bottom:8px}
#explorer .personal-guide-entry .guide-meta{font-size:13px}.personal-guide-entry li{font-size:14px;line-height:1.55;margin:12px 0}.personal-guide-entry ol,.personal-guide-entry ul{padding-left:22px}.personal-guide-entry a{overflow-wrap:anywhere}
.personal-guide-entry details{padding:0;background:#f6f9fb;border:0;margin:20px 0}.personal-guide-entry summary{font-size:14px;padding:13px 15px}.personal-guide-entry details ul{padding:0 24px 10px 35px}.personal-guide-entry details p{font-size:12px!important;padding:0 15px 15px}
#explorer .guide-provider-note{background:#edf6fa;padding:15px;font-size:13px;border-radius:9px;margin-top:25px}
@media(max-width:700px){
 #explorer{width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0;border:0}
 #explorer .flow-header{min-height:76px;padding:14px 20px;gap:12px}
 #explorer .flow-header .brand{width:min(265px,calc(100vw - 96px))}
 .guide-progress{padding:20px 20px 12px;min-height:91px}
 .guide-progress li{font-size:11px;gap:8px}.guide-progress li>span:last-child{max-width:66px}.guide-progress .step-number{width:27px;height:27px;font-size:12px}.guide-progress li::before{top:13px}
 #explorer .flow-content{padding:25px 22px 24px;scrollbar-gutter:auto}
 #explorer .flow-content h1{font-size:28px;line-height:1.14}
 #explorer .flow-content p{font-size:14px;line-height:1.5}
 #explorer #flow-title:focus{outline:none}
#explorer .flow-intro{margin-bottom:26px}
 #explorer .flow-choices{grid-template-columns:1fr;gap:11px}
 #explorer .debt-choice{padding:17px 14px;min-height:100px;gap:14px}
 #explorer .debt-choice strong{font-size:15px}#explorer .debt-choice small{font-size:13px}
 #explorer .flow-actions{padding:13px 20px 15px}
 #explorer .flow-actions button{min-height:49px;font-size:15px}
 #explorer .flow-actions #flow-back{padding:12px 17px}
 #explorer .situation-choice{min-height:93px;padding:18px 15px}
 #explorer .guide-result-intro{padding-top:7px}
 #explorer .guide-result-intro h1{font-size:30px}
 #explorer .guide-result-intro p{font-size:13px}
 #explorer .selection-card{margin-top:17px;margin-bottom:24px}
 #explorer .selection-heading h2,#explorer .recommended-heading{font-size:16px}
 #explorer .guide-explainer{font-size:11.5px}
 #explorer .personal-guide-entry{padding:19px}
 #explorer .guide-privacy p{font-size:12px}
}
@media(max-width:360px){
 #explorer .flow-header{padding:12px 16px;min-height:68px}.guide-progress{padding:17px 14px 10px;min-height:85px}
 #explorer .flow-content{padding:21px 17px}.guide-progress li{font-size:10px}
 #explorer .flow-content h1{font-size:26px}#explorer .debt-choice{gap:10px;padding:15px 11px;min-height:96px}
 #explorer .debt-symbol{width:29px;height:29px}#explorer .debt-choice strong{font-size:14px}#explorer .debt-choice small{font-size:12px}
 #explorer .flow-actions{padding:12px 16px}#explorer .flow-actions button{font-size:14px;padding:11px 13px}
 #explorer .segments{gap:6px}#explorer .segments span{font-size:12px}.guide-action-card summary{gap:9px;padding:15px 11px}.guide-action-card summary strong{font-size:13px}.guide-action-icon{width:29px}.guide-action-icon svg{width:28px}
}
@media(display-mode:standalone){#explorer .flow-header{padding-top:max(14px,env(safe-area-inset-top))}#explorer .flow-actions{padding-bottom:max(15px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){#explorer *{transition:none!important;scroll-behavior:auto!important}}
