:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#eef5ff;background:#07111f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 10% 10%,#173b58 0,#07111f 35%,#050b14 100%);min-width:720px;margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,details:focus-visible{outline-offset:3px;outline:3px solid #75d5ff}button:disabled{cursor:not-allowed;opacity:.45}.setup-shell{max-width:1440px;margin:auto;padding:32px clamp(20px,4vw,64px) 64px}.setup-header{background:#0d1a2a;border:1px solid #29425c;border-radius:18px;justify-content:space-between;align-items:start;gap:24px;padding:28px;display:flex;box-shadow:0 20px 45px #01050b55}h1,h2,h3,p{margin:0}h1{letter-spacing:-.05em;font-size:clamp(2rem,4vw,3.5rem)}h2{font-size:1.25rem}.eyebrow{color:#72e3b5;letter-spacing:.12em;font-size:.85rem;font-weight:800}.projection-shell{grid-template-rows:48px minmax(0,1fr) 128px 22px;gap:12px;height:100dvh;min-height:720px;padding:14px;display:grid;overflow:hidden}.projection-header{background:#0b1928;border:1px solid #27435f;border-radius:10px;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:20px;min-width:0;padding:0 10px 0 16px;display:grid}.projection-header>strong{color:#e4ad42}.projection-header>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.projection-actions{justify-content:end;align-items:center;gap:12px;min-width:0;display:flex}.page-navigator{align-items:center;gap:8px;min-width:0;display:flex}.page-navigator>span{color:#8ea6ba;letter-spacing:.08em;white-space:nowrap;font-size:.62rem;font-weight:850}.page-navigator>span strong{color:#eef8ff;font-size:.76rem}.page-navigator>div{scrollbar-width:none;gap:3px;max-width:360px;display:flex;overflow-x:auto}.page-navigator>div::-webkit-scrollbar{display:none}.page-navigator button{color:#91a9bb;background:#0c1824;border:1px solid #334e64;border-radius:6px;flex:none;place-items:center;width:24px;height:24px;padding:0;font-size:.62rem;font-weight:850;display:grid}.page-navigator button:hover,.page-navigator button:focus-visible{color:#eaf9ff;border-color:#6bd8ff}.page-navigator button.current{color:#06131d;background:#75dcff;border-color:#75dcff;box-shadow:0 0 12px #75dcff55}.exit{color:#d6e5f2;background:0 0;border-color:#46647f;padding:6px 10px;font-size:.83rem}.course-map-shell{max-width:1180px}.course-journey-route{gap:0;max-width:960px;margin:42px auto 0;padding:24px 0 40px;display:grid;position:relative}.course-journey-route:before{content:"";background:linear-gradient(#4bd2ff 0 24%,#23445c 24% 100%);border:2px solid #25435c;border-radius:99px;width:8px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 26px #45cfff33}.course-route-node{z-index:1;grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr);align-items:center;min-height:126px;display:grid;position:relative}.course-route-node:before{content:"";background:#315570;width:58px;height:3px;position:absolute;top:50%}.course-route-node.side-left:before{right:50%}.course-route-node.side-right:before{left:50%}.course-route-copy{align-items:center;gap:10px;min-width:0;display:flex}.side-left .course-route-copy{grid-column:1;justify-content:end}.side-right .course-route-copy{flex-direction:row-reverse;grid-column:3;justify-content:start}.course-route-launch{color:#edf7ff;text-align:left;background:linear-gradient(145deg,#12314a,#0b1b2a);border:1px solid #355a75;border-radius:15px;align-content:center;gap:5px;width:min(100%,330px);min-height:82px;padding:14px 18px;display:grid;box-shadow:0 14px 28px #01050b66}button.course-route-launch:hover{background:linear-gradient(145deg,#174664,#0d2639);border-color:#6bd9ff;transform:translateY(-2px)}.course-route-launch>span{color:#72d9ff;letter-spacing:.13em;font-size:.68rem;font-weight:900}.course-route-launch>strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.02rem;line-height:1.2;overflow:hidden}.course-route-launch>small{color:#768da1;letter-spacing:.11em;font-size:.61rem;font-weight:850}.course-route-launch.is-locked{color:#8193a4;box-shadow:none;background:linear-gradient(145deg,#101c28,#09121c);border-color:#283e51}.course-route-orb{z-index:2;color:#06131e;background:linear-gradient(145deg,#dff8ff,#65d6ff);border:5px solid #091522;border-radius:50%;grid-area:1/2;place-self:center;place-items:center;width:68px;height:68px;display:grid;position:relative;box-shadow:0 0 0 2px #4ba1c2,0 0 26px #51d2ff55,0 12px 22px #0008}.course-route-orb span{font-size:1.12rem;font-weight:950}.course-route-orb i{color:#062033;background:#9de7ff;border:3px solid #091522;border-radius:50%;place-items:center;width:25px;height:25px;font-size:.55rem;font-style:normal;display:grid;position:absolute;bottom:-3px;right:-5px}button.course-route-orb:hover{transform:scale(1.08)}.course-route-orb.is-locked{color:#6d8192;background:#182a39;box-shadow:0 0 0 2px #2b4559,0 10px 20px #0006}.course-route-orb.is-locked i{color:#71889a;background:#1d3446}.course-route-node.selected .course-route-launch{box-shadow:0 0 0 2px #65d8ff33,0 14px 28px #01050b77}@media (width<=820px){.course-map-shell .setup-header{align-items:center}.course-journey-route{margin-top:28px;padding:24px 0 40px}.course-journey-route:before{left:34px}.course-route-node{grid-template-columns:68px minmax(0,1fr);min-height:118px}.course-route-node.side-left:before,.course-route-node.side-right:before{width:52px;left:34px;right:auto}.course-route-node .course-route-orb{grid-column:1}.course-route-node .course-route-copy,.course-route-node.side-right .course-route-copy{flex-direction:row;grid-column:2;justify-content:start}}:root{--accent:#72e3b5}.eyebrow,.projection-header>strong,.course-route-launch>span{color:var(--accent)}.page-navigator button.current{background:var(--accent);border-color:var(--accent);box-shadow:none}.course-journey-route:before{box-shadow:none;background:#25433b}.course-route-launch>strong{white-space:normal;font-size:1.15rem;overflow:visible}.course-route-launch.is-locked{color:#b9c7d2}.course-route-launch.is-locked>span{color:var(--accent)}.course-route-launch.is-locked>small{color:#a4b3c0}.course-module{margin-top:48px}.course-module>header{border-left:4px solid var(--accent);background:#0d1a23;padding:20px 28px}.course-module h2{font-size:clamp(24px,2vw,32px)}.course-module header p{color:#b9c7d2;max-width:850px;margin-top:8px;font-size:19px;line-height:1.45}.course-module .course-journey-route{margin-top:24px}.course-deferred{color:#b9c7d2;margin:24px 28px;font-size:20px}.map-notice{border:1px solid var(--accent);border-radius:8px;margin-bottom:16px;padding:16px}.map-notice button{border:1px solid var(--accent);color:#fff;background:#102923;margin-left:16px;padding:5px 12px}.classroom-step-button{color:#eaf5ff;background:#102437;border:1px solid #36536a;border-radius:8px;justify-content:center;align-items:center;gap:12px;font-weight:800;display:inline-flex}.classroom-step-button i{font-style:normal}.classroom-step-button.next{border-color:var(--accent);background:#123b30}.lesson-navigation{z-index:9;align-items:center;gap:9px;display:flex;position:fixed;bottom:14px;right:30px}.lesson-navigation .classroom-step-button{flex:0 0 142px;width:142px;height:42px;font-size:14px}.lesson-navigation button:disabled{opacity:.55;cursor:default}.lesson-navigation :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.le-lesson{color:#f5f7fb;background:#050911;grid-template-rows:48px 46px minmax(0,1fr);gap:10px}.le-lesson .projection-header{background:#070d14}.le-lesson .page-navigator>div{max-width:none}.le-lesson :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.le-heading{align-items:center;min-width:0;padding:0 18px;display:flex}.le-app-error{color:#ffd9d9;white-space:nowrap;text-overflow:ellipsis;background:#3a1018;border:1px solid #c05560;border-radius:10px;margin:0 0 0 auto;padding:6px 14px;font-size:15px;font-weight:700;line-height:1.3;overflow:hidden}.le-heading h1{letter-spacing:-.035em;flex:0 auto;min-width:0;margin:0;font-size:clamp(28px,1.9vw,36px);line-height:1.1}.le-inline-code{overflow-wrap:anywhere;background:#96bedc1a;border-radius:4px;padding:0 .15em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95em}.le-title-highlight,.le-highlight{color:var(--accent)}.le-heading .le-title-highlight{background:0 0}.le-stage{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:16px;min-height:0;display:grid}.le-code{color:#182b3e;background:#f4f7fb;border:1px solid #c6d3df;border-radius:12px;flex-direction:column;min-height:0;padding:14px 16px;display:flex}.le-code>header{justify-content:space-between;align-items:center;gap:12px;min-height:32px;display:flex}.le-code h2{margin:0;font-size:18px}.le-code.has-source-label{border-top:6px solid var(--le-source-accent,#42566d)}.le-code.is-source-teal{--le-source-background:#e1f5ee;--le-source-text:#085041;--le-source-accent:#0f6e56}.le-code.is-source-purple{--le-source-background:#eeedfe;--le-source-text:#3c3489;--le-source-accent:#534ab7}.le-source-label{border:2px solid var(--le-source-accent,#42566d);background:var(--le-source-background,transparent);color:var(--le-source-text,#42566d);vertical-align:middle;white-space:nowrap;border-radius:999px;margin-left:12px;padding:3px 12px;font-size:18px;font-weight:700;line-height:1.2;display:inline-block}.le-source{--le-row:calc(1.4em + 8px);overscroll-behavior:contain;scrollbar-color:#c4ccd3 transparent;scrollbar-width:thin;flex:auto;min-height:0;margin-top:14px;font:clamp(19px,1.15vw,22px)/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-y:auto}.le-line{height:var(--le-row);border-left:3px solid #0000;grid-template-columns:2.4ch minmax(0,1fr) max-content;align-items:center;gap:16px;padding:0 8px 0 14px;display:grid;position:relative}.le-line code{color:#182b3e;font:inherit;white-space:pre;text-overflow:clip;overflow:hidden}.le-line-number{color:#5c7084;text-align:right;font-size:.78em}.le-line.is-next{background:#ffedb9;border-left-color:#a6690b}.le-line.is-error{background:#ffd9d9;border-left-color:#c05560}.le-line.is-focus{background:#e3e9f0;border-left-color:#24394d;box-shadow:inset 3px 0 #24394d}.le-scenarios{counter-reset:le-scenario;flex:auto;align-content:start;gap:14px;min-height:0;margin:14px 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}.le-scenario{counter-increment:le-scenario;background:#fff;border:1px solid #c6d3df;border-radius:10px;gap:8px;padding:12px 16px 12px 52px;display:grid;position:relative}.le-scenario:before{content:counter(le-scenario);color:#fff;background:#24394d;border-radius:50%;place-items:center;width:24px;height:24px;font:700 14px/1 ui-sans-serif,system-ui,sans-serif;display:grid;position:absolute;top:12px;left:16px}.le-scenario p{color:#182b3e;margin:0;font-size:clamp(18px,1.15vw,22px);line-height:1.35}.le-scenario p .le-inline-code{background:#e8eef4}.le-scenario>code,.le-scenario-hidden{min-height:1.4em;font:clamp(19px,1.15vw,22px)/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.le-scenario-hidden{color:#8a99a8;font-style:italic}.le-scenario.is-revealed{background:#e3e9f0;border-color:#24394d;box-shadow:inset 6px 0 #24394d}.le-next-marker{color:#805000;font-size:.8em;position:absolute;left:-2px}.le-badges{justify-content:flex-end;align-items:center;gap:6px;display:flex}.le-syntax-keyword,.le-syntax-literal{color:#00f}.le-syntax-string{color:#a31515}.le-syntax-number{color:#098658}.le-syntax-function{color:#795e26}.le-syntax-variable{color:#001080}.le-syntax-operator{color:#af00db}.le-syntax-comment{color:green}.le-badge{letter-spacing:.02em;white-space:nowrap;border:1px solid;border-radius:999px;padding:1px 9px;font:700 .62em/1.5 ui-sans-serif,system-ui,sans-serif;display:inline-block}.le-badge.is-true{color:#0c3d20;background:#b9ecc9;border-color:#3f9c63}.le-badge.is-false{color:#5a1420;background:#ffd9d9;border-color:#c05560}.le-badge.is-loop,.le-badge.is-return{color:#164a78;background:#dceeff;border-color:#5c9ed6}.le-badge.is-ended{color:#4c5a68;background:#e2e8ee;border-style:dashed;border-color:#8a99a8}.le-badge.is-error{color:#fff;background:#a33a46;border-color:#a33a46}.le-case-selector{color:#182b3e;position:relative}.le-case-selector summary{color:#24394d;cursor:pointer;background:#fff;border:1px solid #71869a;border-radius:8px;align-items:center;gap:10px;min-width:150px;padding:6px 11px;font:700 15px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;list-style:none;display:flex}.le-case-selector summary::-webkit-details-marker{display:none}.le-case-selector summary span{flex:1}.le-case-selector summary b{color:#52677c}.le-case-selector[open] summary b{transform:rotate(180deg)}.le-case-menu{z-index:20;background:#fff;border:1px solid #71869a;border-radius:9px;min-width:100%;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 28px #10203038}.le-case{color:#24394d;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 10px;font:700 15px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.le-case:hover,.le-case:focus-visible{background:#e8eef4}.le-case.is-active{color:#164a78;background:#dceeff}.le-output{color:#f5f7fb;background:#0b1923;border-radius:10px;flex-direction:column;flex:none;gap:6px;min-height:0;margin-top:12px;padding:10px 16px;display:flex}.le-output h2{margin:0;font-size:18px}.le-output pre{white-space:pre-wrap;overflow-wrap:anywhere;scrollbar-color:#4b6274 transparent;scrollbar-width:thin;height:6.75em;margin:0;font:clamp(18px,1.15vw,22px)/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-y:auto}.le-error-output{color:#ff9aa5;font-weight:700;display:block}.le-side{overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:#c4ccd3 transparent;scrollbar-width:thin;grid-auto-rows:max-content;align-content:start;gap:12px;min-height:0;padding:0 4px 62px 0;display:grid;overflow-y:auto}.le-prompt,.le-card{border-left:3px solid var(--le-accent);background:linear-gradient(100deg, rgba(var(--le-accent-rgb), .13), #0b151fdd 62%, #08111add);border-radius:0 17px 17px 0;padding:clamp(14px,1.25vw,20px);box-shadow:0 14px 32px #0004}.le-prompt{--le-accent:var(--accent);--le-accent-rgb:114, 227, 181;z-index:2;background-color:#0b151f;position:sticky;top:0}.le-prompt strong{color:#f5f7fb;font-size:clamp(23px,1.6vw,29px);line-height:1.2;display:block}.le-cards{gap:12px;display:grid}.le-card{--le-accent:#a7d9fa;--le-accent-rgb:167, 217, 250;--le-card-font-size:clamp(23px, 1.6vw, 29px)}.le-card :is(h2,p,li){font-size:var(--le-card-font-size)}.le-card h2{color:var(--le-accent);margin:0;line-height:1.2}.le-card p{margin:8px 0 0;line-height:1.3}.le-card ul{gap:7px;margin:10px 0 0;padding-left:24px;display:grid}.le-card li{line-height:1.28}.le-card li::marker{color:var(--le-accent)}.le-line.is-program-frame code,.le-line.is-program-frame code span{color:#627083}.le-variables{background:#08111b;border:1px solid #304151;border-radius:12px;padding:14px 18px}.le-variables h2{margin:0 0 12px;font-size:18px}.le-variables dl{flex-wrap:wrap;gap:12px;margin:0;display:flex}.le-variable{background:#10201d;border:2px solid #55736b;border-radius:8px;min-width:150px;padding:10px 14px 28px;font:20px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;position:relative}.le-variable dt{color:#b1ddd0;gap:12px;display:flex}.le-variable dt small{font:inherit;font-size:18px}.le-variable dd{color:#fff;overflow-wrap:anywhere;background:#071410;border:1px solid #466158;border-radius:4px;margin:8px 0 0;padding:6px 10px}.le-variable code{font:inherit}.le-variable.is-changed{border-color:var(--accent)}.le-change{color:var(--accent);font:700 13px/1.3 ui-sans-serif,system-ui,sans-serif;position:absolute;bottom:4px;right:12px}.le-empty{color:#a6b9c5;margin:0;font-size:18px}.le-file{color:#526577;margin-left:16px;font:16px/1.4 ui-monospace,monospace;display:inline-block}.le-visuals{gap:12px;display:grid}.le-visual,.le-diagnostics{background:#0c1c20;border:1px solid #466158;border-radius:12px;margin:0;padding:18px;font-size:clamp(23px,1.6vw,29px);line-height:1.35}.le-visual figcaption{color:var(--accent);font-weight:700}.le-visual ol{flex-wrap:wrap;gap:12px;margin:16px 0 0;padding:0;list-style-position:inside;display:flex}.le-visual li{border:1px solid #55736b;border-radius:8px;padding:12px}.le-visual blockquote{margin:16px 0}.le-visual>p{color:#b1c5d0;font-size:18px}.le-visual img{object-fit:contain;max-width:100%;max-height:300px}.le-diagnostics{color:#ffd9d9;border-color:#c05560}.le-diagnostics h2{font-size:inherit}.le-diagnostics p{font:18px/1.4 ui-monospace,monospace}.le-diagnostics pre{white-space:pre-wrap;overflow-wrap:anywhere;font:20px/1.4 ui-monospace,monospace}.le-condition{background:#0c1c20;border:1px solid #55736b;border-radius:12px;padding:14px 18px}.le-condition h2{color:var(--accent);margin:0 0 10px;font-size:23px}.le-condition p{flex-wrap:wrap;align-items:center;gap:14px;font:23px/1.4 ui-monospace,monospace;display:flex}.le-condition strong{border:1px solid var(--accent);color:var(--accent);border-radius:8px;padding:3px 10px}.le-source-file>h3{color:#526577;margin:12px 0;font:18px/1.4 ui-monospace,monospace}.le-code.le-visual-panel{color:#eef5ff;background:#0c1c20;border-color:#466158}.le-static-evidence{flex:1;align-content:start;gap:18px;min-height:0;margin-top:18px;display:grid;overflow-y:auto}
