:root{--ground:#0b1113;--panel:#121b1e;--panel-line:#26383c;--text:#dfe8e8;--text-dim:#9fb2b3;--accent:#63d2c3;--warn:#e0b578;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--ground);font-synthesis:none;font-family:Segoe UI,system-ui,sans-serif;line-height:1.6}*{box-sizing:border-box}body{margin:0}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.shell{max-width:1200px;margin:auto;padding:0 48px}header{border-bottom:1px solid var(--panel-line);justify-content:space-between;align-items:center;gap:24px;min-height:104px;display:flex}.brand{overflow-wrap:anywhere;align-items:center;gap:14px;font-size:23px;font-weight:650;display:flex}.brand-mark{background:var(--accent);border-radius:3px;flex-shrink:0;width:13px;height:13px;box-shadow:0 0 14px #63d2c373}.eyebrow{letter-spacing:.12em;color:var(--text-dim);margin:0;font-family:Consolas,monospace;font-size:13px}main{padding:60px 0 80px}main .eyebrow{color:var(--accent);margin-bottom:18px}h1{letter-spacing:-.03em;margin:0 0 20px;font-size:clamp(30px,4vw,42px);font-weight:600;line-height:1.2}.intro{color:var(--text-dim);max-width:680px;margin:0 0 38px;font-size:18px}.panel{border:1px solid var(--panel-line);background:var(--panel);border-radius:12px;overflow:hidden}.panel-bar{border-bottom:1px solid var(--panel-line);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);align-items:center;gap:10px;padding:14px 22px;font-family:Consolas,monospace;font-size:12px;display:flex}.dot{background:var(--accent);border-radius:50%;width:7px;height:7px}.readout{grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:0 40px;margin:0;padding:8px 22px 20px;display:grid}.readout>div{border-bottom:1px solid #1b2629;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 0;display:flex}.readout dt{color:var(--text-dim);font-size:15px}.readout dd{color:var(--text-dim);text-align:right;margin:0;font-family:Consolas,monospace;font-size:14px}.readout dd.up{color:var(--accent)}.readout dd.down{color:var(--warn)}.connection{min-height:48px;color:var(--text-dim);justify-content:space-between;align-items:center;gap:16px;margin-top:26px;font-size:14px;display:flex}.connection [role=status]{align-items:center;gap:10px;display:flex}.indicator{background:#8c9a9a;border-radius:50%;flex-shrink:0;width:8px;height:8px}.indicator.ready{background:var(--accent)}.indicator.error{background:var(--warn)}button{color:#cdece6;background:#1b2b2c;border:1px solid #3d5c5a;border-radius:6px;padding:8px 15px}button:hover{background:#24393a}footer{border-top:1px solid var(--panel-line);color:var(--text-dim);justify-content:space-between;gap:20px;padding:24px 0;font-size:14px;display:flex}@media (width<=760px){.shell{padding:0 22px}header{min-height:80px}header .eyebrow{display:none}main{padding:38px 0 52px}.readout{padding:4px 18px 16px}.connection{flex-direction:column;align-items:flex-start}footer{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.terminal{margin-top:28px}.bar-note{text-transform:none;letter-spacing:.04em;margin-left:auto}.terminal-body{padding:18px 22px 16px}.terminal-body textarea{resize:vertical;width:100%;min-height:132px;color:var(--text);tab-size:2;background:#0a1012;border:1px solid #33484c;border-radius:8px;padding:14px;font:15px/1.6 Consolas,monospace}.terminal-body textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.terminal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.primary{background:var(--accent);color:#05211f;border-color:var(--accent);font-weight:650}.primary:hover{background:#7fe0d3}.world{border-top:1px solid var(--panel-line);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;padding:18px 22px;display:grid}.world strong{color:var(--accent);font-family:Consolas,monospace;font-size:14px}.world ul{color:var(--text-dim);margin:6px 0 0;padding:0;font-size:14px;list-style:none}.world li{flex-wrap:wrap;gap:8px;padding:2px 0;display:flex}.world .type{color:#75898c;font-family:Consolas,monospace;font-size:12px}.world .fk{color:var(--warn);font-size:12px}.world .note{grid-column:1/-1;margin:0}.result{border-top:1px solid var(--panel-line);padding:18px 22px 22px}.result.failed{border-top-color:#6b5326}.result p{margin:0 0 10px}.result.failed>p{color:var(--warn)}.score{color:var(--text-dim);font-family:Consolas,monospace;font-size:13px}.note{color:var(--text-dim);font-size:14px}.result details{margin-top:6px}.result summary{cursor:pointer;color:var(--text-dim);font-size:14px}.result pre{color:#d6e5e3;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;font:13px/1.6 Consolas,monospace}.table-wrapper{border:1px solid var(--panel-line);border-radius:8px;overflow-x:auto}.result table{border-collapse:collapse;width:100%;min-width:420px;font:14px/1.5 Consolas,monospace}.result th{text-align:left;border-bottom:1px solid var(--panel-line);white-space:nowrap;background:#162124;padding:10px 14px}.result th .type{color:#75898c;letter-spacing:.04em;font-size:11px;font-weight:400;display:block}.result td{vertical-align:top;color:#d6e5e3;border-bottom:1px solid #182326;padding:8px 14px}.result tr:last-child td{border-bottom:none}.result .null{color:#75898c;font-style:italic}@media (width<=760px){.terminal-body{padding:14px 18px}.terminal-actions{justify-content:stretch}.terminal-actions button{flex:auto}.world,.result{padding:14px 18px}}header nav{letter-spacing:.06em;gap:22px;font-family:Consolas,monospace;font-size:14px;display:flex}header nav a{color:var(--text-dim);text-decoration:none}header nav a:hover{color:var(--accent)}.brand{color:inherit;text-decoration:none}.start h1{font-size:clamp(30px,4.4vw,46px)}.start-actions{flex-wrap:wrap;gap:12px;margin:0 0 42px;display:flex}.start-facts{border-top:1px solid var(--panel-line);flex-wrap:wrap;gap:44px;margin:0;padding:22px 0 0;display:flex}.start-facts dt{color:var(--text-dim);letter-spacing:.08em;font-family:Consolas,monospace;font-size:13px}.start-facts dd{margin:4px 0 0;font-size:22px}.intro-view{max-width:760px;transition:filter .8s,opacity .8s}.intro-view.blackout{filter:saturate(.25)brightness(.86)}.intro-lines{min-height:320px;margin:8px 0 26px}.line{margin:0 0 16px;font-size:17px;line-height:1.65}.line .who{letter-spacing:.14em;color:var(--accent);vertical-align:1px;margin-right:12px;font-family:Consolas,monospace;font-size:11px;display:inline-block}.line.system{color:var(--warn);letter-spacing:.04em;font-family:Consolas,monospace;font-size:14px}.line.system .who{color:var(--warn)}.line.narrator{color:var(--text-dim);font-style:italic}.intro-actions{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.map{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:0 0 48px;display:grid}.area{border:1px solid var(--panel-line);background:var(--panel);border-radius:10px;padding:18px 20px;position:relative;overflow:hidden}.area header{border:none;flex-direction:column;gap:4px;min-height:0;display:flex}.area .zone{letter-spacing:.14em;color:var(--text-dim);font-family:Consolas,monospace;font-size:11px}.area strong{font-size:17px;font-weight:600}.area-note{color:var(--text-dim);margin:10px 0 0;font-size:13px}.area .lamp{background:#2c3a3c;border-radius:50%;width:9px;height:9px;position:absolute;top:18px;right:18px}.area.notstrom{border-color:#5c4a28}.area.notstrom .lamp{background:var(--warn);box-shadow:0 0 12px #e0b57880}.area.online{background:#12211f;border-color:#2f6f66}.area.online .lamp{background:var(--accent);box-shadow:0 0 14px #63d2c399}.area.dark{opacity:.55}.orders{margin:0 0 44px}.orders h2{margin:0 0 4px;font-size:23px}.order-group{margin-top:22px}.order-group h3{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin:0 0 10px;font-family:Consolas,monospace;font-size:12px}.order-group ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.order{text-align:left;background:var(--panel);border:1px solid var(--panel-line);width:100%;color:inherit;border-radius:10px;align-items:center;gap:16px;padding:14px 18px;display:flex}.order:hover{background:#162326;border-color:#3f6a66}.order .state{background:0 0;border:1px solid #47635f;border-radius:50%;flex-shrink:0;width:10px;height:10px}.order.attempted .state{background:var(--warn);border-color:var(--warn)}.order.solved .state{background:var(--accent);border-color:var(--accent)}.order-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.order-text strong{font-size:16px;font-weight:600}.order-text small{color:var(--text-dim);font-family:Consolas,monospace;font-size:12px}.order-meta{color:var(--text-dim);letter-spacing:.06em;font-family:Consolas,monospace;font-size:12px}.mission-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.mission-head h1{margin-bottom:10px;font-size:clamp(26px,3vw,34px)}.mission-tag{align-items:center;gap:12px;display:flex}.badge{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border:1px solid #47635f;border-radius:5px;padding:5px 11px;font-family:Consolas,monospace;font-size:11px}.badge.side{color:var(--warn);border-color:#5c4a28}.badge.analysis{color:#9dbbe0;border-color:#4a5b74}.mission-tag .code{color:var(--text-dim);font-family:Consolas,monospace;font-size:14px}.mission-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:16px;margin:22px 0 16px;display:grid}.story-body{padding:18px 22px}.story-body .chapter{margin:0 0 14px;font-size:17px}.story-body .tables,.story-body .concepts{color:var(--text-dim);margin:0 0 8px;font-size:14px}.story-body code{color:var(--accent);background:#0d1719;border:1px solid #26383c;border-radius:4px;margin-right:6px;padding:1px 7px;font-family:Consolas,monospace}.mira{border:none}.mira-lines{max-height:420px;padding:18px 22px;overflow-y:auto}.mira-lines .line{margin-bottom:14px;font-size:16px}.mira-actions{flex-wrap:wrap;gap:10px;padding:0 22px 18px;display:flex}.objective{margin-bottom:4px}.objective p{margin:0;padding:18px 22px;font-size:18px}.mission-foot{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.solution-note{margin:0;padding:16px 22px 0}@media (width<=900px){.mission-grid{grid-template-columns:1fr}}@media (width<=760px){header nav{gap:14px}.start-facts{gap:24px}.intro-lines{min-height:240px}.mission-head{gap:12px}}.code-editor{border-top:1px solid var(--panel-line);border-bottom:1px solid var(--panel-line);height:260px}.terminal-actions{align-items:center;gap:10px;padding:14px 22px}.toggle{color:var(--text-dim);cursor:pointer;align-items:center;gap:8px;margin-right:auto;font-size:14px;display:flex}.toggle input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.toggle input:disabled{cursor:not-allowed}.terminal-actions .note{margin-right:auto;font-size:13px}.history{border-top:1px solid var(--panel-line);padding:16px 22px}.history ul{gap:6px;max-height:260px;margin:0 0 10px;padding:0;list-style:none;display:grid;overflow-y:auto}.history button{text-align:left;border:1px solid var(--panel-line);width:100%;color:var(--text);background:#0d1719;border-radius:6px;padding:9px 12px;display:block}.history button:hover{background:#13211f;border-color:#3f6a66}.history code{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.5 Consolas,monospace}.monaco-editor .suggest-widget{border-color:var(--panel-line)}@media (width<=760px){.code-editor{height:220px}.terminal-actions{padding:12px 18px}.toggle,.terminal-actions .note{width:100%;margin-right:0}}.verdict{border-left:3px solid var(--warn);margin-top:16px;padding:16px 22px}.verdict.ok{border-left-color:var(--accent)}.verdict p{margin:0 0 6px;font-size:16px}.verdict.ok>p{color:var(--accent)}.verdict .note{margin:0;font-family:Consolas,monospace;font-size:13px}.panel.success{background:#101f1d;border-color:#2f6f66;margin-top:16px}.success-actions{padding:0 22px 20px}.badge.solved{border-color:var(--accent);color:var(--accent)}.order.locked{opacity:.45;cursor:not-allowed}.order.locked:hover{border-color:var(--panel-line);background:var(--panel)}.locked-note{max-width:640px;margin:0;padding:20px 22px}.hints{margin-top:16px}.hint-body{padding:18px 22px}.hint-list{gap:14px;margin:0 0 14px;padding:0;list-style:none;display:grid}.hint-list li{border-left:2px solid var(--panel-line);padding-left:14px;font-size:16px;line-height:1.6}.hint-list .stage{letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-bottom:4px;font-family:Consolas,monospace;font-size:11px;display:block}.solution{border-top:1px solid var(--panel-line);margin-top:4px;padding-top:16px}.solution h3{color:var(--accent);margin:0 0 10px;font-size:15px}.solution pre{border:1px solid var(--panel-line);white-space:pre-wrap;overflow-wrap:anywhere;color:#d6e5e3;background:#0a1012;border-radius:6px;margin:0 0 12px;padding:12px 14px;font:14px/1.6 Consolas,monospace}.solution ul{color:var(--text-dim);margin:0 0 10px;padding-left:20px}.solution li{margin:5px 0}.hint-body .note.warn{color:var(--warn)}.error-help{border-left:2px solid var(--accent);color:var(--text);background:#141d1f;margin:0 0 10px;padding:10px 14px;font-size:15px}.error-help .who{letter-spacing:.14em;color:var(--accent);margin-right:10px;font-family:Consolas,monospace;font-size:11px;display:inline-block}.tool-list{gap:10px;margin-bottom:44px;display:grid}.tool{padding:0}.tool-head{text-align:left;width:100%;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;gap:16px;padding:16px 22px;display:flex}.tool-head:hover{background:#162225}.tool-head strong{font-size:17px;font-weight:600}.tool-body{border-top:1px solid var(--panel-line);padding:4px 22px 22px}.tool-body h3{letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);margin:18px 0 8px;font-family:Consolas,monospace;font-size:11px}.tool-body p{max-width:760px;margin:0;font-size:16px;line-height:1.65}.tool-body pre{border:1px solid var(--panel-line);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--accent);background:#0a1012;border-radius:6px;margin:0;padding:12px 14px;font:14px/1.65 Consolas,monospace}.tool-body .mistake{color:var(--warn)}.visual{flex-wrap:wrap;align-items:center;gap:14px;margin:14px 0 4px;display:flex}.visual-step{align-items:center;gap:14px;display:flex}.visual-table{min-width:0}.visual-label{letter-spacing:.08em;color:var(--text-dim);margin-bottom:6px;font-family:Consolas,monospace;font-size:11px;display:block}.visual table{min-width:0;font-size:13px}.visual th,.visual td{padding:6px 12px}.visual th.marked,.visual td.marked{color:var(--accent)}.visual th.marked{background:#16292b}.visual-arrow{color:var(--text-dim);align-self:center;padding-top:14px;font-size:20px}.tool-locked h2{margin:0 0 12px;font-size:20px}.tool-locked ul{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.tool-locked li{border:1px dashed var(--panel-line);color:var(--text-dim);border-radius:8px;justify-content:space-between;gap:12px;padding:12px 16px;font-size:15px;display:flex}.tool-locked small{font-family:Consolas,monospace;font-size:12px}.foot-link{color:var(--text-dim);align-self:center;font-size:14px;text-decoration:none}.foot-link:hover{color:var(--accent)}@media (width<=760px){.visual,.visual-step{flex-direction:column;align-items:stretch}.visual-arrow{text-align:center;padding:0}}.badge.challenge{color:#d5a8e0;border-color:#6b4a74}.challenge-note{color:var(--warn);margin-top:10px}.join-visual{margin:14px 0 4px}.join-sources{grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);align-items:start;gap:0;display:grid}.join-links line{stroke:var(--accent);stroke-width:1.5px;opacity:.75}.join-links circle{fill:var(--accent)}.join-links{margin-top:19px}.join-visual .visual-table table{width:100%}.join-visual .visual-table th,.join-visual .visual-table td{white-space:nowrap;height:30px;padding:0 12px}.join-visual .visual-table thead th{height:32px}.join-note{color:var(--text-dim);margin:10px 0 0;font-size:13px}.join-result{justify-items:center;gap:6px;margin-top:12px;display:grid}.join-result .visual-table{width:100%}@media (width<=760px){.join-sources{grid-template-columns:1fr}.join-links{display:none}}.preview-note{border-left:3px solid var(--accent);background:#ffffff0a;margin:0 0 8px;padding:8px 10px;font-size:14px}.warn-note{color:var(--warn);margin:0 0 8px;font-size:14px}.confirm-bar{border:1px solid var(--warn);border-radius:6px;flex-wrap:wrap;align-items:center;gap:12px;margin:10px 0 0;padding:10px 12px;display:flex}.confirm-bar span{font-size:14px}.open-work{background:#ffffff08;border:1px solid #2b3a44;border-radius:8px;margin:0 0 26px;padding:16px 18px}.open-work h2{margin:0 0 4px;font-size:18px}.open-list{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}:root{--accent-soft:#63d2c329;--accent-glow:#63d2c373;--warn-soft:#e0b57824;--panel-lift:#162226;--ease:cubic-bezier(.2, .7, .3, 1)}body:before{content:"";z-index:-2;pointer-events:none;background:radial-gradient(1100px 620px at 12% -8%,#63d2c312,#0000 70%),radial-gradient(900px 540px at 92% 4%,#e0b5780d,#0000 72%),radial-gradient(1200px 800px at 50% 120%,#63d2c30a,#0000 70%);animation:34s ease-in-out infinite alternate drift;position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;opacity:.5;background:repeating-linear-gradient(#ffffff03 0 1px,#0000 1px 3px);position:fixed;inset:0}@keyframes drift{0%{transform:translate(0,0)}to{transform:translateY(18px)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:none}}@keyframes breathe{0%,to{opacity:.75;box-shadow:0 0 #63d2c300}50%{box-shadow:0 0 10px 1px var(--accent-glow);opacity:1}}@keyframes lamp-warn{0%,to{opacity:.7;box-shadow:0 0 8px #e0b57859}50%{opacity:1;box-shadow:0 0 14px 2px #e0b5788c}}@keyframes caret{0%,45%{opacity:1}55%,to{opacity:0}}@keyframes shimmer{0%{background-position:-420px 0}to{background-position:420px 0}}@keyframes run-bar{0%{transform:translate(-100%)}to{transform:translate(320%)}}@keyframes solved-flash{0%{box-shadow:0 0 0 0 var(--accent-glow)}60%{box-shadow:0 0 26px 2px var(--accent-glow)}to{box-shadow:0 0 #63d2c300}}@keyframes power-up{0%{opacity:.35}30%{opacity:1}45%{opacity:.5}to{opacity:1}}main>section,main>.intro{animation:rise .42s var(--ease) both}.brand-mark{animation:4.6s ease-in-out infinite breathe}header nav a{padding:4px 2px;transition:color .18s;position:relative}header nav a:after{content:"";background:var(--accent);transform-origin:0;height:1px;transition:transform .22s var(--ease);position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}header nav a:hover:after,header nav a[aria-current=page]:after{transform:scaleX(1)}header nav a[aria-current=page]{color:var(--text)}.skip-link{z-index:20;background:var(--accent);color:#05211f;transition:top .18s var(--ease);border-radius:0 0 8px 8px;padding:10px 16px;font-weight:650;text-decoration:none;position:absolute;top:-60px;left:16px}.skip-link:focus{outline-offset:-3px;outline:3px solid #05211f;top:0}.panel{transition:border-color .25s,box-shadow .25s}.panel-bar{position:relative}.panel-bar .dot{animation:3.4s ease-in-out infinite breathe}button{transition:background .18s,border-color .18s,transform .12s,box-shadow .25s}button:hover:not(:disabled){transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(0)}.primary:hover:not(:disabled){box-shadow:0 6px 20px -8px var(--accent-glow)}button:disabled{transform:none}.order{transition:border-color .2s ease, background .2s ease, transform .16s var(--ease)}.order:not(.locked):hover{transform:translateY(-2px);box-shadow:0 10px 24px -18px #000}.order .state{transition:background .25s,box-shadow .25s}.order.solved .state{box-shadow:0 0 10px var(--accent-glow)}.order.current .state{animation:2.6s ease-in-out infinite breathe}.order-group ul>li{animation:rise .4s var(--ease) both}.order-group ul>li:nth-child(2){animation-delay:40ms}.order-group ul>li:nth-child(3){animation-delay:80ms}.order-group ul>li:nth-child(4){animation-delay:.12s}.order-group ul>li:nth-child(5){animation-delay:.16s}.order-group ul>li:nth-child(n+6){animation-delay:.2s}.area{transition:transform .2s var(--ease), border-color .25s ease, background .3s ease}.area:after{content:"";pointer-events:none;opacity:0;background:radial-gradient(240px 120px at 80% 0%, var(--accent-soft), transparent 70%);transition:opacity .3s;position:absolute;inset:0}.area:hover:after{opacity:1}.area.notstrom .lamp{animation:3.8s ease-in-out infinite lamp-warn}.area.online .lamp{animation:5s ease-in-out infinite breathe}.area.online{animation:.9s both power-up}.area.dark{filter:grayscale(.4)}.map{grid-auto-rows:1fr}.zone-block{margin:0 0 26px}.zone-head{letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);align-items:center;gap:14px;margin:0 0 10px;font-family:Consolas,monospace;font-size:12px;font-weight:400;display:flex}.zone-head:after{content:"";background:var(--panel-line);flex:1;height:1px}.zone-block .map{margin-bottom:0}.next-order .go{letter-spacing:.04em}.area strong{letter-spacing:-.01em}.area .chapters{gap:3px;margin:10px 0 0;padding:0;list-style:none;display:grid}.area .chapters li{color:var(--text-dim);font-size:13px}.area .counts{letter-spacing:.06em;gap:14px;margin:12px 0 0;font-family:Consolas,monospace;font-size:12px;display:flex}.area .counts .open{color:var(--warn)}.area .counts .done{color:var(--accent)}.area .bar{background:#1b2629;border-radius:2px;height:3px;margin-top:12px;overflow:hidden}.area .bar span{background:var(--accent);height:100%;transition:width .8s var(--ease);border-radius:2px;display:block}.next-order{text-align:left;width:100%;color:inherit;background:linear-gradient(120deg, #63d2c31a, transparent 55%), var(--panel);border:1px solid #2f6f66;border-radius:12px;margin:0 0 26px;padding:22px 24px;display:block;position:relative;overflow:hidden}.next-order:hover{border-color:var(--accent);transform:translateY(-2px)}.next-order .eyebrow{color:var(--accent);margin-bottom:8px}.next-order strong{margin-bottom:6px;font-size:21px;font-weight:600;display:block}.next-order .where{color:var(--text-dim);font-size:14px}.next-order .go{color:var(--accent);font-family:Consolas,monospace;font-size:13px;position:absolute;bottom:20px;right:24px}.next-order .go:after{content:"→";transition:transform .2s var(--ease);margin-left:8px;display:inline-block}.next-order:hover .go:after{transform:translate(4px)}.open-work{animation:rise .45s var(--ease) both}.open-list>li{animation:rise .4s var(--ease) both}.open-list>li:nth-child(2){animation-delay:50ms}.open-list>li:nth-child(3){animation-delay:.1s}.open-list>li:nth-child(n+4){animation-delay:.15s}.mira-lines .line,.intro-lines .line{animation:slide-in .45s var(--ease) both}.mira-lines .line:nth-child(2),.intro-lines .line:nth-child(2){animation-delay:60ms}.mira-lines .line:nth-child(3),.intro-lines .line:nth-child(3){animation-delay:.12s}.mira-lines .line:nth-child(4),.intro-lines .line:nth-child(4){animation-delay:.18s}.mira-lines .line:nth-child(5),.intro-lines .line:nth-child(5){animation-delay:.24s}.mira-lines .line:nth-child(n+6),.intro-lines .line:nth-child(n+6){animation-delay:.3s}.line.system{border-left:2px solid var(--warn);background:var(--warn-soft);border-radius:0 4px 4px 0;padding-top:6px;padding-bottom:6px;padding-left:12px}.line.mira-line .who{opacity:.85}.intro-lines .line:last-child:after{content:"▍";color:var(--accent);margin-left:6px;animation:1.1s step-end infinite caret}.intro-view{position:relative}.intro-progress{gap:6px;margin:0 0 18px;display:flex}.intro-progress span{background:#223134;border-radius:2px;width:22px;height:3px;transition:background .3s}.intro-progress span.done{background:var(--accent)}.intro-view.blackout .intro-progress span.done{background:var(--warn)}.mission-head .badge{animation:.5s both fade}.badge.solved{box-shadow:0 0 14px -4px var(--accent-glow)}.panel.objective{border-left:2px solid var(--accent)}.objective p{font-size:18px;line-height:1.55}.mission-grid{align-items:start}.story-body .meta-list{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.story-body .meta-list dt{letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);font-family:Consolas,monospace;font-size:11px}.story-body .meta-list dd{color:var(--text);margin:4px 0 0;font-size:14px}.chapter-progress{align-items:center;gap:10px;margin-top:16px;display:flex}.chapter-progress .bar{background:#1b2629;border-radius:2px;flex:1;height:4px;overflow:hidden}.chapter-progress .bar span{background:var(--accent);height:100%;transition:width .8s var(--ease);display:block}.chapter-progress .count{color:var(--text-dim);font-family:Consolas,monospace;font-size:12px}.verdict{animation:rise .35s var(--ease) both}.verdict.ok{animation:rise .35s var(--ease) both, solved-flash 1.1s ease .1s}.verdict.ok>p:before{content:"✓ ";color:var(--accent)}.panel.success{animation:rise .5s var(--ease) both}.panel.success .panel-bar{color:var(--accent)}.terminal.busy .panel-bar:after{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);width:30%;height:2px;animation:1.1s linear infinite run-bar;position:absolute;bottom:-1px;left:0}.terminal:focus-within{border-color:#2f6f66}.result{animation:.3s both fade}.result tbody tr{animation:.28s both fade}.result tbody tr:nth-child(2){animation-delay:20ms}.result tbody tr:nth-child(3){animation-delay:40ms}.result tbody tr:nth-child(4){animation-delay:60ms}.result tbody tr:nth-child(5){animation-delay:80ms}.result tbody tr:nth-child(n+6){animation-delay:.1s}.result tbody tr:hover td{background:#162225}.preview-note{animation:rise .3s var(--ease) both}.confirm-bar{animation:rise .3s var(--ease) both;box-shadow:0 0 24px -14px var(--warn)}.empty{gap:6px;padding:6px 0 2px;display:grid}.empty strong{color:var(--text);font-size:15px;font-weight:600}.empty .note{margin:0}.empty:before{content:"";background:var(--panel-line);width:26px;height:1px;margin-bottom:6px;display:block}.skeleton{color:#0000;background:linear-gradient(90deg,#141f22 25%,#1d2c30 50%,#141f22 75%) 0 0/420px 100%;border-radius:6px;animation:1.4s linear infinite shimmer}.loading-view{gap:14px;max-width:680px;display:grid}.loading-view .skeleton{height:18px}.loading-view .skeleton.title{width:70%;height:38px}.loading-view .skeleton.short{width:45%}.tool{transition:border-color .25s}.tool[open],.tool.open{border-color:#2f6f66}.tool-body{animation:rise .35s var(--ease) both}.visual-step{animation:.4s both fade}.visual-step:nth-child(2){animation-delay:.12s}.visual-step:nth-child(3){animation-delay:.24s}.visual-step:nth-child(4){animation-delay:.36s}.visual-arrow{animation:3s ease-in-out infinite breathe}.join-links line{stroke-dasharray:90;stroke-dashoffset:90px;animation:draw 1.1s var(--ease) .2s forwards}@keyframes draw{to{stroke-dashoffset:0}}.hint-list li{animation:slide-in .4s var(--ease) both}.hint-list li:nth-child(2){animation-delay:50ms}.hint-list li:nth-child(3){animation-delay:.1s}.hint-list li:nth-child(n+4){animation-delay:.15s}.solution{animation:rise .4s var(--ease) both}.start h1{text-wrap:balance}.start-facts dd{transition:color .3s}.start-hint{color:var(--text-dim);margin:26px 0 0;font-size:14px}.start-hint kbd{border:1px solid var(--panel-line);color:var(--text);background:#0d1719;border-radius:4px;padding:3px 6px;font:12px/1 Consolas,monospace}@media (width<=760px){body:before{background-size:cover}.next-order{padding:18px 18px 44px}.next-order .go{bottom:16px;left:18px;right:auto}.terminal-actions{justify-content:flex-start}.terminal-actions .primary{width:100%}.map{grid-template-columns:1fr}.mission-head{flex-direction:column;align-items:flex-start}.chapter-progress{flex-wrap:wrap}}@media (width<=420px){.shell{padding:0 16px}h1{font-size:27px}.order{gap:12px;padding:12px 14px}.order-meta{display:none}.start-facts{gap:18px}}@media (prefers-reduced-motion:reduce){body:before{animation:none}.intro-lines .line:last-child:after{opacity:1;animation:none}.join-links line{stroke-dashoffset:0}.skeleton{background:#1a2528}.order:not(.locked):hover,.next-order:hover,button:hover:not(:disabled){transform:none}}.skyline{background:linear-gradient(#0c1417 0%,#0b1113 100%);border-radius:12px;width:100%;height:auto;max-height:230px;margin:4px 0 34px;display:block}.skyline .haeuser rect{fill:#101a1d;stroke:#18262a;stroke-width:1px}.skyline .fenster rect{fill:#162023;transition:fill .8s,opacity .8s}.skyline .fenster rect.an{fill:#e8c489;opacity:.78;filter:url(#schein)}.skyline .fenster rect.an.kalt{fill:var(--accent);opacity:.72}.skyline .fenster rect.an.flackert{animation:7.5s step-end infinite flackern}.skyline .horizont{fill:url(#horizont)}@keyframes flackern{0%,62%,66%,71%,to{opacity:.78}64%,69%{opacity:.12}}@media (width<=760px){.skyline{max-height:150px;margin-bottom:26px}header{flex-wrap:wrap;gap:6px 16px;min-height:0;padding:14px 0 10px}.brand{gap:10px;font-size:19px}header nav{gap:20px;width:100%;font-size:13px}header nav a{padding:2px 0}}@media (width<=420px){header nav{gap:14px;font-size:12px}.brand{font-size:17px}}.visual-arrow{color:var(--accent);opacity:.8;align-self:center;padding:0 2px;font-size:26px;line-height:1}.visual-step{align-items:center}.tool-locked li{flex-direction:column;align-items:flex-start;gap:5px;padding:14px 16px}.tool-locked li span:first-child{color:var(--text);font-size:15px}.tool-locked small{color:#75898c;letter-spacing:.04em;font-size:12px}.tool-locked h2{margin-top:6px}.panel.success .mira-lines{max-height:none}.verdict.ok{border-left-width:3px}.verdict.open{background:#e0b5780d}.primary.next{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 18px;display:inline-flex}.primary.next .label{letter-spacing:.12em;text-transform:uppercase;opacity:.75;font-family:Consolas,monospace;font-size:11px}.primary.next .title{font-size:16px;font-weight:650}.panel-title{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;margin:0}.intro-view.blackout{animation:1.1s step-end stromausfall}@keyframes stromausfall{0%,18%,30%,62%,to{opacity:1}20%,26%{opacity:.12}64%,72%{opacity:.2}}header nav{flex-wrap:wrap;align-items:center}.user-chip{border-left:1px solid var(--panel-line);align-items:center;gap:10px;padding-left:16px;display:inline-flex}header nav a.user-name{color:var(--accent)}header nav a.user-name:before{content:"● ";vertical-align:2px;font-size:10px}.logout{background:0 0;padding:4px 10px;font-family:inherit;font-size:13px}.access{max-width:560px;animation:.5s both rise}.access-panel{box-shadow:0 24px 60px -36px var(--accent-glow);margin-top:8px}.access-body{gap:14px;padding:22px 24px 24px;display:grid}.field{gap:6px;display:grid}.field>span{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);font-family:Consolas,monospace;font-size:12px}.field input{font:inherit;color:var(--text);border:1px solid var(--panel-line);background:#0d1517;border-radius:6px;width:100%;padding:10px 12px;font-size:17px;transition:border-color .18s,box-shadow .18s}.field input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #63d2c32e}.field input[aria-invalid=true]{border-color:var(--warn)}.field-hint{color:var(--text-dim);margin:-8px 0 0;font-size:13px}.field-hint.warn{color:var(--warn)}.access-error{min-height:1.6em;color:var(--warn);margin:0;font-size:15px}.access-error:empty{min-height:0}.access-actions{flex-wrap:wrap;gap:12px;display:flex}.access-body .primary{justify-self:start;padding:10px 22px}.access-note{color:var(--text-dim);margin:18px 0 0;font-size:14px}.dot.pulse{animation:1.2s ease-in-out infinite breathe}button:disabled{opacity:.55;cursor:not-allowed}.admin-create{margin-bottom:26px}.admin-create-body{flex-wrap:wrap;align-items:flex-end;gap:14px;padding:20px 22px 6px;display:flex}.admin-create-body .field{flex:260px}.admin-create-body .primary{padding:10px 20px}.admin-rule{margin:6px 22px 0}.admin-message{margin:0;padding:4px 22px 14px}.admin-count{text-transform:none;letter-spacing:.04em;margin-left:auto}.admin-list{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:15px}.admin-table th,.admin-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #1b2629;padding:12px 22px}.admin-table thead th{letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);font-family:Consolas,monospace;font-size:11px;font-weight:400}.admin-table tbody th{font-family:Consolas,monospace;font-weight:600}.admin-table tr.disabled th,.admin-table tr.disabled td:not(.admin-actions){opacity:.55}.admin-table tbody tr{animation:.3s both fade}.admin-you{color:var(--text-dim);font-weight:400}.admin-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.admin-actions button{padding:5px 11px;font-size:13px}.admin-confirm{color:var(--warn);font-size:13px}.admin-note{color:var(--text-dim);font-size:13px}.tag{color:var(--accent);border:1px solid #2f4a47;border-radius:99px;padding:2px 8px;font-family:Consolas,monospace;font-size:12px}.tag.warn{color:var(--warn);border-color:#5a4630}.tag.pending{color:var(--text-dim);border-color:var(--panel-line)}button.danger{color:#f3d2ad;background:#3a2417;border-color:#8a5a32}button.danger:hover:not(:disabled){background:#4a2e1c}.issued{border-color:var(--accent);margin-bottom:26px;animation:1.4s both solved-flash}.issued-body{padding:18px 22px 22px}.issued-values{gap:10px;margin:0 0 14px;display:grid}.issued-values>div{grid-template-columns:140px 1fr;align-items:center;gap:12px;display:grid}.issued-values dt{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);font-family:Consolas,monospace;font-size:12px}.issued-values dd{margin:0;font-family:Consolas,monospace;font-size:18px}.issued-password{font:inherit;letter-spacing:.08em;color:var(--accent);background:#0d1517;border:1px dashed #3d5c5a;border-radius:6px;width:100%;max-width:320px;padding:8px 12px;font-size:22px}.issued-warning{color:var(--warn);margin:0 0 16px;font-size:14px}@media (width<=760px){.user-chip{border-left:0;padding-left:0}.admin-table th,.admin-table td{padding:10px 14px}.admin-actions{justify-content:flex-start}.issued-values>div{grid-template-columns:1fr;gap:4px}}.editor-loading{letter-spacing:.1em;color:var(--text-dim);background:linear-gradient(90deg,#0000,#63d2c30f,#0000) 0 0/420px 100% no-repeat,#0d1517;justify-content:center;align-items:center;font-family:Consolas,monospace;font-size:13px;animation:1.4s linear infinite shimmer;display:flex}
