:root{color-scheme:dark;font-family:SFMono-Regular,Roboto Mono,Menlo,Monaco,Consolas,monospace;font-synthesis:none;--black: #000;--paper: #e8eadf;--green: #62ff72;--green-dim: #17491f;--green-faint: rgba(98, 255, 114, .11);--cyan: #53d7e8;--amber: #ffb84d;--red: #ff4f4f;--dim: #7d8980;background:var(--black);color:var(--paper)}.lesson-label-layer{position:absolute;inset:0;z-index:2;pointer-events:none}.lesson-label{position:absolute;top:0;left:0;color:var(--label-color);font:500 13px/1.4 SFMono-Regular,Menlo,monospace;white-space:nowrap;text-shadow:0 2px 5px #000,0 0 12px #000;padding:3px 5px;background:#000000c2}.lesson-label.is-ref{font-size:14px;border-left:2px solid var(--label-color);padding:4px 8px}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;background:var(--black)}body,button,dialog{font-family:inherit}button{color:inherit}[hidden]{display:none!important}.experience{position:relative;width:100vw;height:100dvh;min-height:560px;overflow:hidden;background:#000;isolation:isolate}.world-stage,.world-canvas,.station-label-layer,.hologram-layer{position:absolute;inset:0;width:100%;height:100%}.world-stage{z-index:1;overflow:hidden}.world-canvas{display:block}.world-vignette{position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.54),transparent 18%,transparent 76%,rgba(0,0,0,.78)),radial-gradient(circle at 50% 47%,transparent 42%,rgba(0,0,0,.3) 76%,rgba(0,0,0,.74) 100%)}.noise{position:absolute;z-index:4;inset:0;pointer-events:none;opacity:.026;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.62'/%3E%3C/svg%3E")}.scan-line{position:absolute;z-index:5;top:-1px;right:0;left:0;height:1px;pointer-events:none;background:#62ff722e;animation:scan 9s linear infinite}@keyframes scan{0%{transform:translateY(0);opacity:0}7%{opacity:.75}92%{opacity:.16}to{transform:translateY(100vh);opacity:0}}.topbar{position:absolute;z-index:30;top:0;right:0;left:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:64px;padding:8px clamp(22px,2.8vw,48px);border-bottom:1px solid rgba(98,255,114,.1);background:linear-gradient(180deg,#000000e0,#0000);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.brand,.location{color:#738078}.brand strong{color:var(--green)}.location{color:#b7c0b9;text-align:center}.utility-nav{display:flex;justify-content:flex-end;gap:4px}.utility-nav button,.tour-controls button,.universe-button{min-width:44px;min-height:44px;padding:0 12px;color:#718078;background:transparent;border:0;cursor:pointer;font:inherit;font-size:12px;letter-spacing:.06em}.utility-nav button:hover,.utility-nav button:focus-visible,.tour-controls button:hover,.tour-controls button:focus-visible,.universe-button:hover,.universe-button:focus-visible{color:var(--paper);outline:1px solid var(--green-dim);outline-offset:-1px}.micro-copy{margin:0 0 11px;color:var(--green);font-size:13px;font-weight:700;letter-spacing:.1em;line-height:1.3}.experience[data-state=prologue] .world-stage{animation:world-awaken .9s ease-out both}@keyframes world-awaken{0%{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}.prologue-panel{position:absolute;z-index:12;left:clamp(28px,4.8vw,82px);bottom:clamp(42px,8vh,94px);width:min(410px,35vw);padding:18px 62px 20px 0;background:linear-gradient(90deg,rgba(0,0,0,.94),rgba(0,0,0,.46) 72%,transparent);animation:reveal-panel .9s cubic-bezier(.18,.78,.16,1) both}@keyframes reveal-panel{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.prologue-panel h1{max-width:12ch;margin:0 0 24px;color:var(--paper);font-size:clamp(31px,3.6vw,56px);font-weight:560;letter-spacing:-.055em;line-height:.98;text-wrap:balance}.enter-button,.route-button{min-height:48px;color:var(--green);background:#020603;border:1px solid var(--green);cursor:pointer;font-size:14px;font-weight:760;letter-spacing:.08em}.enter-button{display:inline-flex;gap:34px;align-items:center;padding:0 16px}.enter-button span{font-size:20px;transition:transform .2s ease}.prologue-training-button{display:block;margin-top:14px;min-height:44px;color:#a5beb0;border:1px solid transparent;background:transparent;font-size:14px;cursor:pointer}.prologue-training-button:hover,.prologue-training-button:focus-visible{color:var(--green);border-color:var(--green)}.enter-button:hover span,.enter-button:focus-visible span{transform:translate(5px)}.enter-button:hover,.enter-button:focus-visible,.route-button:hover,.route-button:focus-visible{color:#000;background:var(--green);outline:0}.hub-panel{position:absolute;z-index:15;top:92px;left:clamp(24px,3vw,52px);width:250px;padding:16px 48px 18px 0;background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.42) 72%,transparent);animation:reveal-panel .52s ease-out both}.hub-panel h2{margin:0 0 19px;color:var(--paper);font-size:clamp(24px,2.2vw,34px);font-weight:560;letter-spacing:-.045em;line-height:1}.route-button{display:grid;gap:3px;width:190px;padding:9px 12px;text-align:left}.route-button small{color:currentColor;font-size:11px;font-weight:500;opacity:.62}.route-progress{margin-top:13px;color:#657169;font-size:11px;letter-spacing:.08em}.route-progress span{color:var(--green)}.station-label-layer{z-index:10;pointer-events:none;opacity:0;transition:opacity .28s linear}.station-label-layer.is-visible{opacity:1}.station-label{position:absolute;top:0;left:0;display:grid;grid-template-columns:28px minmax(104px,1fr);gap:9px;align-items:center;min-width:150px;min-height:52px;padding:6px 10px 6px 8px;pointer-events:auto;color:var(--topic-color, var(--green));background:#000000db;border:1px solid color-mix(in srgb,var(--topic-color, var(--green)) 38%,transparent);cursor:pointer;text-align:left;transition:color .16s linear,background .16s linear,border-color .16s linear;will-change:transform}.station-label:after{position:absolute;right:-8px;bottom:-8px;width:14px;height:14px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;content:"";opacity:.45}.station-label:hover,.station-label:focus-visible,.station-label.is-hovered{color:#000;background:var(--topic-color, var(--green));border-color:var(--topic-color, var(--green));outline:0}.station-label.is-recommended{box-shadow:0 0 0 1px var(--topic-color, var(--green)),0 0 32px color-mix(in srgb,var(--topic-color, var(--green)) 28%,transparent);animation:recommended 1.8s ease-in-out infinite}@keyframes recommended{50%{box-shadow:0 0 0 1px var(--topic-color, var(--green)),0 0 54px color-mix(in srgb,var(--topic-color, var(--green)) 44%,transparent)}}.station-label.is-visited .station-index:after{margin-left:4px;content:"✓"}.station-index{color:currentColor;font-size:13px;font-weight:720;opacity:.88}.station-copy{display:grid;gap:0}.station-copy strong{font-size:14px;letter-spacing:.035em;line-height:1.05}.hologram-layer{position:absolute;z-index:21;inset:0;pointer-events:none}.hologram-trigger{position:absolute;z-index:3;display:flex;gap:8px;align-items:center;min-width:68px;min-height:68px;padding:16px;pointer-events:auto;color:var(--hologram-color, var(--green));background:transparent;border:0;cursor:crosshair;font:inherit;transform:translate(-50%,-50%)}.hologram-trigger-core{position:relative;display:block;width:26px;height:26px;border:1px solid currentColor;border-radius:50%;box-shadow:0 0 16px color-mix(in srgb,currentColor 52%,transparent)}.hologram-trigger-core:before,.hologram-trigger-core:after{position:absolute;top:50%;left:50%;content:"";transform:translate(-50%,-50%)}.hologram-trigger-core:before{width:6px;height:6px;background:currentColor;box-shadow:0 0 12px currentColor;transform:translate(-50%,-50%) rotate(45deg)}.hologram-trigger-core:after{width:38px;height:38px;border:1px solid color-mix(in srgb,currentColor 34%,transparent);border-radius:50%;animation:hologram-pulse 2.4s ease-out infinite}@keyframes hologram-pulse{0%{opacity:0;transform:translate(-50%,-50%) scale(.58)}28%{opacity:.72}to{opacity:0;transform:translate(-50%,-50%) scale(1.35)}}.hologram-trigger-copy{color:color-mix(in srgb,var(--hologram-color, var(--green)) 68%,#87918a);font-size:9px;letter-spacing:.13em;opacity:.72;transition:opacity .16s linear,transform .16s ease}.hologram-trigger:hover,.hologram-trigger:focus-visible,.hologram-trigger.is-open{outline:0}.hologram-trigger:hover .hologram-trigger-copy,.hologram-trigger:focus-visible .hologram-trigger-copy,.hologram-trigger.is-open .hologram-trigger-copy{color:var(--paper);opacity:1;transform:translate(3px)}.hologram-trigger.is-open .hologram-trigger-core{color:#000;background:var(--hologram-color, var(--green));box-shadow:0 0 28px color-mix(in srgb,var(--hologram-color, var(--green)) 72%,transparent)}.hologram-beam{position:absolute;z-index:1;height:1px;pointer-events:none;background:linear-gradient(90deg,var(--hologram-color, var(--green)),color-mix(in srgb,var(--hologram-color, var(--green)) 38%,transparent));box-shadow:0 0 10px color-mix(in srgb,var(--hologram-color, var(--green)) 55%,transparent);opacity:0;transform-origin:left center;transition:opacity .14s linear}.hologram-beam.is-open{opacity:.72}.hologram-panel{position:absolute;z-index:2;width:min(470px,40vw);min-width:350px;max-height:calc(100dvh - 176px);padding:17px 19px 15px;overflow:hidden;pointer-events:none;color:var(--paper);background:linear-gradient(180deg,color-mix(in srgb,var(--hologram-color, var(--green)) 8%,transparent),transparent 32%),#000804f0;border:1px solid color-mix(in srgb,var(--hologram-color, var(--green)) 68%,transparent);box-shadow:inset 0 0 32px color-mix(in srgb,var(--hologram-color, var(--green)) 7%,transparent),0 0 34px #000000b8,0 0 18px color-mix(in srgb,var(--hologram-color, var(--green)) 13%,transparent);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));opacity:0;visibility:hidden;transform:translateY(8px) scale(.965);transition:opacity .16s linear,transform .22s cubic-bezier(.2,.78,.18,1),visibility 0s linear .22s}.hologram-panel:before{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(180deg,transparent 0,transparent 4px,color-mix(in srgb,var(--hologram-color, var(--green)) 5%,transparent) 5px);content:"";mix-blend-mode:screen}.hologram-panel:after{position:absolute;top:0;right:18px;width:82px;height:1px;background:var(--hologram-color, var(--green));box-shadow:0 0 12px currentColor;content:""}.hologram-panel.is-open{pointer-events:auto;opacity:1;visibility:visible;transform:translateY(0) scale(1);transition-delay:0s}.hologram-panel>header{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;min-height:44px;padding:0 0 11px;border-bottom:1px solid color-mix(in srgb,var(--hologram-color, var(--green)) 24%,transparent)}.hologram-label{display:block;margin-bottom:5px;color:var(--hologram-color, var(--green));font-size:9px;font-weight:700;letter-spacing:.14em}.hologram-panel h3{max-width:39ch;margin:0;color:var(--paper);font-size:14px;font-weight:540;letter-spacing:-.015em;line-height:1.25;overflow-wrap:anywhere}.hologram-panel[data-kind=history]{width:min(520px,44vw)}.hologram-media{position:relative;z-index:1;height:clamp(158px,24vh,198px);margin:13px 0 0;overflow:hidden;background:#020604;border-left:1px solid var(--hologram-color, var(--cyan))}.hologram-media:after{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,8,4,.46),transparent 42%),linear-gradient(0deg,rgba(0,0,0,.72),transparent 48%);content:""}.hologram-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 4%;filter:grayscale(1) contrast(1.14) brightness(.76);opacity:.9}.hologram-media figcaption{position:absolute;z-index:1;right:10px;bottom:8px;left:10px;font-size:8px;letter-spacing:.11em;text-align:right}.hologram-media a{color:#b7c4bb;text-decoration:none}.hologram-media a:hover,.hologram-media a:focus-visible{color:var(--paper);text-decoration:underline;outline:0}.hologram-close{position:relative;z-index:2;flex:0 0 auto;width:32px;height:32px;margin:-5px -7px 0 12px;color:color-mix(in srgb,var(--hologram-color, var(--green)) 72%,#8b958e);background:transparent;border:0;cursor:pointer;font:inherit;font-size:20px}.hologram-close:hover,.hologram-close:focus-visible{color:#000;background:var(--hologram-color, var(--green));outline:0}.hologram-output{position:relative;z-index:1;display:grid;gap:4px;max-height:min(250px,34vh);margin:13px 0 12px;padding:12px 13px;overflow:auto;color:#cfd7d1;background:#000000ad;border-left:1px solid var(--hologram-color, var(--green));font:inherit;font-size:12px;line-height:1.45;white-space:pre-wrap}.hologram-line{display:block;min-height:1.25em}.tone-muted{color:#69766d}.tone-bright{color:#d9dfda}.tone-good{color:var(--green)}.tone-warn{color:var(--amber)}.tone-danger{color:var(--red)}.tone-cyan{color:var(--cyan)}.hologram-panel[data-kind=file] .hologram-output{background:#0a0000c2;border-left-color:var(--red)}.hologram-panel[data-kind=model] .hologram-output{gap:7px;background:#000809b8}.hologram-panel[data-kind=history] .hologram-output{max-height:min(150px,21vh);margin-top:10px;background:#000809c2;border-left-color:var(--cyan)}.hologram-footer{position:relative;z-index:1;margin:0;color:#7d8981;font-size:11px;line-height:1.45}.universe-button{position:absolute;z-index:24;top:80px;left:clamp(22px,2.8vw,48px);display:grid;width:48px;height:48px;padding:0;place-items:center;color:var(--green);background:#000000b8;border:1px solid var(--green-dim)}.universe-button span{font-size:25px;line-height:1}.topic-hud{position:absolute;z-index:18;left:clamp(24px,3.2vw,56px);bottom:104px;width:min(410px,31vw);padding:14px 52px 15px 0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.46) 76%,transparent)}.integration-label-layer{position:absolute;z-index:7;inset:0;overflow:hidden;pointer-events:none}.integration-label-layer>span{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;text-shadow:0 1px 8px #000,0 0 4px #000}.integration-commit-label{color:var(--integration-color);font-size:16px}.integration-commit-label code{margin-left:7px;color:#a5aaa3;font-size:12px}.integration-ref{display:flex;gap:9px;align-items:center;padding:5px 7px;background:#020503e6;font-size:14px}.integration-ref.is-develop{color:var(--cyan);border-top:1px solid #53d7e87a}.integration-ref.is-feature{color:var(--amber);border-bottom:1px solid #ffb84d8c}.integration-ref b,.integration-ref.is-head{color:var(--green);font-size:11px;font-weight:500}.integration-patch-label{color:var(--green);font-size:11px;letter-spacing:.1em}.integration-compare{position:absolute;z-index:20;top:84px;left:50%;display:flex;gap:6px;align-items:center;transform:translate(-50%)}.integration-compare>span{margin-right:9px;color:#7a887d;font-size:10px;letter-spacing:.09em}.integration-compare button{padding:9px 12px;color:#869189;background:#020503e6;border:1px solid #26352c;font-size:12px;letter-spacing:.08em}.integration-compare button[aria-pressed=true]{color:var(--green);border-color:var(--green)}.topic-path{display:flex;gap:9px;align-items:center;color:#79857d;font-size:12px;letter-spacing:.07em}.topic-path>span:first-child{color:var(--green)}.topic-path strong{overflow:hidden;color:#aeb7b0;font-size:inherit;font-weight:520;text-overflow:ellipsis;white-space:nowrap}.topic-path>span:last-child{margin-left:auto;color:#556159}.topic-context{min-height:1.2em;margin:10px 0 6px;color:#536159;font-size:11px;letter-spacing:.055em;line-height:1.3}#topic-callout{max-width:30ch;margin:0;color:var(--paper);font-size:clamp(18px,1.7vw,24px);font-weight:560;letter-spacing:-.045em;line-height:1.02;text-wrap:balance}#topic-callout:focus{outline:none}.command-readout{position:absolute;z-index:22;bottom:30px;left:clamp(24px,3.2vw,56px);display:flex;gap:10px;align-items:center;max-width:52vw;min-height:44px;color:var(--green);font-size:15px;letter-spacing:.01em}.command-readout code{overflow:hidden;color:#d7ddd8;font:inherit;text-overflow:ellipsis;white-space:nowrap}.command-readout small{display:none;margin-left:7px;padding-left:10px;color:#66746a;border-left:1px solid var(--green-dim);font-size:9px;letter-spacing:.12em}.command-readout.has-inspection{cursor:crosshair}.command-readout.has-inspection small{display:inline}.command-readout.has-inspection:hover code,.command-readout.has-inspection:hover small{color:var(--green)}.tour-controls{position:absolute;z-index:24;right:clamp(22px,2.8vw,48px);bottom:26px;display:flex;gap:5px;align-items:center}.tour-controls button{width:50px;min-width:50px;height:50px;padding:0;color:var(--green);background:#000000c2;border:1px solid var(--green-dim);font-size:23px;line-height:1}.tour-controls button:last-child{border-color:var(--green)}.tour-controls button:disabled{color:#315136;cursor:default}.world-fallback{position:absolute;z-index:18;inset:0;display:grid;place-items:center;padding:80px;color:var(--green);background:#000;font-size:15px;letter-spacing:.06em;text-align:center}.fallback-topic-list{display:grid;gap:5px;width:min(320px,70vw);margin-top:18px}.fallback-topic-list button{min-height:44px;color:var(--green);background:#000;border:1px solid var(--green-dim);cursor:pointer;font-size:13px;text-align:left}.visual-summary,.screen-reader-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{width:min(700px,calc(100vw - 48px));max-height:min(760px,calc(100dvh - 72px));padding:0;color:var(--paper);background:#000;border:1px solid var(--green-dim)}dialog::backdrop{background:#000000db}dialog form{padding:clamp(24px,3vw,44px)}dialog header{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding-bottom:12px;color:var(--green);border-bottom:1px solid var(--green-dim);font-size:18px;letter-spacing:.08em}dialog header button{width:44px;height:44px;color:var(--green);background:transparent;border:0;cursor:pointer;font-size:24px}dialog dl,.source-list{margin:20px 0 0;padding:0;list-style:none}dialog dl div,.source-list li{display:grid;grid-template-columns:minmax(150px,.42fr) 1fr;gap:20px;padding:12px 0;border-bottom:1px solid #142016;font-size:14px;line-height:1.45}dialog dt,.source-list a{color:var(--green)}dialog dd{margin:0;color:var(--dim)}.dialog-note{margin:20px 0 0;color:#667169;font-size:13px;line-height:1.5}.source-list li{grid-template-columns:1fr;gap:3px}.source-list a{text-underline-offset:4px}.source-list small{overflow-wrap:anywhere;color:#69746c}@media(max-width:1100px){.topbar{grid-template-columns:1fr auto}.location{display:none}.topic-hud{width:min(390px,42vw)}.station-label{min-width:136px}}@media(max-width:760px){.experience{min-height:480px}.prologue-panel{width:min(410px,70vw)}.hub-panel{top:76px}.topic-hud{bottom:112px;width:56vw}#topic-callout{font-size:18px}.command-readout{bottom:58px;max-width:calc(100vw - 48px)}.tour-controls{right:18px;bottom:10px}.tour-controls button{width:46px;min-width:46px;height:46px}.station-label{min-width:128px}.hologram-panel{width:min(72vw,430px);min-width:300px}.hologram-panel[data-kind=history]{width:min(82vw,520px)}.hologram-trigger-copy{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.experience[data-reduced-motion=true] *,.experience[data-reduced-motion=true] *:before,.experience[data-reduced-motion=true] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.route-button.training-entry:hover,.route-button.training-entry:focus-visible{background:#102a24;color:var(--cyan)}.training-entry{margin-top:18px;border-color:#244653!important}.training-entry>span{color:var(--cyan)}.topbar{display:flex;justify-content:flex-end}.topbar .brand,.topbar .location{display:none}.experience[data-state=training]{min-height:0}.experience[data-state=training] .station-label-layer,.experience[data-state=training] .hologram-layer,.experience[data-state=training] .lesson-label-layer{display:none}.experience[data-state=training] .world-fallback{padding:20px;font-size:.875rem}.lab-panel{position:absolute;z-index:22;inset:64px 0 0;overflow-y:auto;overscroll-behavior:contain;background:#040908;color:var(--paper);padding:16px clamp(18px,2.7vw,48px);scrollbar-color:#34584c #040908;font-size:1rem;line-height:1.55}.lab-shell{max-width:1800px;margin:auto}.lab-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.lab-heading h1{font-size:clamp(1.5rem,2vw,2rem);font-weight:500;letter-spacing:-.04em;margin:5px 0}.lab-heading p{margin:0;color:#a5b9ad}.lab-kicker{font-size:.75rem;color:var(--cyan)!important;letter-spacing:.06em}.lab-panel button,.lab-panel input,.lab-panel textarea{font-family:inherit}.lab-panel button{font-size:.875rem;line-height:1.5;cursor:pointer;border-radius:3px}.lab-panel button code{display:block;color:var(--cyan);font-size:.8125rem;font-weight:400;margin-top:4px;overflow-wrap:anywhere}.lab-panel h2{font-size:1rem;font-weight:500;margin:0}.lab-panel h3{font-size:.875rem;font-weight:500;overflow-wrap:anywhere}.lab-primary,.lab-secondary{min-height:44px;padding:11px 14px;text-align:left;border:1px solid #355446;background:#0b1710;color:#c7dacf}.lab-primary{border-color:#509260;background:#102d1c;color:#a2ffb2}.lab-panel .lab-text-button{min-height:36px;border:1px solid transparent;padding:6px 2px;background:transparent;color:#a9c8ba;text-align:left}.lab-panel button:hover{border-color:var(--cyan);background:#173428}.lab-panel button:focus-visible,.lab-panel input:focus-visible,.lab-panel textarea:focus-visible,.lab-panel summary:focus-visible,.lab-panel [tabindex="0"]:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.lab-heading h1:focus{outline:none}.lab-explanation{border-left:2px solid var(--cyan);padding:10px 16px;margin:16px 0;background:#0b1511}.lab-explanation strong{font-size:1rem;font-weight:500;color:var(--paper)}.lab-explanation p{max-width:1200px;margin:5px 0 0;color:#b5c6bb;font-size:.9375rem}.lab-explanation[data-tone=warning]{border-color:var(--amber)}.lab-explanation[data-tone=warning] strong{color:var(--amber)}.lab-explanation[data-tone=success]{border-color:var(--green)}.lab-layout{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,2.4fr) minmax(260px,1fr);gap:20px;align-items:start}.lab-files,.lab-editor-column,.lab-repository{min-width:0}.lab-editor-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}.lab-files header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin:0 0 12px}#lab-file-list{display:grid;gap:5px;max-height:245px;overflow-y:auto}#lab-file-list>button{width:100%;text-align:left;border:1px solid transparent;background:transparent;padding:10px}#lab-file-list strong{display:block;font-size:.875rem;font-weight:500;overflow-wrap:anywhere}#lab-file-list small{display:block;margin-top:6px;font-size:.8125rem;color:#9fb4a7}#lab-file-list>button[aria-pressed=true]{border-color:#48795a;background:#102319}#lab-file-list>button[data-staged=true] small{color:var(--cyan)}.lab-caption{font-size:.8125rem;color:#a6bcaf;margin:12px 0;line-height:1.6}.lab-new-file{border:1px solid #345446;padding:12px;margin-bottom:12px}.lab-new-file>div{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.lab-panel label{display:block;font-size:.875rem;margin-bottom:8px}.lab-panel input{min-height:42px;width:100%;min-width:0;padding:10px;border:1px solid #42614f;border-radius:2px;background:#010604;color:var(--paper);font-size:.875rem}.lab-panel input::placeholder{color:#899f90}.lab-editor,.lab-changes,.lab-staging,.lab-preview,.lab-history{border:1px solid #294237;border-radius:4px;background:#050c08;overflow:hidden}.lab-editor>header,.lab-changes>header,.lab-staging>header,.lab-preview>header,.lab-history>header{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.lab-editor>header{padding:12px 16px;border-bottom:1px solid #243b2d}.lab-editor>header h2{overflow-wrap:anywhere}.lab-editor>header p{font-size:.8125rem;color:var(--cyan);margin:5px 0 0}.lab-editor>.lab-editor-label{margin:12px 16px 10px;color:#b5ccbf}.lab-editor textarea{display:block;width:100%;min-height:165px;max-height:65vh;resize:vertical;padding:12px 16px;border:0;border-block:1px solid #182c20;outline-offset:-3px!important;border-radius:0;background:#010503;color:#ddede2;font-size:.9375rem;line-height:1.8;tab-size:2;white-space:pre-wrap;overflow-wrap:anywhere}.lab-editor>.lab-caption{padding:0 16px}.lab-file-actions{display:grid;gap:10px;padding:6px 16px 16px}.lab-file-actions>button{flex:1}.lab-changes{margin-top:0;padding:14px 16px}.lab-changes>header{flex-wrap:wrap}.lab-diff-legend{display:flex;gap:14px;font-size:.75rem}.lab-diff-legend>span:first-child{color:#ffaca4}.lab-diff-legend>span:last-child{color:#92e4aa}.lab-diff-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;border-bottom:1px solid #345042}.lab-diff-tabs button{flex:1;padding:10px 12px;border:1px solid transparent;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#b9cfc0;text-align:left}.lab-diff-tabs button[aria-pressed=true]{border-bottom-color:var(--cyan);background:#0f2420;color:var(--cyan)}#lab-diff-explanation{font-size:.875rem;color:#b1c4b7;margin:14px 0}.lab-diff{max-height:250px;overflow:auto;background:#010402;border:1px solid #243d2d;font-size:.875rem;line-height:1.65}.lab-diff-line{display:flex;align-items:flex-start;min-width:0}.lab-diff-line code{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;padding:2px 8px 2px 0;min-width:0}.lab-line-number{width:38px;flex-shrink:0;font-size:.75rem;text-align:right;padding:3px 8px 3px 4px;color:#89a793;-webkit-user-select:none;user-select:none}.lab-line-mark{width:20px;flex-shrink:0;padding-top:2px}.lab-diff-line.is-added{background:#10301c;color:#b2f8c7}.lab-diff-line.is-removed{background:#321916;color:#ffbcb5}.lab-diff-line.is-context{color:#98b2a1}.lab-diff-line.is-gap{color:#86a693;background:#0d1912}.lab-panel summary{cursor:pointer;padding:12px 0;color:#b0c8bb;font-size:.875rem}.lab-panel pre{padding:14px;margin:0;border:1px solid #263e30;font:.875rem/1.65 SFMono-Regular,Menlo,monospace;background:#010503;color:#b8d0c0;white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow-y:auto}.lab-last-version{margin-top:12px;border-top:1px solid #203b29}.lab-repository{display:grid;gap:20px}.lab-staging{padding:18px;border-color:#3d6650}.lab-staging header>span,.lab-history header>span{color:var(--green)}.lab-staging ul{list-style:none;padding:0;margin:10px 0}.lab-staging li{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:11px 0;border-top:1px solid #263f30}.lab-staging li>div{min-width:0}.lab-staging li strong{font-size:.875rem;overflow-wrap:anywhere;font-weight:500}.lab-staging li small{display:block;margin-top:6px;font-size:.8125rem;color:#a7c6b2}.lab-staging li>button{flex-shrink:0}#lab-staged-empty{color:#a9bdb0;font-size:.875rem;margin:16px 0}.lab-staging>.lab-text-button{display:block;margin:12px 0 18px}.lab-staging>label{padding-top:14px;border-top:1px solid #304e3b}.lab-commit-button{margin-top:12px;width:100%}.lab-preview>header{padding:10px 14px;border-bottom:1px solid #294237}.lab-preview>header h2{font-size:.875rem}.lab-world-slot{position:relative;aspect-ratio:16 / 9;isolation:isolate}.lab-preview-legend{display:flex;justify-content:space-around;gap:4px;margin:0;padding:6px;font-size:.75rem}.lab-preview-legend span:nth-child(2){color:var(--cyan)}.lab-preview-legend span:nth-child(3){color:var(--green)}.lab-preview>.lab-caption{padding:0 14px}.lab-history{padding:16px}#lab-history-list{max-height:380px;overflow:auto}#lab-history-list details{border-top:1px solid #294237}#lab-history-list summary{overflow-wrap:anywhere;color:#b6edc5}#lab-history-list p{font-size:.8125rem;color:#b2cbb9}.lab-history-base{font-size:.8125rem;color:#8fa99a;margin-bottom:0}.lab-terminal{margin-top:0;grid-column:1 / -1}.lab-ideas{border-top:1px solid #294237;margin-top:20px}.lab-ideas p,.lab-ideas li{font-size:.875rem;color:#afc4b6}.lab-ideas ul{padding-left:20px}.lab-ideas li{padding-bottom:14px}.lab-ideas li[data-discovered=true]{color:#a2e8b4}.lab-ideas li[data-discovered=true]:after{content:" · Já experimentado ✓"}.lab-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:20px;margin-top:30px;padding-top:14px;border-top:1px solid #233b2a;font-size:.8125rem;color:#98b2a1}.lab-footer details{max-width:470px}@media(max-width:1150px){.lab-layout{grid-template-columns:minmax(0,1fr) 280px;gap:18px}.lab-files{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:0 18px}.lab-files>header,#lab-file-list,.lab-files>.lab-caption,.lab-new-file,.lab-ideas{grid-column:1}.lab-files>.lab-preview{grid-column:2;grid-row:1 / 6}#lab-file-list{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.lab-files>.lab-caption{margin:6px 0}.lab-ideas{margin-top:6px}.lab-editor-column{grid-column:1;display:block}.lab-changes{margin-top:18px}.lab-repository{grid-column:2}}@media(max-width:760px){.lab-heading{flex-wrap:wrap;gap:14px}.lab-layout{display:flex;flex-direction:column}.lab-files,.lab-editor-column,.lab-repository{width:100%}.lab-files{display:block}.lab-files>.lab-preview{display:none}.lab-preview{max-width:360px}.lab-repository{grid-template-columns:1fr}.lab-changes,.lab-editor>header{padding:14px}.lab-editor textarea{min-height:220px}.lab-diff-tabs{flex-wrap:wrap}.lab-diff-tabs button{min-width:150px}}.experience[data-state=lab]{min-height:0}.experience[data-state=lab]>.station-label-layer,.experience[data-state=lab]>.hologram-layer{display:none}.concept-panel{position:absolute;z-index:22;inset:64px 0 0;padding:12px clamp(22px,4vw,72px) 32px;background:#030806;overflow-y:auto;overscroll-behavior:contain;scroll-padding-top:70px;scrollbar-color:#34584c #030806;color:#e1e9e3;font-size:1rem;line-height:1.6}.concept-shell{max-width:1440px;margin:auto}.concept-panel button{font:inherit;cursor:pointer}.concept-panel button:focus-visible,.concept-panel input:focus-visible,.concept-panel summary:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.concept-panel h1:focus{outline:none}.concept-panel h1,.concept-panel h2,.concept-panel p{margin:0}.concept-header{position:sticky;top:-12px;z-index:3;background:#030806;display:flex;align-items:center;gap:26px;min-height:40px;border-bottom:1px solid #26342c;padding-bottom:12px}.concept-eyebrow{font-size:.75rem;color:#a4b9ad;letter-spacing:.1em}.concept-back,.concept-exit{border:0;color:#cadcd1;background:none;min-height:42px;padding:5px 8px}.concept-back{font-size:.875rem!important}.concept-back>span{margin-right:8px}.concept-exit{margin-left:auto;min-width:42px;font-size:1.6rem!important}.concept-back:hover,.concept-exit:hover{background:#10261a;color:var(--green)}.concept-catalog{padding-top:clamp(24px,3vh,42px)}.concept-catalog h1{font-size:clamp(1.45rem,2.8vw,2.6rem);letter-spacing:-.055em;font-weight:500;line-height:1.3}.concept-catalog>p{margin-top:12px;color:#a6b9ad}.concept-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:30px;border-top:1px solid #2b3b31;border-left:1px solid #2b3b31}.concept-card{position:relative;display:flex;flex-direction:column;gap:12px;min-height:192px;padding:21px 22px;border:0;border-right:1px solid #2b3b31;border-bottom:1px solid #2b3b31;text-align:left;background:transparent;transition:background .18s}.concept-card svg{width:88px;height:48px;color:#81c898}.concept-card-copy{display:grid;gap:5px}.concept-card-copy strong{color:#e8f1e9;font-size:1.2rem;font-weight:500}.concept-card-copy>span{font-size:.875rem;color:#aabfb0;max-width:240px;line-height:1.6}.concept-card-arrow{position:absolute;top:21px;right:20px;color:#638874}.concept-card:hover{background:#102218}.concept-card:hover svg,.concept-card:hover .concept-card-arrow{color:var(--green)}.concept-card[data-explored=true] .concept-card-copy strong:after{content:" ·";color:var(--green)}.concept-catalog-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;margin-top:26px;font-size:.875rem;color:#b4c6b9}.concept-catalog-footer>span{font-size:.75rem;color:#81988b}.concept-catalog-footer button{color:#b2e7c3;background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:4px}.concept-title-row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:12px 0 16px}.concept-title-row h1{font-size:clamp(1.5rem,2.2vw,2rem);font-weight:500;letter-spacing:-.05em}.concept-title-row p{color:#a6b9ad;font-size:.9375rem}.concept-modes{display:flex;border-bottom:1px solid #2e4738}.concept-modes button{padding:10px 16px;min-height:44px;font-size:.875rem;border:0;border-bottom:2px solid transparent;background:transparent;color:#9eb4a6;white-space:nowrap}.concept-modes button[aria-pressed=true]{border-bottom-color:var(--green);color:#aeefbd;background:#0c1b12}.concept-workspace{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.4fr);gap:clamp(24px,2.3vw,40px);align-items:start}.concept-teaching{min-width:0}.concept-scenario h2,.concept-decisions h2{color:#c8dace;font-weight:500;font-size:.875rem;margin-bottom:8px}.concept-scenario>p{font-size:1rem;line-height:1.8;color:#c2d0c6}.concept-goal{margin-top:20px;padding:17px 20px;border-left:2px solid #d8b66e;background:#181810}.concept-goal .concept-eyebrow{color:#e3c687}.concept-goal h2{margin-top:6px;font-size:1rem;font-weight:500;line-height:1.8}.concept-panel details>p{color:#b6cabb;font-size:.9375rem;padding:6px 0 10px}.concept-panel summary{cursor:pointer;color:#a8c5b4;font-size:.875rem;padding:8px 0}.concept-goal details{margin-top:7px}.concept-decisions{margin-top:24px}#concept-actions{display:grid;gap:8px}.concept-action{position:relative;padding:13px 46px 13px 16px;min-height:72px;border:1px solid #30473a;border-radius:3px;background:#08120c;text-align:left}.concept-action strong{display:block;font-size:.9375rem;color:#d2e4d8;font-weight:500}.concept-action code{display:block;margin-top:5px;font-family:inherit;font-size:.8125rem;color:#90b8a0;overflow-wrap:anywhere}.concept-action-arrow{position:absolute;top:20px;right:16px;color:#86c59d}.concept-panel[data-mode=explore] .concept-action[data-primary=true]{border-color:#568165;background:#11261a}.concept-action[aria-pressed=true],.concept-action:hover{border-color:#7dc79a!important;background:#142d1e!important}.concept-action[data-result=retry]{border-color:#d8b66e!important}.concept-reset-note{margin-top:10px!important;font-size:.8125rem;color:#96ac9f}.concept-feedback{padding:15px 18px;border-left:2px solid #63c3c8;background:#0b201d}.concept-feedback strong{font-size:1rem;font-weight:500;color:#b0e4d5}.concept-feedback p{margin-top:6px;font-size:.9375rem;color:#bacec0}.concept-feedback[data-tone=retry]{border-color:#e5bd75;background:#211c0e}.concept-feedback[data-tone=retry] strong{color:#efce91}.concept-feedback[data-tone=success]{border-color:var(--green)}.concept-extras{margin-top:20px}.concept-editor-link{border:1px solid #294739;border-radius:3px;background:none;padding:12px 16px;text-align:left;width:100%;color:#badac9;font-size:.875rem!important}.concept-editor-link small{display:block;margin-top:3px;font-size:.8125rem;color:#96b39f}.concept-editor-link:hover{border-color:var(--cyan)}.concept-takeaway{border-top:1px solid #293c30;margin-top:16px}.concept-visual{min-width:0;border:1px solid #2b4234;border-radius:4px;overflow:hidden;background:#020504}.concept-view-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.75rem;color:#acc2b4;border-bottom:1px solid #203729;padding:11px 16px}#concept-frame-status{color:#7ecb9e}.concept-locations{display:flex;justify-content:space-around;gap:12px;padding:8px 12px 0;font-size:.75rem;color:#acd2bb}.concept-locations span:last-child:not(:first-child){color:#8ecbd1}.concept-world-slot{position:relative;width:100%;height:min(clamp(340px,48dvh,560px),40vw);isolation:isolate}.concept-world-slot .world-stage{position:absolute;inset:0}.concept-world-slot .lesson-label{font-size:14px}.concept-world-slot .lesson-label.is-ref{font-size:14px;padding:2px 4px;border:0}.concept-world-slot .lesson-label[data-actor$=-bay],.concept-world-slot .lesson-label[data-actor=computer],.concept-world-slot .lesson-label[data-actor=server],.concept-world-slot .lesson-label[data-actor=act],.concept-world-slot .lesson-label[data-actor=working-file],.concept-world-slot .lesson-label[data-actor=local-head]{display:none}.concept-world-slot .integration-commit-label{font-size:15px}.concept-world-slot .integration-commit-label code{display:none}.concept-world-slot .integration-ref,.concept-world-slot .integration-patch-label{font-size:14px}.concept-world-slot .world-fallback{font-size:.875rem;padding:24px}.concept-legend{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px 10px;padding:0 16px 10px;font-size:.75rem;color:#9bb6a5}.concept-legend i{display:inline-block;width:6px;height:6px;border-radius:50%;border:1px solid #9ee9b7;margin-right:5px;vertical-align:1px}.concept-playback{display:flex;align-items:center;gap:10px;padding:0 10px;border-block:1px solid #203729}.concept-playback button{width:42px;height:42px;flex-shrink:0;border:0;background:none;color:#b5d9c3;font-size:1.35rem}.concept-playback button:hover{color:var(--green);background:#10251a}.concept-playback button:disabled{opacity:.3;cursor:default}.concept-playback input{min-width:0;width:100%;accent-color:#7fcea0;height:38px;cursor:pointer}.concept-playback input:disabled{opacity:.4;cursor:default}.concept-beat{padding:16px 18px 12px}.concept-beat strong{font-size:.9375rem;font-weight:500;color:#d6eddd}.concept-beat p{color:#a9c0b1;font-size:.875rem;margin-top:5px;line-height:1.8}#concept-steps{display:flex;flex-wrap:wrap;gap:5px 14px;padding:0 18px 12px}#concept-steps button{font-size:.75rem;border:0;padding:5px 0;background:none;color:#8ba996;text-align:left}#concept-steps button[aria-current=true]{color:#a8e7bf;text-decoration:underline;text-underline-offset:4px}.concept-facts{margin:0;padding:12px 18px;border-top:1px solid #263b2e;background:#07100a}.concept-facts:before{content:"ANTES DA AÇÃO";display:block;color:#87a893;font-size:.75rem;margin-bottom:8px}.concept-facts[data-state=after]:before{content:"DEPOIS DA AÇÃO";color:#a4e7bc}.concept-facts>div{display:flex;justify-content:space-between;gap:14px;font-size:.8125rem;padding:4px 0}.concept-facts dt{color:#9eb5a6}.concept-facts dd{margin:0;color:#c7e8d2;text-align:right}.concept-related{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 22px;margin-top:30px;padding-top:20px;border-top:1px solid #23352a;font-size:.8125rem;color:#8fa697}.concept-related>div{display:flex;flex-wrap:wrap;gap:16px}.concept-related button{color:#b2d7bf;border:0;background:none;padding:5px 0;font-size:.875rem}.concept-related button:hover{color:var(--green)}.concept-related small{font-size:.75rem;margin-left:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:1000px){.concept-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-card{flex-direction:row;align-items:center;min-height:135px;gap:18px;padding:20px}.concept-card svg{width:65px;flex-shrink:0}.concept-card-copy strong{font-size:1.1rem}.concept-card-arrow{top:10px;right:11px}.concept-title-row{flex-wrap:wrap;gap:12px}.concept-workspace{display:flex;flex-direction:column;gap:24px}.concept-teaching,.concept-visual{width:100%}.concept-world-slot{height:clamp(280px,48dvh,460px)}}@media(max-width:740px){.concept-panel{padding:12px 18px 24px}.concept-header{gap:12px}.concept-header .concept-eyebrow{font-size:.75rem}.concept-grid{margin-top:22px}.concept-card{flex-direction:column;align-items:flex-start;padding:18px 15px;gap:8px}.concept-card svg{height:38px}.concept-catalog-footer{gap:14px}.concept-title-row p{font-size:.875rem}.concept-modes{width:100%}.concept-modes button{flex:1}.concept-world-slot{height:auto;aspect-ratio:4 / 3}.concept-facts>div{flex-direction:row;gap:12px}.concept-facts dd{text-align:right}.concept-related small{margin-left:0}}@media(prefers-reduced-motion:reduce){.concept-card{transition:none}}
