:root{--bg:#000;--panel-2:#000;--panel:#0b0b0a;--border:#2b2925;--text:#ece7da;--muted:#8b8574;--accent:#ffb000;--accent-dim:#cc8a00;--warn:#ff6a2b;--danger:#ff6b6b;--font-pixel:"Press Start 2P", ui-monospace, monospace;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:0 0;margin:8px 0}::-webkit-scrollbar-thumb{background:#3a362e padding-box padding-box;border:4px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#ffb00073 padding-box padding-box}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:#3a362e transparent}}html,body,#app{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-mono);-webkit-tap-highlight-color:transparent;margin:0;font-size:13px;overflow:hidden}:focus{outline:none}:focus-visible{outline:1px solid var(--accent);outline-offset:1px}button,select,input{font-family:var(--font-mono);font-size:13px}.shell{background:var(--panel);flex-direction:column;height:100%;display:flex}header.top{flex-shrink:0;align-items:center;gap:14px;padding:8px 14px;display:flex}header.top h1{font-family:var(--font-pixel);letter-spacing:-.5px;color:var(--accent);text-shadow:0 0 14px #ffb00080;white-space:nowrap;margin:0;font-size:12px}.clock{font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}.clock .yr{color:var(--accent);font-weight:700}.counts{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;gap:12px;font-size:12px;display:flex;overflow:hidden}.counts b{color:var(--text);font-weight:500}.spacer{margin-left:auto}.controls{flex-shrink:0;align-items:center;gap:6px;display:flex}.speeds{align-items:center;gap:4px;margin-right:4px;display:inline-flex}.btn{background:var(--panel-2);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:6px 11px;transition:background .12s,border-color .12s,color .12s}.btn:hover{border-color:var(--accent-dim)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#000;font-weight:600}.btn.primary:hover{background:var(--accent-dim);border-color:var(--accent-dim)}.btn.danger:hover{border-color:var(--danger);color:var(--danger)}.btn.on{border-color:var(--accent);color:var(--accent)}.chip{background:var(--bg);border:1px solid var(--border);color:var(--muted);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:999px;padding:3px 9px;font-size:11px;transition:border-color .12s,color .12s}.chip:hover{color:var(--text)}.chip.on{border-color:var(--accent);color:var(--accent);font-weight:700}.body{flex:1;min-height:0;display:flex}.stage{background:var(--bg);border-radius:16px;flex:1;min-width:0;margin:10px;position:relative;overflow:hidden}#map{cursor:crosshair;width:100%;height:100%;display:block}body.resizing #map{pointer-events:none}body.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.resizer{cursor:col-resize;flex-shrink:0;justify-content:center;align-items:center;width:8px;display:flex}.resizer:before{content:"";background:var(--border);border-radius:999px;width:3px;height:26px;transition:background .12s}.resizer:hover:before{background:var(--accent-dim)}.sidebar{flex-direction:column;flex-shrink:0;gap:12px;width:380px;min-height:0;padding:12px;display:flex}.panel{background-color:var(--panel-2);border-radius:8px;flex-direction:column;min-height:0;padding-top:10px;padding-right:10px;display:flex}.panel.grow{flex:1}.panel-head{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:9px 12px;font-size:11px;display:flex}.panel-head:before{content:">";color:var(--accent);transition:transform .15s;display:inline-block}.panel.collapsed .panel-head:before{transform:rotate(90deg)}.panel.collapsed .panel-body{display:none}.panel-body{scrollbar-gutter:stable;min-height:0;padding:2px 16px 18px;overflow-y:auto}.chronicle{flex-direction:column;gap:2px;font-size:12px;line-height:1.5;display:flex}.ev{color:var(--muted);cursor:pointer;border:1px solid #0000;border-radius:6px;padding:4px 6px;transition:background .12s,border-color .12s,color .12s}.ev:hover{background:var(--panel-2);color:var(--text)}.ev.sev2{color:var(--text)}.ev.sev3{color:#ffcf5a}.ev.active{border-color:var(--accent);background:var(--panel-2)}.era{border:1px dashed var(--border);color:var(--muted);border-radius:6px;margin:8px 0 4px;padding:6px 8px;font-size:11px}.era b{color:var(--accent);font-weight:500}.follow-off{align-self:center;position:sticky;bottom:0}.insp h2{font-family:var(--font-pixel);color:var(--accent);text-shadow:0 0 10px #ffb00066;letter-spacing:-.5px;margin:4px 0 10px;font-size:11px;line-height:1.6}.insp .sub{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:12px 0 6px;font-size:11px}.kv{font-variant-numeric:tabular-nums;grid-template-columns:minmax(0,1fr) minmax(0,auto);gap:2px 12px;font-size:12px;display:grid}.kv span:nth-child(2n){text-align:right;overflow-wrap:anywhere}.kv span:nth-child(odd){color:var(--muted)}.kv span:nth-child(2n){color:var(--text)}.bars{flex-direction:column;gap:4px;display:flex}.bar{color:var(--muted);grid-template-columns:84px 1fr;align-items:center;gap:8px;font-size:11px;display:grid}.bar .track{background:var(--panel-2);border:1px solid var(--border);border-radius:999px;height:6px;overflow:hidden}.bar .fill{background:var(--accent);opacity:.75;height:100%;display:block}.tags{flex-wrap:wrap;gap:4px;display:flex}.tag{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:10px}.link{color:var(--accent);cursor:pointer;border-bottom:1px dotted #ffb00066;text-decoration:none}.link:hover{color:var(--text)}.empty{color:var(--muted);padding:12px 0;font-size:12px}.deed{color:var(--muted);border-bottom:1px solid #2b292580;padding:2px 0;font-size:11px}.tip{pointer-events:none;border:1px solid var(--border);color:var(--text);white-space:nowrap;z-index:5;opacity:0;background:#020202eb;border-radius:6px;padding:6px 8px;font-size:11px;transition:opacity .12s;position:absolute}.tip.show{opacity:1}.tip .dim{color:var(--muted)}.stats{background:var(--bg);flex-direction:column;gap:10px;padding:14px;display:none;position:absolute;inset:0;overflow-y:auto}.stats.show{display:flex}.chartbox{border:1px solid var(--border);background:var(--panel-2);border-radius:9px;padding:8px 10px}.chartbox h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 6px;font-size:11px;font-weight:400}.chartbox canvas{width:100%;height:120px;display:block}.modal-back{z-index:20;background:#020408a8;justify-content:center;align-items:center;animation:.16s ease-out fade;display:none;position:fixed;inset:0}.modal-back.show{display:flex}.modal{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:min(460px,100vw - 40px);padding:18px;animation:.19s cubic-bezier(.2,.8,.2,1) pop;box-shadow:0 18px 60px #0000008c}.modal h2{font-family:var(--font-pixel);color:var(--accent);text-shadow:0 0 10px #ffb00066;letter-spacing:-.5px;margin:0 0 14px;font-size:12px;line-height:1.7}.modal p{color:var(--muted);margin:0 0 12px;font-size:12px;line-height:1.6}.modal .row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.modal input[type=text],.modal input[type=number]{background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:4px;flex:1;min-width:0;padding:6px 8px}.modal input:focus{border-color:var(--accent)}.field-label{text-transform:uppercase;letter-spacing:.08em;width:44px;color:var(--muted);flex-shrink:0;font-size:11px}.modal .actions{justify-content:flex-end;gap:8px;display:flex}.worlds{flex-direction:column;gap:6px;max-height:220px;margin-bottom:14px;display:flex;overflow-y:auto}.world-row{background:var(--panel-2);cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:12px;display:flex}.world-row:hover{border-color:var(--border)}.world-row .meta{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.notice{border:1px solid var(--warn);color:#ffae85;background:#ff6a2b17;border-radius:6px;margin-bottom:12px;padding:8px 10px;font-size:12px}.intro{background:var(--bg);z-index:40;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:fixed;inset:0}.intro-title{font-family:var(--font-pixel);color:var(--accent);letter-spacing:-.5px;font-size:15px;animation:2.4s ease-in-out infinite alternate glow}.intro-sub{color:var(--muted);font-size:12px}body.booted .intro{animation:.6s cubic-bezier(.2,.9,.2,1) .5s forwards liftOff}body.booting #app{opacity:0}body.booted #app{animation:.4s ease-out .7s forwards fadeIn}@keyframes glow{0%{text-shadow:0 0 8px #ffb00059}to{text-shadow:0 0 22px #ffb000bf}}@keyframes liftOff{to{opacity:0;visibility:hidden;transform:translateY(-24px)scale(.96)}}@keyframes fadeIn{to{opacity:1}}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(10px)scale(.97)}}@media (prefers-reduced-motion:reduce){.intro{display:none}body.booting #app,body.booted #app{opacity:1;animation:none}.intro-title,.modal,.modal-back{animation:none}}
