@import url('/product-system.css');
:root{color-scheme:dark;--bg:#07151e;--text:#f3f2df;--panel:#10232e;--line:#2b414b;--muted:#aabcc5;--cream:#f3f2df;--lime:#d0e894;--blue:#79b8d0}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--cream);font:16px/1.65 system-ui,-apple-system,sans-serif}a{color:var(--lime);text-underline-offset:4px}button,input,textarea,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;min-height:48px;border:1px solid var(--line);border-radius:7px;background:var(--lime);color:#142316;text-decoration:none;font-weight:650;cursor:pointer}button.secondary,.button.secondary{background:transparent;color:var(--cream)}button:disabled{opacity:.5;cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}header{border-bottom:1px solid var(--line);padding:20px max(22px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px}header .brand{font-size:24px;font-weight:850;color:var(--cream);text-decoration:none;letter-spacing:1px}.brand span{font-weight:350}.brand small{display:block;font-size:10px;letter-spacing:4px;color:var(--lime)}nav{display:flex;gap:22px;flex-wrap:wrap}nav a{font-size:13px;color:var(--muted);text-decoration:none;min-height:44px;display:flex;align-items:center}main{max-width:1200px;margin:auto;padding:32px 24px 80px}#status{color:var(--lime);min-height:26px;margin:0 0 12px}#status:empty{min-height:0;margin:0}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--lime);text-transform:uppercase}h1,h2,h3{line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(40px,6vw,76px);font-weight:500;max-width:760px;margin:18px 0 24px}h2{font-size:32px;font-weight:500}h3{font-size:22px}p{max-width:780px}.muted,small{color:var(--muted)}.hero{display:grid;grid-template-columns:1.6fr 1fr;gap:50px;padding:12px 0 44px;border-bottom:1px solid var(--line)}.hero .lead{font-size:19px;color:var(--muted);max-width:620px}.badge{display:inline-block;border:1px solid #586d3f;border-radius:30px;padding:5px 12px;font-size:11px;color:var(--lime)}.panel{border:1px solid var(--line);background:var(--panel);padding:28px;border-radius:12px}.flight-art{position:relative;min-height:280px;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#284852,transparent 65%)}.flight-art:before,.flight-art:after{content:'';position:absolute;border:1px solid #43616c;border-radius:50%;width:260px;height:260px;left:50%;top:50%;transform:translate(-50%,-50%)}.flight-art:after{width:170px;height:170px}.flight-art .plane{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-25deg);font-size:100px;color:var(--lime);z-index:1}.flight-art .caption{position:absolute;bottom:0;left:0;font-size:11px;letter-spacing:2px;color:var(--muted)}.stats{display:flex;gap:35px;padding:22px 0}.stats strong{font-size:27px;font-weight:500;display:block}.stats span{font-size:12px;color:var(--muted)}.notice{border-left:3px solid var(--lime);background:#172a2f;padding:17px 22px;margin:25px 0;color:#c9d8da;font-size:14px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:22px 0}.layout{display:grid;grid-template-columns:280px 1fr;gap:36px;margin-top:35px}.course-nav{position:sticky;top:20px;align-self:start}.course-nav button{width:100%;justify-content:flex-start;background:transparent;color:var(--muted);font-size:13px;font-weight:450;border:0;border-bottom:1px solid var(--line);border-radius:0;text-align:left;padding:13px 8px;gap:10px;line-height:1.4}.course-nav button[aria-current=true]{color:var(--lime);background:var(--panel);border-left:2px solid var(--lime)}.num{font-variant-numeric:tabular-nums;color:var(--blue);font-size:11px;min-width:22px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:24px}.lesson h2{font-size:clamp(30px,4vw,46px);margin-top:15px}.lesson section{margin:35px 0}.lesson p{color:#cfdbdf;font-size:17px}.lesson .objective{font-size:20px;color:var(--cream)}.lesson ul{padding-left:22px}.sources{font-size:14px;color:var(--muted);padding-top:18px;border-top:1px solid var(--line)}.sources a{display:block;margin:8px 0}.quiz fieldset{margin:22px 0;padding:22px;border:1px solid var(--line);border-radius:10px}.quiz legend{padding:0 10px;line-height:1.5;font-weight:600}.choice{display:flex;gap:12px;padding:13px 10px;margin:6px 0;background:#152a35;border:1px solid var(--line);border-radius:5px;cursor:pointer}.choice:has(input:checked){border-color:var(--lime);background:#263a32}.choice input{accent-color:var(--lime);width:20px;height:20px;flex-shrink:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);border-radius:10px;padding:24px;background:var(--panel)}.card h3{margin:14px 0;font-weight:500}.card p{color:var(--muted);font-size:14px}.card .eyebrow{color:var(--lime)}progress{width:100%;height:9px;accent-color:var(--lime)}label.field{display:block;margin:18px 0}input:not([type=radio]):not([type=checkbox]),textarea,select{width:100%;padding:13px;color:var(--cream);border:1px solid #536b77;background:#0b1c26;border-radius:5px;margin-top:6px}textarea{min-height:110px}label.check{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:14px;margin:16px 0}input[type=checkbox]{width:21px;height:21px;flex-shrink:0;accent-color:var(--lime)}.result{font-size:38px;font-weight:450;color:var(--lime)}.feedback{border-left:2px solid var(--blue);padding:8px 20px;margin:20px 0}.feedback.wrong{border-color:#e1b286}.feedback p{font-size:15px}.certificate{background:#f3f0df;color:#17313e;border:10px double #497083;padding:45px;margin:30px 0;text-align:center}.certificate h2{font-family:Georgia,serif;font-size:38px}.certificate p{margin:16px auto;max-width:650px;color:#31444d}.certificate .student{font-family:Georgia,serif;font-size:34px}.certificate .eyebrow{color:#365847}.certificate small{color:#31444d}.certificate a{color:#23475b;overflow-wrap:anywhere}.calc{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.calc output{grid-column:1/-1;padding:18px;border:1px solid var(--line);border-radius:6px;color:var(--lime);margin-top:15px}.empty{padding:35px;border:1px dashed var(--line);border-radius:10px;color:var(--muted)}footer{border-top:1px solid var(--line);max-width:1200px;margin:auto;padding:30px 24px;color:var(--muted);font-size:11px;letter-spacing:1px}footer div{display:flex;flex-wrap:wrap;gap:20px;margin:20px 0}footer p{letter-spacing:0}.skip{position:absolute;top:-100px}.skip:focus{top:5px;left:10px;background:var(--bg);padding:10px;z-index:2}.review{margin:20px 0}.review pre{white-space:pre-wrap;font:inherit}.pill{display:inline-block;border:1px solid var(--line);border-radius:20px;padding:3px 10px;font-size:12px}.meter{margin:25px 0}.meter p{display:flex;justify-content:space-between;font-size:12px}.outcome{padding:16px;background:#1b3239;border-radius:6px}@media(max-width:800px){header{align-items:flex-start;padding:18px 20px}nav{gap:4px 14px;justify-content:flex-end;max-width:220px}nav a{font-size:12px;min-height:32px}.hero{grid-template-columns:1fr;gap:0}.flight-art{display:none}.layout{grid-template-columns:1fr}.course-nav{position:static;max-height:240px;overflow:auto;border:1px solid var(--line);padding:10px;border-radius:8px}.grid{grid-template-columns:1fr}.stats{gap:26px}.stats strong{font-size:24px}.panel,.card{padding:22px}main{padding:22px 20px 60px}.certificate{padding:24px 14px;border-width:6px}.certificate h2{font-size:29px}.certificate .student{font-size:27px}.calc{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column;gap:0}}@media print{body{background:white;color:black}header,footer,#status,.no-print,main>#app>*:not(.certificate){display:none!important}.certificate{margin:0;border-color:#497083;page-break-inside:avoid}.certificate a{color:black}main{padding:0;max-width:none}.certificate small{font-size:11px}}
/* Understanding Lab */
.interactive-intro{margin:40px 0}.lab-card{display:block;text-decoration:none;transition:transform .18s,border-color .18s}.lab-card:hover{transform:translateY(-3px);border-color:var(--lime)}.lab-card h3,.lab-card p{color:var(--text)}.lab-card span{color:var(--lime)}.signature-entry{margin:28px 0;background:linear-gradient(120deg,#183643,#17232d)}.lab-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:30px 0}.lab-heading h1{font-size:clamp(34px,5vw,64px)}.lab-steps{display:flex;list-style:none;padding:0;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:13px}.lab-steps li{padding:10px 16px;border:1px solid var(--line);border-radius:30px}.lab-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr);gap:20px;margin:24px 0}.lab-stage{min-width:0}.lab-stage svg{width:100%;height:auto;border-radius:12px;background:#0b1929}.lab-stage svg text{fill:#e5eef5;font:13px system-ui}.lab-slider{display:block;margin:20px 0;font-weight:600}.lab-slider span{display:flex;gap:16px;align-items:center;margin-top:8px}.lab-slider output{min-width:65px;color:var(--lime)}.lab-slider input{width:100%;accent-color:#c4f266;min-height:44px}.lab-check,.lab-next{margin:22px 0}.lab-check fieldset{border:0;padding:0;margin:20px 0}.lab-check legend{color:var(--muted);margin-bottom:14px}.lab-check #lab-feedback{margin:20px 0;line-height:1.8}.guide h2{font-size:28px}.guide select{width:100%;font:inherit;padding:12px;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:8px}.lab-stage #lab-live{min-height:100px}.lab-next .button{display:inline-flex}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #7dd3fc;outline-offset:4px}.airflow{stroke-dasharray:14 7;animation:airflow 2s linear infinite}@keyframes airflow{to{stroke-dashoffset:-84}}@media(prefers-reduced-motion:reduce){.airflow{animation:none}.lab-card{transition:none}}@media(max-width:800px){.lab-layout{grid-template-columns:1fr}.lab-heading{display:block}.lab-heading .badge{display:inline-block;margin-top:15px}.lab-steps li{padding:8px 10px}.lab-stage{padding:18px}}@media print{.lab-layout,.lab-check,.lab-next{display:none}}

[hidden]{display:none!important}
.fc-tools{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.fc-tools .field{min-width:200px}.fc-card{display:flex;width:100%;min-height:300px;padding:36px;flex-direction:column;align-items:center;justify-content:space-between;gap:28px;text-align:center;border:1px solid #cddd8c;border-radius:20px;background:linear-gradient(140deg,#162c36,#0b1a23);color:#f7f9ee;box-shadow:0 16px 50px #0003}.fc-card span{font-size:clamp(22px,3.5vw,36px);line-height:1.4;max-width:800px}.fc-card small{font-size:12px;color:#cddd8c;letter-spacing:.1em}.fc-actions{justify-content:center;flex-wrap:wrap}.fc-card:focus-visible{outline:3px solid #fff;outline-offset:5px}@media(max-width:600px){.fc-card{padding:24px;min-height:320px}.fc-actions button{flex:1 1 40%}}

.certificate .certificate-logo{display:block;width:min(360px,85%);height:auto;margin:0 auto 12px;object-fit:contain;filter:none!important}@media print{.certificate .certificate-logo{width:280px;max-width:80%;print-color-adjust:exact}}
.full-toolbar{display:flex;gap:18px;flex-wrap:wrap;padding:20px 0;margin-bottom:25px;border-bottom:1px solid var(--line)}.full-gap{margin-top:25px}.full-nav-item{display:block;margin:12px 0;font-size:14px}.full-table{overflow:auto}.full-table table{border-collapse:collapse;width:100%;margin:25px 0}.full-table th,.full-table td{text-align:left;border-bottom:1px solid var(--line);padding:14px;vertical-align:top}.full-exam-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.full-exam-head #full-clock{font:24px ui-monospace,monospace;color:var(--lime);white-space:nowrap}.quiz svg{width:100%;max-width:600px}.quiz input[type=number],.quiz select{padding:12px;background:var(--panel);color:var(--cream);border:1px solid var(--line);border-radius:8px;min-height:44px;max-width:100%}.full-gap form{margin:20px 0}.full-gap textarea{width:100%}#full-draft textarea{font:12px/1.6 ui-monospace,monospace;white-space:pre;overflow:auto}.card ol{padding-left:20px}.card li{margin:12px 0}@media(max-width:600px){.full-exam-head{display:block}.full-toolbar{gap:12px}.full-table{font-size:13px}}@media print{.full-toolbar,.full-gap form,.full-exam-head{display:none}}
.match-bank{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}.match-bank [draggable]{cursor:grab}.match-target{padding:10px;border:1px dashed var(--line);border-radius:8px}.match-target:focus-within{border-color:var(--lime)}
.card summary{cursor:pointer;color:var(--lime);margin:15px 0}.card details[open] summary{margin-bottom:20px}#academy-theme{padding:6px 12px;min-height:36px;font-size:12px}body[data-academy-theme=light]{color-scheme:light;--bg:#f4f7f6;--panel:#fff;--line:#cad6d6;--muted:#53676d;--cream:#172d37;--text:#172d37;--lime:#315b18;--blue:#19617d;background:var(--bg);color:var(--cream)}body[data-academy-theme=light] .notice{background:#e6f0eb;color:#203b36}body[data-academy-theme=light] .signature-entry{background:#e1eee8}body[data-academy-theme=light] header,body[data-academy-theme=light] .guide{background:var(--panel)}body[data-academy-theme=light] .button,body[data-academy-theme=light] button{background:#315b18;color:white}body[data-academy-theme=light] .secondary{background:white;color:#243f44}body[data-academy-theme=light] input,body[data-academy-theme=light] textarea,body[data-academy-theme=light] select{background:white;color:#172d37}
.airspace-scene{height:330px;display:grid;place-items:center;perspective:700px;overflow:hidden;background:#0b1929;border-radius:12px}.airspace-stack{position:relative;width:300px;height:300px;transform-style:preserve-3d}.airspace-disc{position:absolute;border-radius:50%;background:#307eb075;border:2px solid #8bd6ff;color:white;text-align:center;padding-top:22px;font:bold 24px system-ui;box-shadow:0 0 30px #7dd3fc22}.airspace-disc.airspace-slab{border-radius:5px}.airspace-ground{position:absolute;inset:0;background:#47744d40;border:1px solid #82a787;transform:translateZ(-5px);color:white;padding:15px;font:12px system-ui}

.academy-cycle{margin-block:28px}.academy-cycle ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;list-style:none;padding:0}.academy-cycle li{min-width:0;border-top:2px solid var(--accent,#63cfc3);padding-top:16px}.academy-cycle strong{font-size:1.1rem}.academy-cycle p{font-size:1rem}.academy-cycle button{max-width:100%;white-space:normal}@media(max-width:900px){.academy-cycle ol{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.academy-cycle ol{grid-template-columns:1fr}}

.source-hash{overflow-wrap:anywhere;font-size:.85rem}.lesson p{line-height:1.8}.academy-cycle a{display:inline-block;margin-block:4px}.panel textarea{min-height:110px}

.weather-report{font:600 1.05rem/1.8 ui-monospace,monospace;padding:20px;border:1px solid currentColor;border-radius:10px;overflow-wrap:anywhere}

/* Explicit Academy light surfaces override global dark input defaults. */
body[data-academy-theme=light] input:not([type=checkbox]):not([type=radio]):not([type=range]),body[data-academy-theme=light] textarea,body[data-academy-theme=light] select{background:#fff!important;color:#172d37!important;-webkit-text-fill-color:#172d37!important;border-color:#81989e!important;color-scheme:light}
body[data-academy-theme=light] input::placeholder,body[data-academy-theme=light] textarea::placeholder{color:#53676d!important;opacity:1}
body[data-academy-theme=light] header .brand img,body[data-academy-theme=light] header[data-academy] .brand img{filter:brightness(0) saturate(100%)!important}
body[data-academy-theme=light] input:autofill{-webkit-text-fill-color:#172d37!important;box-shadow:0 0 0 1000px #fff inset!important}
/* Integrated planning and oral workspaces: accessible at narrow widths. */
.mission-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.6fr);gap:24px;margin-top:28px;align-items:start}.mission-layout>*{min-width:0}.mission-layout p,.mission-debrief p{max-width:76ch}.mission-layout dt{font-weight:700;margin-top:18px}.mission-layout dd{margin:4px 0 0}.mission-table{max-width:100%;overflow-x:auto}.mission-table table{width:100%;border-collapse:collapse;font-size:1rem}.mission-table caption{text-align:left;font-weight:700;margin:24px 0 12px}.mission-table th,.mission-table td{text-align:left;padding:10px 6px;border-bottom:1px solid #64798166}.mission-steps{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.mission-steps button{font-size:1rem;min-height:44px}.mission-steps [aria-current=step],.oral-topics [aria-pressed=true]{outline:2px solid var(--accent,#b7cf82);outline-offset:2px}.oral-topics{display:grid;gap:12px}.oral-topics button{text-align:left;font-size:1.05rem;white-space:normal}.mission-layout textarea{min-height:190px;font-size:1.1rem;line-height:1.6}.mission-debrief section{border-top:1px solid #64798166;margin-top:24px;padding-top:16px}.academy-studio-feature{background:linear-gradient(125deg,#183240,#11232d);border-color:#809e6855}body[data-academy-theme=light] .academy-studio-feature{background:linear-gradient(125deg,#e9f1eb,#fff)}
@media(max-width:760px){.mission-layout{grid-template-columns:minmax(0,1fr)}.mission-steps button{flex:1 1 45%;padding:10px}.mission-layout .panel{padding:20px}.oral-topics{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px}.oral-topics button{font-size:1rem;padding:10px}.mission-layout h1{overflow-wrap:anywhere}}
@media print{header,footer,#ace-widget,.mission-steps,.oral-topics,.mission-debrief button,.mission-layout button{display:none!important}body,body[data-academy-theme=dark]{background:#fff!important;color:#111!important}.panel,.card{background:#fff!important;color:#111!important;box-shadow:none!important;border:1px solid #bbb!important}.mission-layout{display:block}.mission-debrief section{break-inside:avoid}a{color:#111!important}textarea{color:#111!important;background:#fff!important}}
