:root{
 --lab-bg:#071426;--lab-bg2:#0a1c35;--lab-panel:#0d2748;--lab-panel2:#091d36;--lab-text:#f4f8fb;--lab-muted:#a8bdd0;
 --neon:#00E5FF;--violet:#8C7BFF;--gold:#FFEA00;--correct:#00C853;--error:#FF1744;--given:#FFFFFF;--orange:#FF9100;
 --lab-head:"Bahnschrift SemiCondensed","Bahnschrift","Arial Narrow","Trebuchet MS",system-ui,sans-serif;
 --lab-body:Inter,"Segoe UI",Arial,sans-serif;
}
body{background:#06111f;color:var(--lab-text)}
.lab-page{position:relative;overflow:hidden;background:
 radial-gradient(55% 28% at 50% 0%,rgba(0,229,255,.16),transparent 70%),
 radial-gradient(38% 25% at 10% 25%,rgba(140,123,255,.12),transparent 72%),
 radial-gradient(35% 24% at 90% 58%,rgba(0,229,255,.09),transparent 72%),
 linear-gradient(180deg,#091a31 0%,#071426 52%,#06111f 100%)}
.lab-page::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:
 linear-gradient(rgba(0,229,255,.035) 1px,transparent 1px),
 linear-gradient(90deg,rgba(0,229,255,.035) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 68%);opacity:.55}
.lab-container{width:min(1160px,calc(100% - 36px));margin-inline:auto;position:relative;z-index:2}
.lab-hero{position:relative;padding:68px 0 44px;min-height:520px;display:flex;align-items:center}
.lab-grid-glow{position:absolute;left:50%;bottom:0;transform:translateX(-50%) perspective(600px) rotateX(63deg);width:110%;height:48%;background-image:linear-gradient(rgba(0,229,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(0,229,255,.14) 1px,transparent 1px);background-size:56px 56px;transform-origin:bottom;mask-image:linear-gradient(to top,#000,transparent);opacity:.42}
.hero-stage{display:grid;grid-template-columns:.75fr 1.5fr .75fr;align-items:end;gap:12px;text-align:center}
.hero-copy{padding:28px 10px 42px}
.lab-eyebrow{display:inline-block;font:800 12px/1 var(--lab-head);letter-spacing:.17em;text-transform:uppercase;color:var(--neon);margin-bottom:14px}
.hero-copy h1,.lab-section-head h2,.sidequest-card h3,.vault-card h3,.station-card h3,.how-grid h3,.archive-card h3,.console-prompt h3{font-family:var(--lab-head);font-stretch:condensed}
.hero-copy h1{font-weight:800;font-size:clamp(48px,6.6vw,82px);line-height:.91;letter-spacing:.01em;text-transform:uppercase;margin:0;color:#fff;text-shadow:0 2px 0 #1b3a61,0 6px 0 #071426,0 12px 24px rgba(0,0,0,.42)}
.hero-copy h1 span{display:block;color:var(--neon);text-shadow:0 2px 0 #0b5c73,0 6px 0 #063042,0 0 24px rgba(0,229,255,.32)}
.lab-lead{max-width:700px;margin:22px auto 0;color:var(--lab-muted);font:500 17px/1.65 var(--lab-body)}
.lab-pills{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:24px}.lab-pill,.lab-status{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.11);font:750 12px/1 var(--lab-body);color:#dce9f2}
.hero-mascot{position:relative;min-height:315px;display:flex;align-items:flex-end;justify-content:center}
.mascot-platform{position:relative;width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center}
.mascot-platform::before{content:"";position:absolute;bottom:4px;width:88%;height:34px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,229,255,.36),rgba(0,229,255,.08) 52%,transparent 72%);filter:blur(2px)}
.mascot-platform::after{content:"";position:absolute;bottom:-3px;width:84%;height:24px;border-radius:50%;border:1px solid rgba(0,229,255,.55);box-shadow:0 0 22px rgba(0,229,255,.22),inset 0 0 16px rgba(0,229,255,.12)}
.hero-mascot img{position:relative;z-index:2;max-height:330px;max-width:100%;filter:drop-shadow(0 22px 25px rgba(0,0,0,.45))}
.hero-bandit img{max-height:295px}.hero-sunny img{max-height:340px}

.lab-section{position:relative;padding:56px 0}.lab-section+.lab-section{padding-top:48px}
.lab-section-head{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:24px}.lab-section-head h2{font-weight:800;font-size:clamp(30px,4vw,46px);line-height:1;text-transform:uppercase;letter-spacing:.01em;margin:0 0 8px;text-shadow:0 3px 0 rgba(0,0,0,.34)}.lab-section-head p{margin:0;max-width:720px;color:var(--lab-muted);line-height:1.6}

.challenge-console-wrap{position:relative;padding:28px 90px 34px}
.challenge-console{position:relative;border-radius:26px;background:linear-gradient(180deg,#153859 0%,#091d35 9%,#071a30 100%);border:1px solid rgba(0,229,255,.42);box-shadow:0 3px 0 #1b5f7e,0 10px 0 #06101e,0 28px 64px rgba(0,0,0,.44),0 0 42px rgba(0,229,255,.08);overflow:hidden}
.challenge-console::before{content:"";position:absolute;inset:8px;border-radius:20px;border:1px solid rgba(255,255,255,.06);pointer-events:none}
.console-topbar{height:46px;display:flex;align-items:center;gap:10px;padding:0 18px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.015));border-bottom:1px solid rgba(0,229,255,.16);font:800 11px/1 var(--lab-head);letter-spacing:.15em;color:#bed4e4}.console-light{width:9px;height:9px;border-radius:50%;background:var(--neon);box-shadow:0 0 12px var(--neon)}.console-level{margin-left:auto;color:#ffd5de}
.console-screen{margin:22px 22px 0;padding:34px clamp(24px,4vw,46px);border-radius:18px;background:radial-gradient(90% 100% at 50% 0%,rgba(0,229,255,.10),transparent 72%),linear-gradient(180deg,#07111f,#050c16);border:1px solid rgba(0,229,255,.30);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),inset 0 0 50px rgba(0,0,0,.42),0 0 25px rgba(0,229,255,.08);text-align:center}
.bandit-wrote{font:800 12px/1 var(--lab-head);letter-spacing:.18em;text-transform:uppercase;color:#b9d5e4;margin-bottom:16px}.error-line{font:800 clamp(42px,7vw,78px)/1.12 var(--lab-head);color:#fff;letter-spacing:.015em}.error-line .v{color:var(--neon)}.error-line .bad{color:var(--error);position:relative}.error-line .bad::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:4px;background:var(--error);box-shadow:0 0 10px rgba(255,23,68,.5)}.arrow{color:#7d98aa;margin:0 .12em}.error-mark{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:22px;color:#ff9bad;font-weight:800}.error-mark .x{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--error);color:var(--error);box-shadow:0 0 15px rgba(255,23,68,.28)}
.console-controls{padding:22px;display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;align-items:start}.console-prompt{padding:12px 10px}.console-prompt h3{font-size:29px;text-transform:uppercase;margin:0 0 8px}.console-prompt p{margin:0;color:var(--lab-muted);line-height:1.55}.choice-list{display:grid;gap:9px}.challenge-choice,.quest-option{appearance:none;width:100%;text-align:left;display:flex;gap:12px;align-items:center;padding:13px 15px;border-radius:12px;border:1px solid rgba(255,255,255,.13);background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025));color:#fff;font-weight:750;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.challenge-choice span,.quest-option span{flex:0 0 29px;width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:#0a2945;border:1px solid rgba(0,229,255,.30);font:800 12px/1 var(--lab-head);color:var(--neon)}.challenge-choice:hover,.quest-option:hover{transform:translateY(-2px);border-color:rgba(0,229,255,.7);box-shadow:0 0 0 1px rgba(0,229,255,.12),0 0 24px rgba(0,229,255,.22)}.challenge-choice:focus-visible,.quest-option:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.challenge-choice.is-correct,.quest-option.is-correct{border-color:rgba(0,200,83,.8);background:rgba(0,200,83,.10)}
.lab-feedback{grid-column:2;min-height:46px;margin-top:2px;padding:12px 14px;border-radius:12px;background:rgba(0,0,0,.22);color:#dce7ee;line-height:1.5;font-size:14px;border:1px solid rgba(255,255,255,.07)}.lab-feedback.correct{color:#c8f6d7;border-color:rgba(0,200,83,.35)}
.console-mascot{position:absolute;z-index:3;bottom:-8px;pointer-events:none;filter:drop-shadow(0 18px 22px rgba(0,0,0,.38))}.console-mascot img{max-height:230px}.console-bandit{left:-5px}.console-sunny{right:-1px}.console-sunny img{max-height:240px}

.station-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.station-card{position:relative;min-height:290px;padding:28px 24px 24px;border-radius:22px;background:linear-gradient(160deg,#123452,#081d36 62%,#071629);border:1px solid rgba(255,255,255,.12);box-shadow:0 4px 0 #0b2744,0 10px 0 #04101d,0 26px 48px -32px #000;overflow:hidden;display:flex;flex-direction:column;transition:transform .16s ease,box-shadow .16s ease}.station-card:hover{transform:translateY(-5px);box-shadow:0 4px 0 #0b2744,0 10px 0 #04101d,0 30px 55px -30px #000,0 0 30px color-mix(in srgb,var(--station) 25%,transparent)}.station-card::before{content:"";position:absolute;left:18px;right:18px;top:0;height:3px;border-radius:999px;background:linear-gradient(90deg,transparent,var(--station),transparent);box-shadow:0 0 18px var(--station)}.station-cyan{--station:#00E5FF}.station-violet{--station:#8C7BFF}.station-gold{--station:#FFEA00}.station-number{position:absolute;right:18px;top:16px;font:800 12px/1 var(--lab-head);color:#6e8aa0}.station-icon{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;margin-bottom:18px;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.18),transparent 45%),color-mix(in srgb,var(--station) 17%,#09192b);border:1px solid color-mix(in srgb,var(--station) 55%,transparent);color:var(--station);font-size:30px;box-shadow:0 8px 0 rgba(3,13,24,.85),0 0 24px color-mix(in srgb,var(--station) 22%,transparent)}.challenge-tag{font:800 11px/1 var(--lab-head);letter-spacing:.14em;text-transform:uppercase;color:var(--station,var(--neon))}.station-card h3{font-size:25px;text-transform:uppercase;margin:10px 0 9px}.station-card p{color:var(--lab-muted);line-height:1.55;font-size:14.5px}.station-card .lab-btn{margin-top:auto;align-self:flex-start}
.lab-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:12px 17px;border-radius:12px;border:1px solid rgba(0,229,255,.30);background:linear-gradient(180deg,rgba(0,229,255,.17),rgba(0,172,198,.08));color:white;font-weight:800;font-size:14px;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.lab-btn:hover{color:white;transform:translateY(-2px);border-color:rgba(0,229,255,.82);box-shadow:0 0 0 1px rgba(0,229,255,.16),0 0 26px rgba(0,229,255,.28)}.lab-btn.secondary{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.14)}.lab-btn.secondary:hover{border-color:rgba(0,229,255,.7);box-shadow:0 0 22px rgba(0,229,255,.20)}

.lab-duo-stage{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-inline:85px}.sidequest-card,.vault-card,.archive-card{position:relative;padding:clamp(25px,3vw,36px);border-radius:22px;background:linear-gradient(155deg,rgba(15,47,78,.96),rgba(6,21,39,.97));border:1px solid rgba(255,255,255,.13);box-shadow:0 4px 0 #0d2d4b,0 10px 0 #04101d,0 28px 50px -36px #000}.sidequest-card h3,.vault-card h3{font-size:34px;text-transform:uppercase;margin:7px 0 10px}.sidequest-card p,.vault-card p{color:var(--lab-muted);line-height:1.6}.quest-problem{margin:20px 0 14px;padding:18px;border-radius:15px;background:#061425;border:1px solid rgba(0,229,255,.18);font:800 23px/1.35 var(--lab-head);color:#fff;box-shadow:inset 0 0 28px rgba(0,0,0,.35)}.quest-options{display:grid;gap:9px}.sidequest-card .lab-feedback{grid-column:auto;margin-top:12px}
.vault-card{overflow:hidden;background:radial-gradient(90% 110% at 70% 0%,rgba(255,234,0,.07),transparent 60%),linear-gradient(155deg,#112b49,#061426);border-color:rgba(255,234,0,.21)}.vault-ring{width:160px;height:160px;margin:20px auto;border-radius:50%;border:8px solid rgba(184,208,222,.20);box-shadow:inset 0 0 0 4px rgba(0,229,255,.12),0 5px 0 #0a1a2d,0 13px 0 #03101d,0 20px 42px rgba(0,0,0,.34);display:grid;place-items:center;position:relative}.vault-ring::before,.vault-ring::after{content:"";position:absolute;background:rgba(217,231,238,.27)}.vault-ring::before{width:74%;height:6px}.vault-ring::after{height:74%;width:6px}.vault-lock{position:relative;z-index:1;width:58px;height:52px;border-radius:9px;background:#0c2a46;border:2px solid rgba(0,229,255,.48);display:grid;place-items:center;color:#e0fbff;font-size:25px;box-shadow:0 0 22px rgba(0,229,255,.18)}.vault-meta{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:14px}.vault-chip{padding:8px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.11);color:#cad8e3;font-size:12px;font-weight:750;background:rgba(255,255,255,.035)}.vault-chip.friday{border-color:rgba(255,234,0,.32);color:#fff4a6;background:rgba(255,234,0,.05)}
.duo-character{position:absolute;z-index:4;bottom:-5px;pointer-events:none;filter:drop-shadow(0 18px 22px rgba(0,0,0,.42))}.duo-character img{max-height:210px}.duo-left{left:-10px}.duo-right{right:-5px}.duo-right img{max-height:220px}

.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.archive-card{min-height:205px;overflow:hidden}.archive-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent,var(--topic),transparent);box-shadow:0 0 16px color-mix(in srgb,var(--topic) 38%,transparent)}.archive-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#c8d7e1;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.archive-card h3{font-size:24px;text-transform:uppercase;margin:15px 0 8px}.archive-card p{color:var(--lab-muted);font-size:14px;line-height:1.55}.archive-card .lab-btn{margin-top:18px}.archive-card.locked{opacity:.64}.lab-note{padding:18px 20px;border-radius:17px;background:rgba(0,229,255,.055);border:1px solid rgba(0,229,255,.14);color:#c7d8e5;line-height:1.6}.lab-note strong{color:#fff}
.how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.how-grid article{padding:22px;border-radius:18px;background:rgba(8,29,52,.72);border:1px solid rgba(255,255,255,.10)}.how-grid b{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#0c304f;border:1px solid rgba(0,229,255,.30);color:var(--neon);font:800 16px/1 var(--lab-head);box-shadow:0 5px 0 #04111f}.how-grid h3{font-size:21px;text-transform:uppercase;margin:13px 0 7px}.how-grid p{color:var(--lab-muted);line-height:1.55;font-size:14px;margin:0}
.lab-footer{margin-top:26px;padding:38px 0 30px;border-top:1px solid rgba(255,255,255,.10);background:rgba(3,12,24,.32)}.lab-footer-row{display:flex;justify-content:space-between;gap:24px;align-items:center;flex-wrap:wrap;color:#93a9ba;font-size:13px}.lab-footer a{color:#c7d8e5}

@media(max-width:980px){.hero-stage{grid-template-columns:.6fr 1.6fr .6fr}.challenge-console-wrap{padding-inline:48px}.console-mascot img{max-height:190px}.lab-duo-stage{padding-inline:50px}.duo-character img{max-height:175px}}
@media(max-width:820px){.hero-stage{grid-template-columns:1fr}.hero-mascot{position:absolute;bottom:0;min-height:auto}.hero-bandit{left:0}.hero-sunny{right:0}.hero-mascot img{max-height:220px}.hero-copy{padding:30px 130px 70px}.challenge-console-wrap{padding-inline:0}.console-mascot{display:none}.console-controls{grid-template-columns:1fr}.lab-feedback{grid-column:auto}.station-grid,.archive-grid,.how-grid{grid-template-columns:1fr 1fr}.lab-duo-stage{grid-template-columns:1fr;padding-inline:60px}.duo-character{display:none}.lab-section-head{align-items:flex-start;flex-direction:column}.lab-status{white-space:normal}}
@media(max-width:620px){.lab-hero{min-height:470px;padding-top:48px}.hero-copy{padding:28px 0 55px}.hero-mascot{display:none}.hero-copy h1{font-size:50px}.station-grid,.archive-grid,.how-grid{grid-template-columns:1fr}.console-screen{margin:14px 14px 0;padding:28px 16px}.console-controls{padding:14px}.error-line{font-size:48px}.lab-duo-stage{padding-inline:0}.lab-section{padding:44px 0}.lab-section-head h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.challenge-choice,.quest-option,.lab-btn,.station-card{transition:none}}

/* Integrated mascot pose pack */
.hero-bandit img{max-height:300px}.hero-sunny img{max-height:330px}.console-bandit img{max-height:250px;max-width:310px}.console-sunny img{max-height:245px}.duo-left img{max-height:220px}.duo-right img{max-height:225px}

/* v0.2 exact transparent pose pack sizing */
.hero-bandit img{max-height:305px!important}.hero-sunny img{max-height:335px!important}.console-bandit img{max-height:255px!important;max-width:315px!important}.console-sunny img{max-height:248px!important}.duo-left img{max-height:225px!important}.duo-right img{max-height:230px!important}.lab-collab-art img{max-height:345px!important;max-width:100%!important}
