@import url('./fonts.css');
:root{font-family:Arial,Helvetica,sans-serif;color:#162f28;background:#f4f6f5;font-synthesis:none;--ink:#162f28;--green:#15382f;--lime:#e4f078;--line:#d6ded9;--muted:#52655d;--paper:#fff;--orange:#f49454}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}button,a{ -webkit-tap-highlight-color:transparent}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #bd520e;outline-offset:4px}button{min-height:46px}p{font-size:1rem;line-height:1.65}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15}h2{font-size:clamp(1.7rem,3vw,2.55rem);letter-spacing:-.04em}h3{font-size:1.2rem;letter-spacing:-.015em}.topbar{height:104px;display:flex;align-items:center;border-bottom:1px solid var(--line);padding:0 4.5vw;gap:30px;background:#fff}.brand{text-decoration:none;display:flex;align-items:center;min-width:95px}.grit-wordmark{font-size:2.9rem;line-height:.8;font-weight:950;letter-spacing:-.075em;display:block}.grit-wordmark span{font-size:.62rem;letter-spacing:.14em;display:block;margin-top:10px}.brand img{width:108px;height:70px;object-fit:contain}.product-name{border-left:1px solid var(--line);padding-left:28px;font-size:1.2rem}.school-link{margin-left:auto;font-size:.875rem;text-decoration:none}.workspace{max-width:1510px;margin:auto;display:grid;grid-template-columns:310px minmax(0,1fr);min-height:calc(100vh - 180px)}.rail{padding:48px 34px 30px 45px;border-right:1px solid var(--line)}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.14em;line-height:1.4}.rail h1{font-size:2.15rem;line-height:1.12;letter-spacing:-.045em;margin:25px 0 16px}.rail>p:not(.eyebrow){color:var(--muted)}.journey{list-style:none;padding:0;margin:42px 0 60px;display:grid;gap:25px}.journey li{font-size:.9rem;color:#63736c;line-height:1.5}.journey li span{font-size:.75rem;margin-right:12px}.journey .active{font-weight:700;color:var(--green)}.journey .active span{background:var(--green);color:var(--lime);padding:6px;border-radius:5px;margin-left:-6px}.rail-note{border-top:1px solid var(--line);padding-top:24px;font-size:.9rem}.rail-note p{font-size:.875rem;color:var(--muted);margin-top:9px}main{padding:42px clamp(24px,4vw,65px) 55px;min-width:0;outline:none}.section-top{display:flex;justify-content:space-between;gap:20px;align-items:center}.section-top .eyebrow{margin:0}.counter{font-size:.875rem;color:var(--muted)}progress{appearance:none;width:100%;height:5px;border:0;border-radius:9px;background:#dbe3de;display:block;margin:15px 0 25px}progress::-webkit-progress-bar{background:#dbe3de;border-radius:9px}progress::-webkit-progress-value{background:var(--green);border-radius:9px}progress::-moz-progress-bar{background:var(--green);border-radius:9px}.intro{color:var(--muted);max-width:650px;margin-bottom:24px}.question-card{border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden}.scene{background:var(--green);color:white;padding:30px 34px 35px;position:relative}.scene .eyebrow{color:var(--lime);margin-bottom:18px}.scene h2{font-size:clamp(1.7rem,2.6vw,2.4rem);margin-bottom:15px;max-width:730px}.scene p:last-child{margin:0;color:#e0e9e3;font-size:1.08rem;max-width:700px}.answer-area{padding:26px 28px}.answer-area fieldset{padding:0;border:0;margin:0;min-width:0}.answer-area legend{font-weight:700;font-size:1.05rem;margin-bottom:18px;padding:0}.rating-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.rating-label{position:relative}.rating-label input{position:absolute;opacity:0;width:100%;height:100%;left:0;top:0;cursor:pointer;margin:0;z-index:1}.rating-label span{display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;min-height:92px;border:1px solid #cdd7d0;border-radius:10px;font-size:.85rem;text-align:center;padding:10px 5px;background:#fff}.rating-label b{font-size:1.25rem;font-weight:500;opacity:.65}.rating-label input:checked+span{background:var(--lime);border:2px solid var(--green);padding:9px 4px;color:var(--green);font-weight:700}.rating-label input:focus-visible+span{outline:3px solid #bd520e;outline-offset:3px}.rating-label:hover span{border-color:var(--green)}.choice-options{display:grid;gap:10px}.choice-options .rating-label span{min-height:64px;display:block;text-align:left;padding:18px 20px;font-size:1rem;line-height:1.4}.choice-options .rating-label input:checked+span{padding:17px 19px}.soft-choices{display:flex;flex-wrap:wrap;gap:10px;margin-top:17px}.soft-choice{border:1px solid var(--line);border-radius:8px;background:white;color:var(--muted);padding:10px 14px;font-size:.875rem}.soft-choice[aria-pressed=true]{background:#e9efeb;border:2px solid var(--green);padding:9px 13px;color:var(--green)}.question-help{font-size:.85rem;color:var(--muted);margin:20px 0 0}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:24px}.actions .push{margin-left:auto}.primary,.secondary{border-radius:8px;padding:13px 21px;border:1px solid var(--green);font-weight:700;font-size:.95rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:10px}.primary{background:var(--green);color:#fff}.primary:hover{background:#275547}.primary.accent{background:var(--lime);color:var(--green);border-color:var(--lime)}.secondary{background:transparent;color:var(--green)}.secondary:hover{background:#e9efeb}.text-button{border:0;background:transparent;padding:5px 0;color:var(--muted);font-size:.875rem;text-decoration:underline;text-underline-offset:3px}.under-card{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:15px}.under-card p{font-size:.85rem;color:var(--muted);margin:0}.result-hero{background:var(--green);color:white;padding:32px;border-radius:18px;margin:16px 0 28px}.result-hero .eyebrow{color:var(--lime)}.result-hero h2{margin-bottom:14px}.result-hero p{color:#e0e9e3;max-width:730px;margin-bottom:0}.result-section{scroll-margin-top:20px;margin-top:36px}.result-section>p{color:var(--muted)}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-heading h2{font-size:1.55rem;margin:0 0 15px}.small-count{font-size:.85rem;color:var(--muted)}.profiles{display:grid;grid-template-columns:1fr 1fr;gap:14px}.profile{padding:24px;border:1px solid var(--line);border-radius:12px;background:white;break-inside:avoid}.profile h3{margin-bottom:8px}.profile p{font-size:.875rem;color:var(--muted);margin-bottom:14px}.profile .count{font-weight:700;font-size:.9rem;color:var(--green)}.stacked-bar{height:11px;display:flex;background:#e7ece9;border-radius:5px;overflow:hidden;margin:15px 0 10px}.stacked-bar span{display:block}.strong{background:var(--green)}.middle{background:#a6b7a9}.low{background:#f0c29c}.unknown{background:#e1e6e3}.legend{display:flex;flex-wrap:wrap;gap:16px;font-size:.8rem;color:var(--muted);margin:0 0 16px}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;display:inline-block;border-radius:2px}.profile details{font-size:.85rem;color:var(--muted)}summary{cursor:pointer;min-height:35px;line-height:1.5;font-weight:600}.profile details p{margin:8px 0}.profile details ul{padding-left:18px;line-height:1.55}.notice{padding:18px 22px;background:#e9efeb;border-radius:10px;line-height:1.6;font-size:.9rem;margin:20px 0}.directions{display:grid;gap:14px}.direction{background:white;border:1px solid var(--line);border-radius:12px;padding:25px;break-inside:avoid}.direction-title{display:flex;justify-content:space-between;gap:15px;align-items:start}.direction-title h3{margin:0 0 10px;font-size:1.3rem}.pill{font-size:.75rem;background:#e8efea;padding:6px 9px;border-radius:5px;white-space:nowrap}.direction p{font-size:.95rem;color:var(--muted);margin-bottom:12px}.direction .examples{font-size:.875rem;color:var(--green)}.direction details{border-top:1px solid var(--line);padding-top:12px;margin-top:15px}.try-box{border-left:3px solid var(--orange);padding:0 0 0 16px;margin:14px 0}.try-box p{margin:5px 0}.direction .secondary{font-size:.875rem;margin-top:9px;padding:10px 16px}.all-directions{margin:20px 0}.all-directions>summary{font-size:1rem;padding:10px 0}.all-directions .directions{margin-top:12px}.pattern-list{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.pattern{font-size:.9rem;padding:9px 13px;border:1px solid #b2c5b8;border-radius:6px;background:#fff}.pattern.highlight{background:var(--lime);border-color:var(--green)}.pattern-legend{font-size:.85rem;color:var(--muted)}.next-step{background:var(--lime);padding:28px;border-radius:14px}.next-step h2{font-size:1.7rem}.next-step p{color:#314a36}.next-step ol{line-height:1.75;padding-left:22px}.save-panel{padding:26px;border-radius:12px;background:white;border:1px solid var(--line);margin-top:20px}.save-panel h3{margin-bottom:10px}.save-panel p{font-size:.9rem;color:var(--muted)}.email-row{display:flex;gap:10px;margin-top:8px}.email-row input{flex:1;min-width:0;padding:12px;border:1px solid #aab8af;border-radius:7px;font-size:1rem}.email-label{font-size:.9rem;font-weight:700}.check-label{display:flex;gap:10px;align-items:flex-start;line-height:1.5;margin:15px 0;font-size:.875rem}.check-label input{margin:4px 0 0;min-width:18px;min-height:18px;accent-color:var(--green)}.status{font-size:.9rem;margin-top:14px;margin-bottom:0;min-height:1.5em}.status.error{color:#9f301b}.honeypot{position:absolute;left:-10000px;opacity:0;height:0;overflow:hidden}footer{border-top:1px solid var(--line);padding:18px 4.5vw;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.8rem;color:var(--muted);background:#fff}dialog{border:1px solid var(--line);border-radius:16px;max-width:650px;width:calc(100% - 30px);padding:0;color:var(--ink)}dialog::backdrop{background:#11241ec9}.dialog-inner{padding:32px;max-height:85vh;overflow:auto}.dialog-inner h2{font-size:1.8rem}.dialog-inner h3{margin-top:24px}.skip-link{position:fixed;left:20px;top:-70px;background:var(--lime);padding:15px;z-index:10}.skip-link:focus{top:15px}.print-only{display:none}.email-note{font-size:.8rem!important}.review-list{display:grid;gap:8px;margin:15px 0}.review-item{display:flex;justify-content:space-between;gap:10px;padding:12px 15px;border:1px solid var(--line);border-radius:8px;background:white;text-align:left;color:var(--green);line-height:1.4}.review-item span{font-size:.85rem;color:var(--muted)}.result-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.result-nav a{padding:9px 12px;border:1px solid var(--line);font-size:.85rem;text-decoration:none;border-radius:6px}.result-nav a:hover{background:#e9efeb}
@media(min-width:1450px){.workspace{grid-template-columns:330px minmax(0,1fr)}}
@media(max-width:1050px){.workspace{grid-template-columns:245px minmax(0,1fr)}.rail{padding:35px 22px}.rail h1{font-size:1.8rem}main{padding:32px 25px}.profiles{grid-template-columns:1fr}.rating-options{gap:6px}.rating-label span{font-size:.78rem}.answer-area{padding:24px 20px}.scene{padding:27px}}
@media(max-width:740px){.topbar{height:84px;padding:0 20px;gap:18px}.grit-wordmark{font-size:2.3rem}.grit-wordmark span{font-size:.5rem}.brand{min-width:75px}.brand img{width:87px;height:56px}.product-name{font-size:1.05rem;padding-left:18px}.school-link{font-size:.75rem;max-width:91px;line-height:1.5;text-align:right}.workspace{display:block}.rail{padding:18px 20px 0;border-right:0}.rail>h1,.rail>p,.rail-note{display:none}.journey{margin:0;display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding-bottom:16px}.journey li{font-size:.75rem}.journey li:nth-child(n+3){display:none}.journey li span{margin-right:5px}.journey .active span{padding:3px;margin-left:0}main{padding:25px 18px 35px}.intro{font-size:.9rem}.scene{padding:25px 23px}.scene h2{font-size:1.8rem}.scene p:last-child{font-size:1rem}.answer-area{padding:23px 16px}.rating-options{gap:5px}.rating-label span{font-size:.75rem;min-height:90px;padding:9px 3px}.rating-label b{font-size:1.1rem}.soft-choices{gap:7px}.soft-choice{font-size:.8rem;padding:10px 11px}.under-card{align-items:start}.under-card>p{max-width:180px}.actions{gap:8px}.primary,.secondary{padding:12px 16px}.section-top{gap:10px}.section-top .eyebrow{font-size:.7rem}.result-hero{padding:25px}.result-hero h2{font-size:1.95rem}.direction{padding:22px}.direction-title{display:block}.pill{display:inline-block;margin:0 0 12px}.email-row{flex-direction:column}.email-row .primary{width:100%}.save-panel{padding:22px}footer{padding:15px 20px;align-items:start;font-size:.75rem}footer .text-button{font-size:.75rem;text-align:right;min-height:30px}.dialog-inner{padding:24px}.next-step{padding:24px}}
@media(prefers-reduced-motion:no-preference){.question-card,.result-hero{animation:enter .2s ease-out}@keyframes enter{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}
@media print{@page{size:A4;margin:15mm}body{background:white;color:#162f28;font-size:11pt}.topbar{height:70px;padding:0 0 15px}.topbar .school-link,.rail,footer,.no-print,.result-nav,dialog,.skip-link{display:none!important}.workspace{display:block}main{padding:20px 0}.print-only{display:block}.result-hero{color:var(--ink);background:white;border:2px solid var(--green);padding:20px}.result-hero .eyebrow,.result-hero p{color:var(--ink)}h2{font-size:23pt}.profiles{grid-template-columns:1fr 1fr;gap:10px}.profile{padding:15px}.profile p{font-size:10pt}.result-section{margin-top:25px}.direction,.next-step,.profile{break-inside:avoid}.stacked-bar,.next-step,.pattern,.pill{-webkit-print-color-adjust:exact;print-color-adjust:exact}.all-directions{display:none}.save-panel{display:none}.direction details{display:block}.direction details>summary{display:none}.direction details>*{display:block}.direction .secondary{display:none}.next-step{background:#eff5c4}.result-section>h2{break-after:avoid}a{text-decoration:none}p{font-size:11pt}}
:root{--green:#0d1f32;--ink:#0d1f32;--lime:#b6e66b;--muted:#52616d;color:var(--ink)}.topbar{background:#0d1f32;color:white}.topbar .brand img{width:156px;height:45px}.topbar .product-name{border-color:#40515f}.scene{background:#0d1f32}.primary:hover{background:#263e51}.scene .eyebrow,.result-hero .eyebrow{color:#b6e66b}@media(max-width:740px){.topbar .brand{min-width:90px}.topbar .brand img{width:112px;height:34px}.topbar{gap:15px}.product-name{padding-left:15px}}@media print{.topbar{background:#0d1f32!important;color:white!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;padding:12px 16px}.result-hero .eyebrow{color:var(--ink)}}

.interest-chart{margin:36px 0;padding:28px;border:1px solid var(--gray-200);border-radius:16px;background:white}
.chart-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:24px 0;font-size:12px;line-height:1.35}.chart-legend span{display:flex;gap:6px;align-items:center}.chart-legend i{display:block;width:16px;height:16px;border:1px solid #758397;border-radius:3px}
.interest-row{padding:21px 0;border-top:1px solid var(--gray-200)}.interest-row-title{display:flex;justify-content:space-between;gap:20px;align-items:center}.interest-row-title h3{margin:0}.interest-row-title p{font-size:13px;text-align:right;margin:0;max-width:28ch}.answer-blocks{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin:12px 0}.answer-blocks span{height:29px;display:flex;align-items:center;justify-content:center;border:1px solid #758397;border-radius:4px;font-size:12px;font-weight:bold}.answer-appeal_1{background:#fff;color:#2a3749}.answer-appeal_2{background:#e7eef5;color:#2a3749}.answer-appeal_3{background:#aec3d2;color:#2a3749}.answer-appeal_4{background:#61c3da;color:#1d2734}.answer-appeal_5{background:#2a3749;color:#fff}.answer-not_enough_exposure{background:repeating-linear-gradient(45deg,#fff,#fff 4px,#d4dce5 4px,#d4dce5 6px);color:#2a3749}.answer-skip{background:#f7f9fc;color:#2a3749;border-style:dashed!important}.answer-unanswered{background:#fff;color:#758397;border-style:dotted!important}.coverage-note{font-size:13px;color:var(--text-muted);margin:8px 0}.task-evidence{font-size:14px}.task-evidence dl{max-width:28rem}

/* Preserve the original Navigator's centered reading flow and components. */
:root{font-family:Roboto,Arial,system-ui,sans-serif;font-size:17px;--navy:#0d1f32;--navy-dark:#081726;--steel-blue:#6ba511;--light-blue:#eff6e4;--teal:#85c227;--gray-200:#e1e6e9;--text-muted:#52616d;color:var(--navy);background:#f7f9fc}body::before{content:'';display:block;height:7px;background:#85c227}.topbar{max-width:1120px;margin:auto;height:102px;padding:8px 30px}.workspace{display:block;max-width:880px;min-height:70vh}main{max-width:880px;margin:42px auto;padding:0 24px 40px}.rail{display:none}h1,h2,h3,h4,button,.product-name{font-family:Rubik,Arial,sans-serif}h1{font-size:clamp(30px,4.6vw,42px);line-height:1.16;letter-spacing:-.022em;margin:18px 0 20px}h2{font-size:24px;letter-spacing:-.015em;line-height:1.28}h3{font-size:19px}.intro{font-size:19px;line-height:1.65}.notice{padding:15px 20px;background:#eff6e4;border-left:4px solid #6ba511;border-radius:0 8px 8px 0}.scenario-field{border:1px solid var(--gray-200);border-radius:12px;padding:24px;background:white;margin:28px 0;min-width:0;box-shadow:0 3px 16px #0d1f3206}.scenario-field legend{font-weight:700;padding:0 6px;line-height:1.45;font-size:1.06rem;max-width:100%}.scenario-prompt{margin-top:0;line-height:1.65}.scenario-ask{font-weight:500;margin:15px 0}.choices{display:grid;gap:8px}.choice{display:flex;align-items:flex-start;gap:11px;border:1px solid #d4dce5;border-radius:8px;padding:12px 14px;cursor:pointer;background:white;line-height:1.5;font-size:1rem}.choice:hover{border-color:#6ba511}.choice:has(input:checked){border-color:#6ba511;background:#eff6e4;box-shadow:inset 3px 0 #6ba511}.choice input{margin:6px 0 0;accent-color:#0d1f32;width:16px;height:16px;flex:none}.primary{background:#85c227;color:#0d1f32;border-color:#85c227;font-weight:500}.primary:hover{background:#76b01d;color:#0d1f32}.secondary{border-radius:6px;font-weight:500;background:white}.secondary:hover{background:#0d1f32;color:white}.result-hero{background:transparent;color:var(--navy);padding:0;margin:20px 0 26px;border-radius:0}.result-hero h2{font-size:clamp(30px,4.6vw,42px);line-height:1.16;letter-spacing:-.022em}.result-hero p{color:var(--text-muted);font-size:19px}.result-hero .eyebrow{color:var(--text-muted);font-size:12px}.next-step{background:#eff6e4;border-left:4px solid #6ba511;border-radius:0 8px 8px 0}.pattern.highlight{background:#eff6e4;border-color:#6ba511}.direction{border-top:4px solid #6ba511}.answer-appeal_4{background:#85c227;color:#0d1f32}.answer-appeal_5{background:#0d1f32;color:white}.chart-legend{font-size:13px}.interest-row-title p,.coverage-note{font-size:14px}.answer-blocks span{font-size:14px;height:32px}.task-evidence{font-size:15px}.task-evidence dl{display:grid;grid-template-columns:1fr auto;gap:4px 18px}.task-evidence dt,.task-evidence dd{margin:0}.task-evidence dd{font-weight:700}.evidence{padding-left:15px;border-left:2px solid #85c227;font-size:15px}.comparisons-report{margin:36px 0}.table-wrap{overflow:auto}.comparisons-report table{font-size:14px;background:white;border-collapse:collapse;width:100%}.comparisons-report caption{text-align:left;font-weight:700;padding:12px 0}.comparisons-report th,.comparisons-report td{padding:10px;border-bottom:1px solid #e1e6e9;text-align:left}.comparisons-report small{display:block;font-weight:400}.pattern-list{gap:10px}footer{max-width:1120px;margin:36px auto 0;padding:26px 30px;background:#081726;color:#eff6e4;border-top:3px solid #6ba511}footer button{color:#eff6e4}.result-section{margin-top:38px}.save-panel{border-radius:12px}.small-count{font-size:14px}.direction-title h3{font-size:22px}.school-link{color:white}.topbar .product-name{font-size:17px}.brand img{max-width:none}.interest-chart h2{font-size:24px}.interest-chart{margin:22px 0}.interest-chart .eyebrow{color:var(--text-muted)}
@media(max-width:700px){main{margin-top:28px;padding:0 22px 30px}.topbar{padding:8px 22px}.intro{font-size:18px}.scenario-field{padding:19px 15px}.choice{padding:12px 10px}.interest-chart{padding:20px 15px}.interest-row-title{align-items:start;gap:12px}.interest-row-title p{max-width:20ch}.result-hero{padding:0}.result-hero p{font-size:18px}.result-nav{gap:7px}.result-nav a{font-size:14px}.chart-legend{font-size:12px}}
@media print{body::before,.section-top{display:none}.workspace,main{max-width:none;margin:0;padding:0}.result-hero{border:0;padding:0}.result-hero h2{font-size:25pt}.result-hero p{font-size:12pt}.topbar{margin-bottom:20px}.interest-chart{padding:14px}.interest-row{break-inside:avoid;padding:12px 0}.answer-blocks,.chart-legend{-webkit-print-color-adjust:exact;print-color-adjust:exact}.interest-row-title p{font-size:10pt}.task-evidence{font-size:10pt}.direction,.next-step{break-inside:avoid}.direction details>summary{display:none}.comparisons-report{break-before:auto}.comparisons-report table{font-size:9pt}}

.family-explorer{border-top:1px solid var(--line);margin-top:32px;padding-top:28px}.family-label{display:block;font-weight:700;margin:20px 0 8px}#family-select{width:100%;padding:14px;border:1px solid #bcc6ca;border-radius:6px;background:#fff;color:#0d1f32;font:inherit;min-height:48px}.family-card{margin-top:22px;border:1px solid #d5dde0;border-radius:12px;padding:22px}.family-card h3{font-size:1.4rem}.family-card h4{font-size:1.06rem;margin:20px 0 8px}.family-card li{margin-bottom:10px}.learning-stages{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.learning-stages section{background:#f3f6f0;border-radius:8px;padding:16px}.learning-stages h4{margin-top:0}.learning-stages ol{padding-left:20px}.family-suggestions .text-button{padding:4px 1px;text-align:left}.source-links{font-size:.85rem;overflow-wrap:anywhere}.muted{color:#516268}.family-card details{margin-top:20px}.family-card .choose-step{margin-top:15px}@media(max-width:760px){.learning-stages{grid-template-columns:1fr}.family-card{padding:16px}}@media print{.family-explorer select,.family-label,.family-suggestions,.choose-step{display:none}.family-card{break-inside:auto}.learning-stages{display:block}.learning-stages section{break-inside:avoid}}

.pattern-card{width:100%;border:1px solid #cdd7ca;background:white;border-radius:12px;padding:20px;margin:12px 0}.pattern-card h3{font-size:1.2rem;margin:8px 0}.pattern-card .eyebrow{font-size:.75rem}.pattern-card li{margin-bottom:6px}.pattern-card details{margin-top:12px}.pattern-list{display:block}.family-explorer{border:0;margin-top:0;padding-top:0}.family-card h3{margin-top:0}.scenario-field{scroll-margin-top:12px}@media print{details>summary{display:none}details{break-inside:auto}.pattern-card{break-inside:avoid}.no-print{display:none!important}}

/* Keep card content inside its border, including native fieldset legends. */
:root{--card-padding:clamp(20px,3vw,28px)}
:is(.scenario-field,.profile,.direction,.pattern-card,.family-card,.save-panel,.interest-chart,.next-step){
  min-width:0;
  padding:var(--card-padding);
  display:flow-root;
}
fieldset.scenario-field{margin-inline:0}
.scenario-field legend,
.scenario-field .scenario-heading{
  width:100%;
  max-width:100%;
  padding:0;
  margin:0 0 16px;
  font-family:Rubik,Arial,sans-serif;
  font-weight:700;
  font-size:1.06rem;
  line-height:1.45;
  letter-spacing:0;
  overflow-wrap:anywhere;
}
/* A floated legend participates in the inner layout instead of the border. */
fieldset.scenario-field>legend{float:left}
fieldset.scenario-field>legend+*{clear:both}
:is(.scenario-field,.profile,.direction,.pattern-card,.family-card,.save-panel,.interest-chart,.next-step,.notice,.learning-stages section){
  overflow-wrap:anywhere;
}
:is(.scenario-field,.profile,.direction,.pattern-card,.family-card,.save-panel,.interest-chart,.next-step,.notice,.learning-stages section)>:first-child{
  margin-block-start:0;
}
:is(.scenario-field,.profile,.direction,.pattern-card,.family-card,.save-panel,.interest-chart,.next-step,.notice,.learning-stages section)>:last-child{
  margin-block-end:0;
}
:is(.scenario-field,.profile,.direction,.pattern-card,.family-card,.save-panel,.interest-chart,.next-step,.notice,.learning-stages section) :is(h2,h3,h4){
  max-width:100%;
  line-height:1.35;
}
:is(.profile,.direction,.pattern-card,.family-card,.save-panel,.interest-chart,.next-step,.notice,.dialog-inner) :is(ul,ol){
  margin:12px 0 16px;
  padding:0 0 0 1.5rem;
  padding-inline-start:1.5rem;
  list-style-position:outside;
  line-height:1.65;
}
:is(.profile,.direction,.pattern-card,.family-card,.save-panel,.interest-chart,.next-step,.notice,.dialog-inner) li{
  margin:0 0 8px;
  padding-inline-start:2px;
}
:is(.profile,.direction,.pattern-card,.family-card,.save-panel,.interest-chart,.next-step,.notice,.dialog-inner) li:last-child{
  margin-bottom:0;
}
:is(.profile,.direction,.pattern-card,.family-card,.interest-chart,.comparisons-report) summary{
  list-style-position:inside;
  line-height:1.5;
  padding-block:4px;
}
.choice>span,.direction-title>*,.interest-row-title>*,.section-heading>*{min-width:0}
.choice>span{overflow-wrap:anywhere}
.learning-stages{grid-template-columns:repeat(3,minmax(0,1fr))}
.learning-stages section{min-width:0}
.comparisons-report .table-wrap{max-width:100%;margin:16px 0}
.comparisons-report .evidence{margin:20px 0;padding:4px 0 4px 18px}
.comparisons-report .evidence>:first-child{margin-top:0}
.comparisons-report .evidence>:last-child{margin-bottom:0}
.try-box>:first-child{margin-top:0}
.try-box>:last-child{margin-bottom:0}
@media(max-width:760px){
  :root{--card-padding:20px}
  .learning-stages{grid-template-columns:1fr}
}
@media(max-width:400px){
  main{padding-inline:16px}
  :root{--card-padding:18px}
  .notice{padding-inline:16px}
  .interest-row-title{flex-direction:column;gap:8px}
  .interest-row-title p{max-width:none;text-align:left}
}
@media print{
  :root{--card-padding:5mm}
  :is(.scenario-field,.profile,.direction,.pattern-card,.family-card,.save-panel,.interest-chart,.next-step){box-decoration-break:clone;-webkit-box-decoration-break:clone}
  .scenario-field{break-inside:avoid}
  :is(.scenario-field,.profile,.direction,.pattern-card,.family-card,.interest-chart,.next-step,.learning-stages section) :is(h2,h3,h4){break-after:avoid}
  :is(.profile,.direction,.pattern-card,.family-card,.next-step,.learning-stages section) li{orphans:2;widows:2}
  .comparisons-report .table-wrap{overflow:visible}
}

/* A compact route through questions, the map, and the next small step. */
.flow-nav{position:sticky;top:0;z-index:5;max-width:1120px;margin:auto;padding:10px 20px;background:#ffffffed;border-bottom:1px solid var(--gray-200);box-shadow:0 4px 16px #0d1f3208;backdrop-filter:blur(12px)}
.flow-nav ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0}
.flow-nav li{min-width:0}
.flow-nav button{width:100%;position:relative;display:flex;align-items:center;gap:9px;min-height:62px;padding:10px 12px 14px;text-align:left;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--navy)}
.flow-nav button:hover{background:#f3f6f0}
.flow-nav button[aria-current=step]{background:#eff6e4;border-color:#b8d79a}
.flow-number{display:grid;place-items:center;flex:0 0 25px;height:25px;font-size:12px;font-weight:700;border:1px solid #c4d0d4;border-radius:50%;background:white}
.flow-nav [aria-current=step] .flow-number{background:var(--navy);border-color:var(--navy);color:white}
.flow-label{font:500 14px/1.35 Rubik,Arial,sans-serif;min-width:0}
.flow-label small{display:block;margin-top:3px;color:var(--text-muted);font:400 11px/1.35 Roboto,Arial,sans-serif}
.flow-nav progress{position:absolute;left:12px;bottom:5px;width:calc(100% - 24px);height:3px;margin:0;background:#e1e6e9}
.flow-nav progress::-webkit-progress-value{background:#6ba511}
.flow-context{font-size:12px;line-height:1.4;margin:7px 12px 0;color:var(--text-muted)}
.ai-processing-note{font-size:13px;color:var(--text-muted);line-height:1.6;margin:24px 0 8px;max-width:68ch}
.question-note{font-size:14px;color:var(--text-muted);margin:10px 0 18px;line-height:1.5}
main>.intro{font-size:17px;max-width:66ch;margin-bottom:10px}
main>h1{margin-top:14px;margin-bottom:14px}
main>.scenario-field{margin-top:18px}
.scenario-field,.result-section,.ai-summary,.family-explorer,#families-title{scroll-margin-top:112px}
.result-hero{margin:0 0 24px}
.result-hero h1{margin-bottom:12px}
.result-hero p{max-width:50ch}
.interest-map-section{margin-top:22px}
.interest-map-section>h2{margin-bottom:8px}
.interest-map-section>p{margin-bottom:20px}
.ai-summary{padding:clamp(24px,4vw,36px);margin:30px 0;border:1px solid #ccddb7;border-top:4px solid #85c227;border-radius:14px;background:linear-gradient(135deg,#f5faef,#fff 70%);display:flow-root;overflow-wrap:anywhere}
.ai-summary>:first-child{margin-top:0}
.ai-summary>:last-child{margin-bottom:0}
.ai-summary .eyebrow{color:#527b11;margin-bottom:12px}
.ai-summary h2{font-size:clamp(23px,3vw,29px);margin-bottom:18px;max-width:26ch}
.ai-prose p{font-size:17px;line-height:1.75;color:#183142}
.ai-prose p:last-child{margin-bottom:0}
.ai-caveat{font-size:13px;color:var(--text-muted);line-height:1.6;margin:22px 0 8px;padding-top:16px;border-top:1px solid #dae6ce}
.ai-model{font-size:12px;line-height:1.5;color:var(--text-muted)}
.ai-loading progress{height:6px;accent-color:#6ba511;margin:14px 0;border-radius:6px}
.ai-loading p{font-size:15px;color:var(--text-muted)}
.ai-summary .status{margin:0;min-height:0}
.report-details,.direction-library,.self-check{border:1px solid var(--gray-200);border-radius:12px;padding:18px 22px;background:#fff;margin:22px 0;min-width:0}
:is(.report-details,.direction-library,.self-check)>summary{font:500 17px/1.5 Rubik,Arial,sans-serif;list-style-position:inside;min-height:30px;padding:2px 0}
:is(.report-details,.direction-library,.self-check)[open]>summary{margin-bottom:18px}
:is(.report-details,.direction-library,.self-check)>:last-child{margin-bottom:0}
.report-details .interest-chart{border:0;padding:0;margin:18px 0 24px}
.report-details .notice{margin-bottom:0}
.direction-library .directions{margin-top:20px}
.optional-extras{padding:24px;border-radius:12px;background:#eef2f5;margin:30px 0}
.optional-extras h2{font-size:21px;margin:0 0 8px}
.optional-extras>p{margin-bottom:16px;font-size:15px;color:var(--text-muted)}
.extra-options{display:flex;flex-wrap:wrap;gap:10px}
.extra-options .secondary{font-size:14px;min-height:44px;padding:10px 14px}
.self-check-question{margin:20px 0}
.self-check-question h3{font-size:16px;line-height:1.5;margin-bottom:10px}
.self-check-options{display:flex;flex-wrap:wrap;gap:8px}
.self-check-options .choice{padding:9px 12px;font-size:14px}
.self-check-options .choice input{margin-top:3px}
.self-check>p{font-size:14px;line-height:1.6;color:var(--text-muted)}
.save-panel>summary{font:500 18px/1.5 Rubik,Arial,sans-serif;list-style-position:inside;padding:2px 0}
.save-panel[open]>summary{margin-bottom:16px}
#copy-status:empty{display:none}
.reflection-report .evidence{margin:20px 0;padding:4px 0 4px 18px}
.reflection-report .evidence h3{font-size:18px;margin-top:0;line-height:1.4}
.career-connections{margin-bottom:32px}
.career-connections>h2{margin-bottom:10px}
.career-connections>p{font-size:15px;color:var(--text-muted)}
.connection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.career-connection{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:20px;border:1px solid #d8e0e3;border-top:3px solid #85c227;border-radius:10px;background:white;overflow-wrap:anywhere}
.career-connection .eyebrow{font-size:10px;letter-spacing:.1em;color:#547b17;margin:0 0 10px}
.career-connection h3{font-size:19px;line-height:1.35;margin:0 0 12px}
.career-connection p{font-size:14px;line-height:1.65;margin-bottom:12px}
.career-connection details{font-size:13px;line-height:1.5;margin:4px 0 16px;max-width:100%}
.career-connection details p{font-size:13px}
.career-connection details ul{padding-left:20px;line-height:1.6}
.career-connection li{margin-bottom:8px}
.career-connection .secondary{font-size:13px;padding:9px 12px;min-height:44px;margin-top:auto}
.career-connection .connection-tie{font-size:12px;color:var(--text-muted)}
.career-connections .connection-summary{padding:12px 15px;border-left:3px solid #85c227;background:#eff6e4;border-radius:0 6px 6px 0;font-size:14px;line-height:1.6}
.more-connections,.matching-method{margin:14px 0}
.matching-method p{font-size:14px;color:var(--text-muted);max-width:70ch}
.career-catalog{padding:20px 22px;background:#fff;border:1px solid var(--gray-200);border-radius:12px;margin:24px 0}
.career-catalog>summary{font:500 17px/1.5 Rubik,Arial,sans-serif;list-style-position:inside}
.career-catalog[open]>summary{margin-bottom:14px}
.career-catalog>p{font-size:15px;color:var(--text-muted)}
#career-search{display:block;width:100%;min-height:48px;border:1px solid #becad1;border-radius:8px;padding:12px 14px;background:white;color:var(--navy);font:inherit}
.career-role-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:460px;overflow:auto;overscroll-behavior:contain;padding:4px}
.career-role{display:flex;flex-direction:column;gap:5px;align-items:flex-start;padding:12px 14px;min-height:56px;background:#f8fafb;border:1px solid #e0e6e9;border-radius:8px;text-align:left;color:var(--navy);overflow-wrap:anywhere}
.career-role:hover{border-color:#85c227;background:#eff6e4}
.career-role strong{font-size:14px;line-height:1.45;font-weight:500}
.career-role span{font-size:12px;line-height:1.4;color:var(--text-muted)}
.career-search-content{max-height:480px;overflow:auto;overscroll-behavior:contain;padding:4px}
.career-search-content h3{font-size:16px;margin:16px 0 12px}
.career-search-content h3:first-child{margin-top:0}
.career-search-content .career-role-list{max-height:none;overflow:visible;padding:0}
.career-area{border-color:#cde0b6;background:#f3f8ed}
.visual-report{margin:22px 0;padding:18px 22px;border:1px solid var(--gray-200);border-radius:12px;background:#fff}
.visual-report>summary{font:500 17px/1.5 Rubik,Arial,sans-serif;list-style-position:inside}
.visual-report[open]>summary{margin-bottom:14px}
.visual-report p{font-size:15px}
.selected-words{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.selected-words span{display:inline-block;padding:8px 12px;border-radius:20px;background:#edf5e1;border:1px solid #cce0b1;color:#234318;font-size:14px;line-height:1.3}
.answer-blocks{grid-template-columns:repeat(auto-fit,minmax(28px,1fr))}
.appeal-choices{grid-template-columns:repeat(10,minmax(0,1fr));gap:8px}
.appeal-choices .choice{grid-column:span 2;align-items:center;min-height:64px;padding:10px;font-size:14px;line-height:1.4;gap:7px}
.appeal-choices .choice input{margin-top:0}
.appeal-choices .choice:nth-child(n+6){grid-column:span 5;min-height:44px;background:#f8fafb}
.appeal-choices .choice:has(input:checked){background:#eff6e4}
@media(max-width:740px){
  .flow-nav{padding:8px 12px}
  .flow-nav ol{gap:4px}
  .flow-nav button{min-height:72px;padding:8px 7px 12px;display:block}
  .flow-number{display:none}
  .flow-label{font-size:12px;line-height:1.35}
  .flow-label small{font-size:10px;line-height:1.35}
  .flow-nav progress{left:7px;width:calc(100% - 14px)}
  .scenario-field,.result-section,.ai-summary,.family-explorer,#families-title{scroll-margin-top:125px}
  .result-hero p{font-size:17px}
  .ai-summary{padding:24px 20px}
  .ai-prose p{font-size:16px}
  .report-details,.direction-library,.self-check{padding:17px 18px}
  .optional-extras{padding:20px}
  .extra-options{flex-direction:column;align-items:stretch}
  .connection-grid{grid-template-columns:1fr}
  .career-catalog{padding:18px}
  .career-role-list{grid-template-columns:1fr}
  .self-check-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .appeal-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
  .appeal-choices .choice{grid-column:span 1;min-height:46px;padding:10px 12px}
  .appeal-choices .choice:nth-child(5){grid-column:span 2}
  .appeal-choices .choice:nth-child(n+6){grid-column:span 1;min-height:46px}
}
@media print{
  .flow-nav,.optional-extras,.self-check,.ai-processing-note{display:none!important}
  .ai-summary{background:white;padding:5mm;border:1px solid #a9bd92;margin:6mm 0;break-inside:avoid}
  .ai-prose p{font-size:11pt;line-height:1.55}
  .ai-caveat,.ai-model{font-size:9pt}
  .report-details,.direction-library{border:0;padding:0;margin:6mm 0}
  .report-details>summary,.direction-library>summary{display:none}
  .save-panel{display:none}
  .career-catalog,.matching-method{display:none}
  .career-connection{break-inside:avoid}
  .career-connection .secondary{display:none}
  .connection-grid{display:block}
  .career-connection{margin:4mm 0}
}
