: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%) fixed;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}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);align-items:center;gap:20px;min-width:0;padding:0 10px 0 16px;display:grid}.projection-header>strong{color:#e4ad42}.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}.setup-shell{max-width:1440px;margin:auto;padding:32px clamp(20px,4vw,64px) 64px}.course-map-shell{--radius:14px;max-width:1180px}.setup-header{background:radial-gradient(520px 220px at 0 0,#72e3b51f,#0000 70%) padding-box padding-box,linear-gradient(#0f1e2bdd,#0a151fdd) padding-box padding-box,linear-gradient(135deg,#72e3b570,#ffffff1a 35%,#ffffff0a 70%,#72e3b530) border-box;border:1px solid #0000;border-radius:22px;justify-content:space-between;align-items:center;gap:32px;padding:34px 40px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px -18px #01050bcc,inset 0 1px #ffffff0d}.setup-header:after{content:"";pointer-events:none;background:radial-gradient(#9fd8ff2e 1px,#0000 1.5px) 0 0/18px 18px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 35%,#000 100%);mask-image:linear-gradient(90deg,#0000 35%,#000 100%)}.setup-header>*{z-index:1;position:relative}.course-map-shell .eyebrow{letter-spacing:.16em;background:#72e3b512;border:1px solid #72e3b540;border-radius:99px;align-items:center;gap:10px;padding:6px 14px 6px 12px;font-size:.78rem;display:inline-flex}.course-map-shell .eyebrow:before{background:var(--accent);width:8px;height:8px;box-shadow:0 0 10px var(--accent);content:"";border-radius:50%}.course-map-shell .setup-header h1{letter-spacing:-.045em;color:#0000;background:linear-gradient(100deg,#f6fbff 30%,#bdf5dc 75%,#72e3b5);-webkit-background-clip:text;background-clip:text;margin-top:14px;padding-bottom:.08em;font-size:clamp(2.4rem,3.4vw,3.4rem);font-weight:800;line-height:1.02}.course-map-stats{flex:none;margin:0;display:flex}.course-map-stats>div{flex-direction:column-reverse;gap:4px;padding:4px 28px;display:flex}.course-map-stats>div+div{border-left:1px solid #ffffff1a}.course-map-stats dt{color:#8fa3b4;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:750}.course-map-stats dd{color:#f2fbff;letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-size:2.4rem;font-weight:800;line-height:1}.course-map-stats>div:last-child dd{color:var(--accent)}.course-module{margin-top:52px}.course-module>header{box-shadow:inset 4px 0 0 var(--accent);border-bottom:1px solid #1d3242;justify-content:space-between;align-items:baseline;gap:16px;padding:2px 4px 14px 20px;display:flex}.course-module h2{letter-spacing:-.01em;font-size:clamp(24px,2vw,32px)}.course-module>header>span{color:#8fa3b4;white-space:nowrap;font-size:1rem;font-weight:650}.course-deferred{border-radius:var(--radius);color:#b9c7d2;border:1.5px dashed #2f4859;width:fit-content;margin:28px auto 0;padding:18px 40px;font-size:20px;font-weight:650}.course-journey-route{max-width:960px;margin:24px auto 0;padding:48px 0;display:grid;position:relative}.course-journey-route:before{content:"";background:#25433b;border:2px solid #1f3a33;border-radius:99px;width:8px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.course-route-node{z-index:1;grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr);align-items:center;height:104px;display:grid;position:relative}.course-route-node:before{content:"";background:#2b4a44;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-node.ready:before{background:#3f8f74}.course-route-copy{align-items:center;min-width:0;display:flex}.side-left .course-route-copy{grid-column:1;justify-content:end}.side-right .course-route-copy{grid-column:3;justify-content:start}.course-route-launch{border-radius:var(--radius);color:#f2fbff;text-align:left;background:linear-gradient(145deg,#133a33,#0c1e24);border:1px solid #72e3b599;align-content:center;gap:5px;width:min(100%,350px);min-height:84px;padding:14px 20px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:grid;box-shadow:0 14px 28px #01050b66}.course-route-launch>span{color:var(--accent);letter-spacing:.12em;font-size:.82rem;font-weight:850}.course-route-launch>strong{font-size:1.15rem;line-height:1.22}.course-route-launch>small{color:#a4b3c0;letter-spacing:.1em;font-size:.78rem;font-weight:800}.course-route-launch.is-locked{color:#a9b8c4;box-shadow:none;background:#0a141ecc;border:1.5px dashed #2f4859}.course-route-launch.is-locked>span{color:#7f9a92}.course-route-launch.is-locked>strong{font-weight:650}.course-route-orb{z-index:2;color:#04130d;background:linear-gradient(145deg, #e6fff4, var(--accent));border:4px solid #08131c;border-radius:50%;grid-area:1/2;place-self:center;place-items:center;width:56px;height:56px;transition:transform .18s,box-shadow .18s;display:grid;position:relative;box-shadow:0 0 0 2px #3f9d7c,0 0 22px #72e3b544,0 12px 22px #0008}.course-route-orb span{font-size:1.05rem;font-weight:950}.course-route-orb i{color:#04130d;background:#b5f3d9;border:3px solid #08131c;border-radius:50%;place-items:center;width:22px;height:22px;font-size:.55rem;font-style:normal;display:grid;position:absolute;bottom:-3px;right:-5px}.course-route-orb.is-locked{color:#7d91a2;background:#142431;box-shadow:0 0 0 2px #29404f,0 10px 20px #0006}.course-route-orb.is-locked i{color:#71889a;background:#1b2f3e}.course-route-node.ready:has(button:hover,button:focus-visible) .course-route-launch{border-color:var(--accent);background:linear-gradient(145deg,#18493f,#0e262c);transform:translateY(-2px);box-shadow:0 0 0 1px #72e3b555,0 18px 34px #01050b88}.course-route-node.ready:has(button:hover,button:focus-visible) .course-route-orb{box-shadow:0 0 0 2px var(--accent), 0 0 30px #72e3b588, 0 12px 22px #0008;transform:scale(1.08)}.course-map-shell button:focus-visible{outline-color:var(--accent)}@media (width<=820px){.course-journey-route:before{left:34px}.course-route-node{grid-template-columns:68px minmax(0,1fr);height:auto;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{grid-column:2;justify-content:start;padding-left:16px}}:root{--accent:#72e3b5}.eyebrow,.projection-header>strong{color:var(--accent)}.page-navigator button.current{background:var(--accent);border-color:var(--accent);box-shadow:none}.map-notice{border:1px solid var(--accent);border-radius:var(--radius);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}.le-stage.is-wide{grid-template-columns:minmax(0,1fr)}.le-stage.is-wide>.le-side{display:none}.le-stage.is-question{grid-template-columns:minmax(0,1fr)}.le-stage.is-question>.le-code{display:none}.le-stage.is-question>.le-side{width:100%;max-width:1000px;margin:60px auto 0}.le-stage.is-code-wide{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.le-static-evidence.is-columns{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.le-text>div{margin-top:14px}.le-list ul{gap:6px;margin:10px 0 0;padding-left:26px;display:grid}.le-list li{border:0;padding:0}.le-table table{border-collapse:collapse;width:100%;font-size:inherit;margin-top:14px}.le-table :is(th,td){text-align:left;vertical-align:top;border-bottom:1px solid #466158;padding:12px 10px;font-weight:400}.le-table thead th{color:#a7d9fa;font-weight:700}.le-visual>.le-visual-note{color:#eef5ff;font-size:inherit;margin-top:20px}
