:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#05070f;--panel:#090d1ac7;--border:#1d2b47;--text:#c7d2ea;--muted:#64799f;--title:#7f97c4;--amber:#ffb454;--cyan:#5fd4f0;--steel:#34506e;--pink:#ff5e9c;--green:#58e0a2;--sun:#ffe14d;--moon:#f0f4fa;--saturn:#e3b34d;--font-ui:system-ui, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:14px;line-height:1.5}.app{max-width:1240px;margin:0 auto;padding:20px 20px 48px}.masthead{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:12px 24px;margin-bottom:20px;padding-bottom:12px;display:flex}.masthead h1{font:600 12px/1.4 var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--title);margin:0}.masthead .day{font:500 14px/1.4 var(--font-mono);color:var(--text);font-variant-numeric:tabular-nums}.masthead .sub{color:var(--muted);font:12px/1.4 var(--font-mono)}.grid{grid-template-columns:1fr;gap:20px;display:grid}@media (width>=900px){.grid{grid-template-columns:minmax(0,5fr) minmax(0,4fr)}.span2{grid-column:1/-1}}.panel{background:var(--panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;padding:16px 18px}.panel h2{font:600 11px/1.4 var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--title);justify-content:space-between;gap:12px;margin:0 0 12px;display:flex}.panel h2 .tag{color:var(--muted);letter-spacing:.04em;text-transform:none;font-weight:400}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.posture-name{font:600 34px/1.1 var(--font-mono);letter-spacing:.04em;margin:4px 0 2px}.posture-name.waiting{color:var(--steel)}.posture-name.clear{color:var(--cyan)}.posture-name.illuminate{color:var(--amber)}.posture-name.engage{color:var(--pink);text-shadow:0 0 20px #ff5e9c59}.posture-name.withdrawn{color:#7a4a5a}.badges{flex-wrap:wrap;gap:8px;margin:8px 0 14px;display:flex}.badge{font:600 11px/1 var(--font-mono);letter-spacing:.08em;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:5px 8px}.badge.on{color:var(--green);background:#1c4a3740;border-color:#1e4d3a}.badge.warn{color:var(--amber);background:#5a402033;border-color:#5a4020}.badge.off{color:#7a4a5a;border-color:#4a2a3a}.gauges{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.gauge{text-align:center}.gauge .label{font:600 11px/1.4 var(--font-mono);letter-spacing:.12em;color:var(--muted);text-transform:uppercase}.gauge .value{font:600 20px/1.2 var(--font-mono);font-variant-numeric:tabular-nums}.gauge .status{font:12px/1.4 var(--font-mono);color:var(--muted)}.eps{justify-content:center;gap:6px;margin:18px 0 10px;display:flex}.eps span{font:600 11px/1 var(--font-mono);letter-spacing:.08em;border:1px solid var(--border);color:var(--muted);border-radius:6px;padding:7px 9px}.eps span.on.active{color:var(--pink);background:#5a2a4440;border-color:#5a2a44}.eps span.on.passive{color:var(--cyan);background:#1e4a5a40;border-color:#1e4a5a}.eps span.on.withdrawn{color:#c07a90;background:#4a2a3a4d;border-color:#4a2a3a}.basis{font:11.5px/1.6 var(--font-mono);color:var(--muted);border-top:1px solid var(--border);margin-top:12px;padding-top:10px}.ring{width:100%;height:auto;display:block}.strip{padding-bottom:6px;overflow-x:auto}.strip svg{display:block}.legend{font:11px/1.4 var(--font-mono);color:var(--muted);flex-wrap:wrap;gap:6px 14px;margin-top:8px;display:flex}.legend i{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:5px;display:inline-block}.day-detail{font:12px/1.6 var(--font-mono);color:var(--text);border-top:1px solid var(--border);margin-top:10px;padding-top:8px}table.lineage{border-collapse:collapse;width:100%;font:11.5px/1.5 var(--font-mono)}table.lineage th,table.lineage td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;white-space:nowrap;text-overflow:ellipsis;max-width:320px;padding:4px 8px;overflow:hidden}table.lineage th{color:var(--muted);letter-spacing:.06em;background:#0a0f1d;font-weight:600;position:sticky;top:0}table.lineage tr.superseded td{color:var(--muted);text-decoration:line-through}.table-wrap{border:1px solid var(--border);border-radius:8px;max-height:420px;overflow:auto}.controls{font:12px/1.4 var(--font-mono);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}select,input,textarea,button{font:12px/1.4 var(--font-mono);color:var(--text);border:1px solid var(--border);background:#0a0f1d;border-radius:6px;padding:6px 8px}button{cursor:pointer;color:var(--cyan)}button:disabled{color:var(--muted);cursor:default}.events li{font:12px/1.6 var(--font-mono);border-bottom:1px solid var(--border);padding:4px 0;list-style:none}.events ul{margin:0;padding:0}.events .seam{color:var(--pink)}.form{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-bottom:8px;display:grid}.form label{font:11px/1.4 var(--font-mono);color:var(--muted);flex-direction:column;gap:4px;display:flex}.form .wide{grid-column:1/-1}.msg{font:12px/1.5 var(--font-mono);margin-top:6px}.msg.ok{color:var(--green)}.msg.err{color:var(--pink)}footer{color:var(--muted);font:11.5px/1.6 var(--font-mono);border-top:1px solid var(--border);margin-top:28px;padding-top:12px}
