:root{--ink:#0a1730;--ink-2:#12244a;--line:#1d3563;--text:#d4e7f4;--text-dim:#91a5d4;--accent:#5689c4;--gold:#d9b26a;--ok:#5fbf8f;--warn:#d9a441;--font:ui-sans-serif, system-ui, "Segoe UI", Inter, Arial, sans-serif;--mono:ui-monospace, "Cascadia Mono", Consolas, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--ink);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:var(--accent)}.wrap{max-width:1100px;margin:0 auto;padding:32px 20px 80px}.masthead{border-bottom:1px solid var(--line);align-items:baseline;gap:14px;padding-bottom:14px;display:flex}.masthead h1{letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:20px}.masthead .sub{color:var(--text-dim);font-size:13px}.shelf{gap:10px;margin:24px 0 0;padding:0;list-style:none;display:grid}.tile{border:1px solid var(--line);background:linear-gradient(180deg, var(--ink-2), var(--ink));color:inherit;border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:8px 16px;padding:16px 18px;text-decoration:none;display:grid}.tile:hover,.tile:focus-visible{border-color:var(--accent);outline:none}.tile[data-status=ready]{border-left:3px solid var(--ok)}.tile[data-status=locked]{border-left:3px solid var(--warn)}.tile[data-status=live]{border-left:3px solid var(--ok)}.tile .name{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:15px}.tile .cap{color:var(--text-dim);grid-column:1/-1;font-size:13px;line-height:1.5}.tile .reason{color:var(--warn);font-size:12.5px;font-family:var(--mono);grid-column:1/-1}.badge{font-family:var(--mono);color:var(--text-dim);white-space:nowrap;font-size:12px}.meta{color:var(--text-dim);font-size:12px;font-family:var(--mono);grid-column:1/-1}.banner{font-family:var(--mono);border-radius:8px;flex:none;margin:18px 0 0;padding:12px 14px;font-size:13px}.banner.attention{color:#f0dfc0;background:#3a2f18;border:1px solid #7a6330;max-height:22vh;overflow-y:auto}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.os-strip{font-family:var(--mono);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:14px 22px;display:flex}.wrap>.os-strip{border-bottom:1px solid var(--line);padding-bottom:14px}.cover-stage>.os-strip{padding:22px clamp(20px,4vw,40px) 0}.os-left,.os-right{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.os-brand{letter-spacing:.2em;text-transform:uppercase;color:var(--text);font-size:12px}.os-tick{background:var(--line);width:1px;height:14px}.os-lib{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);font-size:12px}.os-pos{letter-spacing:.08em;color:var(--text-dim);min-width:56px;font-size:12px}.os-queue{letter-spacing:.1em;color:var(--text-dim);font-size:11px}.os-queue[data-nonzero]{color:var(--gold)}.os-clock{color:var(--text);letter-spacing:.04em;font-size:13px}.plain-toggle{border:1px solid var(--line);color:var(--text-dim);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:6px;padding:7px 12px;font-size:11px}.plain-toggle:hover,.plain-toggle:focus-visible{border-color:var(--accent);color:var(--text);outline:none}.runner-pill{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);cursor:default;font-size:11px}.runner-pill .runner-dot{font-size:10px}.runner-pill[data-state=online],.runner-pill[data-state=online] .runner-dot{color:var(--ok)}.runner-pill[data-state=offline],.runner-pill[data-state=offline] .runner-dot{color:var(--warn)}.runner-pill[data-state=unreachable]{color:#f0c9c9}.cover-stage{width:100%;height:100dvh;max-height:100dvh;color:var(--text);-webkit-user-select:none;user-select:none;box-sizing:border-box;background:radial-gradient(120% 90% at 18% 8%,#16294d 0%,#0e1c38 42%,#081227 100%);flex-direction:column;display:flex;position:relative;overflow:hidden}.cover-stage:before{content:"";z-index:5;pointer-events:none;background:repeating-linear-gradient(#ffffff07 0 1px,#0000 1px 3px);position:absolute;inset:0}.cover-stage:after{content:"";z-index:6;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 180px 40px #08080e8c}.cover-body{flex:auto;min-height:0;position:relative}.cover-empty{z-index:3;position:absolute;top:40px;left:clamp(20px,4vw,40px)}.cover-info{z-index:3;pointer-events:none;width:min(520px,42vw);position:absolute;top:30px;left:clamp(20px,4vw,40px)}.cover-info a,.cover-info button{pointer-events:auto}.cover-kicker-row{align-items:center;gap:10px;margin-bottom:12px;display:flex}.cover-kicker-tick{background:var(--accent);width:16px;height:1px}.cover-kicker{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-size:11px}.cover-title{font-family:var(--mono);letter-spacing:-.01em;text-transform:uppercase;margin:0;font-size:clamp(28px,3.4vw,42px);line-height:1.08}.cover-blurb{max-width:460px;color:var(--text-dim);margin:14px 0 0;font-size:13.5px;line-height:1.6}.cover-reason{font-family:var(--mono);color:var(--warn);max-width:460px;margin:10px 0 0;font-size:12.5px}.cover-tags{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.cover-tag{font-family:var(--mono);letter-spacing:.04em;border-radius:5px;align-items:center;padding:4px 10px;font-size:11px;display:inline-flex}.cover-tag-accent{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--accent)}.cover-tag-gold{background:color-mix(in srgb, var(--gold) 24%, transparent);color:var(--gold)}.cover-tag-outline{border:1px solid var(--line);color:var(--text-dim)}.cover-tag-neutral{background:var(--ink-2);color:var(--text-dim)}.cover-enter{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:6px;align-items:center;gap:6px;margin-top:22px;padding:9px 16px;font-size:13px;text-decoration:none;display:inline-flex}.cover-enter:hover,.cover-enter:focus-visible{background:color-mix(in srgb, var(--accent) 14%, transparent);outline:none}.cover-visit{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ok);border:1px solid var(--ok);border-radius:6px;align-items:center;gap:6px;margin-top:22px;padding:9px 16px;font-size:13px;text-decoration:none;display:inline-flex}.cover-visit:hover,.cover-visit:focus-visible{background:color-mix(in srgb, var(--ok) 14%, transparent);outline:none}.cover-stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,max-content);gap:0 30px;margin-top:26px;padding-top:16px;display:grid}.cover-stat-label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);font-size:10px}.cover-stat-value{font-family:var(--mono);margin-top:6px;font-size:16px}.cover-stat-accent{color:var(--accent)}.cover-shelf{perspective:1600px;perspective-origin:50%;height:min(360px,42vh);position:absolute;bottom:96px;left:0;right:0}.cover-strip{height:100%;transform-style:preserve-3d;will-change:transform;gap:30px;transition:transform .42s cubic-bezier(.22,.75,.2,1);display:flex;position:absolute;top:0;left:50%}.cover-shelf.no-anim .cover-strip{transition:none}.cover-tile{width:236px;font:inherit;color:inherit;transform-style:preserve-3d;background:0 0;border:0;flex:none;margin-top:40px;padding:0;transition:transform .42s cubic-bezier(.22,.75,.2,1),opacity .42s;position:relative}.cover-shelf.no-anim .cover-tile{transition:none}.cover-tile:focus-visible .cover-tile-face{outline:2px solid var(--accent);outline-offset:3px}.cover-tile-face{border:1px solid var(--line);background-color:var(--ink);background-image:var(--art), linear-gradient(160deg, var(--ink-2), var(--ink));width:236px;height:308px;image-rendering:pixelated;background-position:top;background-repeat:no-repeat;background-size:cover;border-radius:8px;flex-direction:column;justify-content:flex-end;align-items:center;padding:0;transition:border-color .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 30px #08080e8c}.cover-tile-plate{z-index:1;background:#000;border-top:1px solid #d4e7f424;flex-direction:column;align-items:center;gap:6px;width:100%;padding:10px 12px 12px;display:flex;position:relative}.cover-tile[data-playable] .cover-tile-plate{border-top-color:color-mix(in srgb, var(--gold) 45%, transparent)}.cover-tile[data-active] .cover-tile-plate{border-top-color:var(--accent)}.cover-tile[data-active][data-playable] .cover-tile-plate{border-top-color:var(--gold)}.cover-tile[data-playable] .cover-tile-face{border-color:color-mix(in srgb, var(--gold) 35%, var(--line))}.cover-tile[data-active] .cover-tile-face{border-color:var(--accent);box-shadow:0 0 34px #5689c480,0 22px 44px #08080eb3}.cover-tile[data-active][data-playable] .cover-tile-face{border-color:var(--gold);box-shadow:0 0 34px #d9b26a80,0 22px 44px #08080eb3}.cover-tile-glyph{opacity:.8;font-size:30px}.cover-tile-name{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;text-align:center;font-size:13px;line-height:1.3}.cover-tile-reflection{filter:blur(1px);background:linear-gradient(#d4e7f412,#d4e7f400 70%);border-radius:8px;height:72px;margin-top:4px;display:block;transform:scaleY(-1)}.cover-tile[data-active] .cover-tile-reflection{background:linear-gradient(#5689c433,#5689c400 78%)}.cover-tile[data-active][data-playable] .cover-tile-reflection{background:linear-gradient(#d9b26a33,#d9b26a00 78%)}.cover-dots{z-index:3;justify-content:center;gap:9px;display:flex;position:absolute;bottom:56px;left:0;right:0}.cover-dot{cursor:pointer;background:#d4e7f433;border:0;border-radius:3px;width:6px;height:6px;padding:0;transition:width .3s,background .3s}.cover-shelf.no-anim~.cover-dots .cover-dot{transition:none}.cover-dot[data-active]{background:var(--accent);width:26px}.cover-dot[data-active][data-gold]{background:var(--gold)}.cover-dot:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cover-footer{z-index:3;justify-content:space-between;align-items:center;padding:0 clamp(20px,4vw,40px);display:flex;position:absolute;bottom:14px;left:0;right:0}.cover-hints{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);gap:24px;font-size:11px;display:flex}.cover-hint{align-items:center;gap:8px;display:flex}.cover-hint-key{border:1px solid var(--line);border-radius:5px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 3px;font-size:10px;display:inline-flex}.cover-hint-key.accent{border-color:var(--accent);color:var(--accent);border-radius:50%}.cover-hint-text{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);opacity:.7;font-size:11px}@media (prefers-reduced-motion:reduce){.cover-strip,.cover-tile,.cover-dot{transition:none!important}}.form{gap:12px;max-width:620px;margin:20px 0;display:grid}.field{gap:5px;display:grid}.field span{font-family:var(--mono);color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;font-size:12px}.field input,.field select{background:var(--ink-2);color:var(--text);border:1px solid var(--line);font-family:var(--font);border-radius:6px;padding:9px 11px;font-size:14px}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px}.steps{flex-wrap:wrap;gap:10px;margin:18px 0;display:flex}.steps button{background:var(--accent);color:#06101f;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:0;border-radius:6px;padding:11px 18px;font-size:13px}.steps button:disabled{opacity:.5;cursor:default}.progress{margin:20px 0}.progress pre,pre.stderr{border:1px solid var(--line);font-family:var(--mono);color:var(--text-dim);background:#06101f;border-radius:8px;max-height:320px;padding:12px 14px;font-size:12.5px;overflow-x:auto}pre.stderr{color:#f0c9c9}h2.meta{letter-spacing:.12em;text-transform:uppercase;margin:26px 0 8px;font-size:12px}
