.needs-launch{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:20px 0;padding:28px 32px;background:linear-gradient(125deg,#102f40,#153f4a);border-radius:14px;color:#edf8f8}
.needs-launch h2{margin:8px 0}.needs-launch p{max-width:800px;color:#c4dfdf}.needs-launch button{white-space:nowrap;background:#70e7c8;color:#102f40;border:0}
.needs-display{--nd-cyan:#76e6d2;--nd-gold:#eebd72;color:#f1f7fa;background:radial-gradient(ellipse at 90% 0%,#16465b77,transparent 50%),#0b1c2d;font:18px/1.5 "Segoe UI","Microsoft YaHei",sans-serif;padding:20px max(32px,calc((100vw - 1380px)/2));display:flex;flex-direction:column;height:100dvh;min-height:0;overflow:hidden;color-scheme:dark}
.needs-display *{min-width:0}
.nd-toolbar{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;color:#9fc4cf;font-size:11px;letter-spacing:2px;border-bottom:1px solid #294456;padding-bottom:14px}
.nd-toolbar>div{display:flex;gap:8px}
.needs-display button{background:#163347;color:#dceef2;border:1px solid #36596a;border-radius:6px}
.needs-display button:hover{background:#23495c;border-color:#76e6d2;color:#fff}
.needs-display button:focus-visible{outline:3px solid var(--nd-gold);outline-offset:3px}
.nd-heading{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-shrink:0;margin:18px 0 24px}
.nd-heading h1{font-size:clamp(28px,2.8vw,40px);margin:6px 0;line-height:1.2}
.nd-kicker,.nd-label{font-size:12px;letter-spacing:1.7px;color:var(--nd-cyan);margin:8px 0}
.nd-meta{display:flex;flex-direction:column;align-items:flex-end;gap:7px;flex-shrink:0}
.nd-status,.nd-synthetic{font-size:12px;padding:6px 11px;border-radius:24px;white-space:nowrap}
.nd-status{color:#c3dce3;border:1px solid #436775}
.nd-synthetic{color:#ffd99c;border:1px solid #a07c42;background:#55402366;font-weight:600}
.nd-evidence-grid{display:grid;grid-template-columns:310px 1fr;gap:38px;align-items:center;flex:1;min-height:0}
.nd-orbit{text-align:center}
.nd-ring{width:228px;height:228px;margin:auto;border-radius:50%;background:conic-gradient(var(--nd-cyan) var(--coverage),#203d4d 0);padding:9px;box-shadow:0 0 70px #65e6d210}
.nd-ring>div{height:100%;border-radius:50%;background:#0b1e30;display:flex;flex-direction:column;justify-content:center}
.nd-ring strong{font-size:64px;line-height:1.2;font-weight:500}.nd-ring em{font-size:24px;font-style:normal;color:#a6c1cf}
.nd-ring span{font-size:13px;color:#bdd5de;margin-top:12px}.nd-orbit small{color:#a6c2ce;font-size:12px}
.nd-small-stat{display:flex;align-items:center;gap:16px;justify-content:center;padding:16px;margin-top:16px;border-top:1px solid #294456}
.nd-small-stat strong{color:var(--nd-gold);font-size:36px}.nd-small-stat span{font-size:13px;max-width:190px;text-align:left;color:#b3c9d2}
.nd-evidence{display:grid;gap:16px;max-height:100%;overflow:auto;overscroll-behavior:contain}
.nd-evidence article{padding:18px 24px;border:1px solid #2d4a5c;border-radius:12px;background:#102a3c}
.needs-display blockquote{font-size:clamp(18px,1.65vw,24px);line-height:1.45;color:#f4f9fa;border-left:3px solid var(--nd-cyan);background:#17384a;margin:10px 0;padding:12px 18px;overflow-wrap:anywhere}
.nd-evidence article:nth-child(2) blockquote{border-color:var(--nd-gold)}
.nd-priorities{display:grid;grid-template-columns:1fr 1fr;gap:24px;flex:1;min-height:0;align-items:stretch}
.nd-priority{position:relative;padding:24px 28px;border:1px solid #326071;background:linear-gradient(140deg,#133646,#0d2739);border-radius:14px;overflow:auto;overscroll-behavior:contain;scrollbar-color:#779aa5 #153243;scrollbar-width:thin;overflow-wrap:anywhere}
.nd-priority:nth-child(2){border-color:#6a583f;background:linear-gradient(140deg,#2d302c,#102638)}
.nd-priority:nth-child(2) .nd-label{color:var(--nd-gold)}
.nd-number{position:absolute;right:20px;top:10px;font-size:58px;color:#ffffff16;font-weight:700;pointer-events:none}
.nd-priority h2{font-size:clamp(25px,2.1vw,32px);line-height:1.3;max-width:94%;margin:16px 0}
.nd-priority>p:not(.nd-label){font-size:18px;color:#d2e1e7;line-height:1.55;margin:12px 0}
.nd-link{border-top:1px solid #365262;margin-top:20px;padding-top:16px;color:#b1e5df;font-size:16px;line-height:1.55}
.nd-boundary,.nd-muted{color:#b4ccd6;font-size:13px}.nd-boundary{flex-shrink:0;margin:12px 0 0}
.nd-path{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:18px 0 24px}
.nd-path article{padding:22px;background:#143346;border:1px solid #365b6b;border-radius:12px}
.nd-path span{color:var(--nd-cyan);font-size:28px}.nd-path h2{font-size:24px;line-height:1.3;margin:14px 0}
.nd-path p{font-size:14px;color:#b3cfda}
.nd-takeaway{padding:24px 30px;border-left:4px solid var(--nd-gold);background:#153144}
.nd-takeaway h2{font-size:clamp(25px,2.3vw,32px);line-height:1.3;margin:18px 0}
.nd-takeaway>p:last-child{color:#d0e3e9}
.nd-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-shrink:0;padding-top:18px;margin-top:auto}
.nd-bottom>p{font-size:12px;line-height:1.45;color:#b0cad6;max-width:390px;margin:0}
.nd-steps{display:flex;gap:8px;flex-shrink:0}
.nd-steps .current,.nd-steps .current:hover{background:var(--nd-cyan);color:#102b3b;border-color:var(--nd-cyan)}
/* No opacity animation: each teaching step is immediately readable. */
.nd-evidence article,.nd-priority,.nd-path article{animation:nd-appear .3s ease-out}
@keyframes nd-appear{from{transform:translateY(6px)}to{transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.needs-display *{animation:none!important;scroll-behavior:auto!important}}
@media(min-width:851px) and (max-height:800px){
 .needs-display{padding-top:16px;padding-bottom:16px}
 .nd-toolbar{padding-bottom:10px}.nd-toolbar button{padding:7px 13px}
 .nd-heading{margin:14px 0 18px}.nd-heading h1{font-size:32px}
 .nd-kicker,.nd-label{margin:6px 0}
 .nd-ring{width:190px;height:190px}.nd-ring strong{font-size:54px}
 .nd-small-stat{padding:10px;margin-top:10px}.nd-orbit>p{margin:10px 0}
 .nd-evidence article{padding:14px 22px}.needs-display blockquote{padding:10px 16px;font-size:21px}
 .nd-priority{padding:20px 24px}.nd-priority h2{font-size:26px;margin:12px 0}
 .nd-priority>p:not(.nd-label){font-size:17px;line-height:1.5}
 .nd-link{margin-top:14px;padding-top:12px;font-size:15px;line-height:1.5}
 .nd-boundary{margin-top:10px}.nd-bottom{padding-top:14px}
 .nd-path{margin:12px 0 20px}.nd-path article{padding:18px 22px}
 .nd-path h2{font-size:23px}.nd-takeaway{padding:20px 28px}
}
@media(max-width:850px){
 .needs-launch{display:block}.needs-display{padding:18px;overflow:auto}
 .nd-heading{display:block}.nd-heading h1{font-size:28px}
 .nd-meta{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;margin-top:12px}
 .nd-evidence-grid,.nd-priorities{grid-template-columns:1fr;flex:none;min-height:auto}
 .nd-evidence-grid{gap:18px}.nd-orbit{display:grid;grid-template-columns:140px 1fr;column-gap:18px;align-items:center}
 .nd-ring{grid-row:1/4;width:140px;height:140px;padding:6px}.nd-ring strong{font-size:36px}.nd-ring em{font-size:18px}.nd-ring span{font-size:11px;margin-top:6px}
 .nd-orbit>p{margin:0}.nd-small-stat{grid-column:2;padding:8px;margin-top:8px;gap:12px}.nd-small-stat strong{font-size:28px}
 .nd-small-stat span{font-size:12px}.nd-evidence{overflow:visible}
 .nd-priority{padding:24px;overflow:visible}.nd-priority h2{font-size:26px}
 .nd-path{grid-template-columns:1fr 1fr}.nd-path h2{font-size:21px}
 .nd-bottom{display:block}.nd-bottom>p{max-width:none;margin-bottom:14px}
 .nd-steps{flex-wrap:wrap}.nd-toolbar>span{display:none}.nd-toolbar{justify-content:flex-end}
 .nd-takeaway{padding:20px}.nd-takeaway h2{font-size:25px}
}