:root{color:#e8f4fa;background:#071827;font-family:Arial,sans-serif;font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0}a{color:#b9fa66}button,input{font:inherit}button{cursor:pointer;color:#fff;background:#143346;border:1px solid #527284;border-radius:10px;min-height:48px;padding:12px 16px}button:hover{background:#23546b}button:disabled{opacity:.55;cursor:default}:focus-visible{outline-offset:4px;outline:3px solid #b9fa66}.skip{position:absolute;left:-10000px}.skip:focus{z-index:5;background:#071827;top:10px;left:10px}header{border-bottom:1px solid #294657;justify-content:space-between;align-items:center;gap:20px;padding:20px 4vw;display:flex}header a{font-weight:700;text-decoration:none}header span,.eyebrow{letter-spacing:.13em;color:#86bbc9;font-size:.8rem}main{grid-template-columns:260px minmax(0,1fr) 270px;max-width:1600px;min-height:85vh;margin:auto;display:grid}aside{padding:30px 24px}h1{letter-spacing:-.03em;font-size:2rem;line-height:1.15}h2{font-size:1.7rem;line-height:1.2}nav{gap:12px;margin:25px 0;display:grid}nav button{text-align:left}nav button.active{border:2px solid #b9fa66}nav small{color:#a4c4d3;display:block}.small{color:#adc1cd;font-size:.875rem}.tutor{border-left:1px solid #294657}.tutor button{width:100%;margin:6px 0}.save{border-top:1px solid #294657;margin-top:35px}#mission{background:radial-gradient(at 100% 0,#164c57,#0000 65%),#0a2031;border-inline:1px solid #294657;padding:36px}.stage{gap:8px;margin:20px 0;display:flex}.stage span{background:#315164;border-radius:5px;flex:1;height:7px}.stage span.on{background:#b9fa66}.scene{color:#102c35;background:#eff6ee;border-radius:14px;margin:20px 0;padding:24px}.scene p{max-width:65ch}.badge{color:#163127;background:#b9fa66;border-radius:30px;padding:4px 12px;font-weight:700;display:inline-block}.choices{gap:12px;margin:20px 0;display:grid}.choices button{text-align:left}.primary{color:#102819;background:#b9fa66;font-weight:700}.feedback{background:#102e42;border-left:4px solid #70c4e5;margin:18px 0;padding:16px}.controls{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.meter{background:#315164;border-radius:6px;height:30px;margin:16px 0;overflow:hidden}.meter div{background:#67d8f0;height:100%;transition:width .2s}label{margin:16px 0;display:block}input[type=range]{width:100%}table{border-collapse:collapse;width:100%}td,th{text-align:left;border-bottom:1px solid #9bb8b4;padding:8px}@media (width<=1100px){main{grid-template-columns:230px 1fr}.tutor{border-top:1px solid #294657;grid-column:1/-1}.tutor button{width:auto;margin-right:10px}}@media (width<=700px){header{flex-wrap:wrap}header span{display:none}main{display:block}aside,#mission{padding:22px}nav{grid-template-columns:repeat(2,minmax(0,1fr))}h1{font-size:1.8rem}.scene{padding:18px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}html,body{height:100%;overflow:hidden}#world{background:#071827;position:fixed;inset:0}#viewport{outline:none;width:100%;height:100%;display:block}#world button{font-size:1rem}.world-top,.world-bottom{pointer-events:none;justify-content:space-between;align-items:center;gap:18px;display:flex;position:absolute;left:24px;right:24px}.world-top{top:20px}.world-top a,.world-top button{pointer-events:auto;background:#081b2ee8;border-radius:8px;padding:10px 16px}.world-top span{letter-spacing:.14em;text-shadow:0 2px 8px #000;font-size:.875rem}.world-bottom{background:#081b2ee8;border:1px solid #446377;border-radius:8px;padding:12px 16px;font-size:.875rem;bottom:20px}#crosshair{color:#fff;text-shadow:0 1px 4px #000;pointer-events:none;font-size:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#interact-prompt{text-align:center;pointer-events:none;background:#071827e8;border:1px solid #8dbccf;border-radius:8px;max-width:90%;padding:10px 20px;position:absolute;bottom:100px;left:50%;transform:translate(-50%)}#world-menu{background:#04111d80;place-items:center;padding:75px 20px;display:grid;position:absolute;inset:0;overflow:auto}#world-menu[hidden],#lesson-shell[hidden]{display:none}.menu-card{background:#092235f5;border:1px solid #4a7a8e;border-radius:18px;width:min(560px,100%);padding:30px;box-shadow:0 25px 80px #0008}.menu-card h1{margin:12px 0;font-size:2.5rem}.menu-card dl{grid-template-columns:110px 1fr;gap:10px;font-size:1rem;display:grid}.menu-card dt{color:#c2ff70;font-weight:700}.menu-card dd{margin:0}.menu-card button{margin:6px 8px 6px 0}.menu-card label{font-size:.875rem}#world-notice{color:#bfd3de;font-size:.875rem}#lesson-shell{z-index:5;background:#071827;border:1px solid #6d98ab;border-radius:14px;position:fixed;inset:20px;overflow:auto;box-shadow:0 20px 90px #000b}.lesson-toolbar{z-index:1;background:#071827;border-bottom:1px solid #385466;justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex;position:sticky;top:0}#lesson-shell main{min-height:0}#lesson-shell aside,#mission{min-width:0}.world-playing .world-top span{opacity:.6}.world-playing #crosshair{color:#c2ff70}#interact-prompt.targeted{color:#dcffad;border-color:#c2ff70}@media (width<=700px){.world-top{left:12px;right:12px}.world-top span{display:none}.world-bottom{flex-wrap:wrap;font-size:.875rem;left:12px;right:12px}.world-bottom span:last-child{display:none}.menu-card{padding:22px}.menu-card h1{font-size:2rem}#lesson-shell{border-radius:0;inset:0}.lesson-toolbar{flex-wrap:wrap;padding:10px}#interact-prompt{bottom:95px}}.world-top{z-index:2}#world-menu{z-index:1}.scene button{margin:6px 0}.scene input[type=number]{color:#102c35;background:#fff;border:2px solid #527284;width:min(100%,240px);padding:10px;display:block}.scene table{margin:20px 0}.scene caption{text-align:left;font-weight:700}.scene details{margin-top:20px}.scene summary{cursor:pointer;font-weight:700}#worlds button[data-completed=true]:after{content:"Practice completed";color:#d5ff5f;font-size:.85rem;display:block}.lesson-toolbar{flex-wrap:wrap}.lesson-toolbar .journey-link{margin:0}.scene #help-choices{gap:10px;display:grid}#experiment-feedback{font-weight:700}.scene .meter{background:#ccd9d7}#trial-bar{background:#286c7a}.tutor{overflow-wrap:anywhere}[hidden]{display:none!important}.recall{border:2px solid #b9fa66;margin-top:24px;padding:20px}.recall button{margin:8px 0}.choices button[aria-pressed=true]{outline:3px solid #b9fa66}@media (width<=700px){#lesson-shell main{flex-direction:column;display:flex}#mission{order:-1}#worlds{max-height:280px;overflow:auto}}#operations-dialog{color:#e8f4fa;background:#071d2b;border:1px solid #77a7ba;border-radius:12px;width:min(1100px,96vw);max-height:94dvh;padding:0;overflow:auto;box-shadow:0 20px 80px #000b}#operations-dialog::backdrop{background:#020b14b8}#operations-dialog h1{font-size:2rem}#operations-dialog h2{font-size:1.2rem}.ops-header{z-index:2;background:#071d2b;padding:16px 24px;position:sticky;top:0}.ops-header span{font-size:.875rem}.ops-nav{flex-wrap:wrap;gap:8px;margin:18px 0;padding:0 24px;display:flex}.ops-nav button{flex:1;min-width:180px}.ops-nav [aria-pressed=true]{color:#c2ff70;border-color:#c2ff70}.ops-layout{grid-template-columns:1.1fr 1fr;gap:28px;padding:0 24px 24px;display:grid}.ops-count{color:#c2ff70;font-weight:700}.ops-layout details{border:1px solid #46677a;margin:10px 0;padding:12px}.ops-layout summary{cursor:pointer;font-weight:700}.ops-layout select{width:100%;font:inherit;color:#fff;background:#153849;border:1px solid #84a7b8;border-radius:6px;padding:12px;display:block}.ops-telemetry{background:#102e40;border-radius:10px;padding:20px}#operation-result{min-height:100px;font-size:1.1rem}#operation-meter{width:100%;height:32px;margin:15px 0}#operation-debrief h2{color:#c2ff70}.ops-history{max-height:280px;overflow:auto}.ops-history td{vertical-align:top;font-size:.9rem}#operation-objective{pointer-events:none;background:#071827ed;border-left:3px solid #c2ff70;max-width:340px;padding:12px;font-size:.9rem;position:absolute;top:86px;left:24px}.operations-home{max-width:850px;margin:auto;padding:35px;display:block}.operations-home h1{font-size:2.5rem}@media (width<=700px){.ops-layout{grid-template-columns:1fr;gap:18px;padding:0 16px 20px}.ops-header{padding:10px 16px}.ops-nav{padding:0 16px}.ops-nav button{min-width:130px;font-size:.9rem}#operation-objective{max-width:260px;top:78px;left:12px}#operations-dialog{width:98vw;max-height:98dvh}.ops-history{max-height:none}}
