:root{--bg: #07060a;--panel: rgba(12, 10, 14, .88);--gold: #e8c56b;--gold-soft: #f4e3b0;--pink: #ff6ad5;--line: rgba(232, 197, 107, .28);--text: #f7f1e4;--muted: rgba(247, 241, 228, .62);--serif: "IBM Plex Serif", Georgia, serif;--sans: "IBM Plex Sans", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--sans);color:var(--text);background:var(--bg)}.app{height:100%;display:grid;grid-template-columns:1fr minmax(320px,420px)}.stage{position:relative;overflow:hidden}.stage canvas{display:block;width:100%!important;height:100%!important}.hud{position:absolute;left:16px;top:16px;z-index:4;display:flex;flex-direction:column;gap:10px;max-width:min(520px,70vw);padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:#07060a9e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{font-family:var(--serif);letter-spacing:.28em;font-size:13px}.pills{display:flex;flex-wrap:wrap;gap:6px}.pill{border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:11px;color:var(--muted)}.pill.ok{color:var(--gold-soft);border-color:#e8c56b80}.pill.gold{color:var(--gold-soft)}.pill.pink{color:#ffc3ec;border-color:#ff6ad566}.eras{position:absolute;left:16px;right:16px;bottom:14px;z-index:4;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 32px)}.eras button{font-family:var(--sans);font-size:11px;color:var(--muted);background:#07060ab3;border:1px solid var(--line);border-radius:999px;padding:5px 10px;cursor:pointer}.eras button.on{color:var(--gold-soft);border-color:#e8c56ba6;background:#e8c56b1f}.eraMark{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}.lineage{margin:10px 0}.lineage b{display:block;font-size:11px;color:var(--gold-soft);margin-bottom:6px}.path{display:flex;flex-wrap:wrap;gap:4px}.chip{font-family:var(--sans);font-size:11px;color:var(--text);background:#ffffff0a;border:1px solid var(--line);border-radius:999px;padding:4px 8px;cursor:pointer}.chip.here{border-color:#ff6ad580;color:var(--gold-soft)}.chip em{color:var(--muted);font-style:normal}.nodeLabel.fault{border-color:#ff6ad58c;color:#ffd6f3}.toast{position:absolute;left:16px;bottom:72px;z-index:5;max-width:min(420px,80vw);padding:10px 12px;border-radius:12px;border:1px solid rgba(255,106,213,.4);background:#140810db;font-size:13px}.panel{height:100%;overflow:auto;padding:18px 16px 28px;border-left:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.panelHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}h1,h2,h3{font-family:var(--serif);font-weight:500;margin:0 0 8px}h1{font-size:22px}.panelHead p,.muted{color:var(--muted);font-size:13px;line-height:1.45}.tabs{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0}.tabs button,.ghost,.stack button,.card button,.row{font-family:var(--sans);cursor:pointer}.tabs button,.ghost,.stack button,.card button{border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--text);padding:7px 12px}.tabs button.on,.stack button{background:linear-gradient(135deg,#e8c56b2e,#ff6ad529);border-color:#e8c56b8c}.tabs.mini{margin:0 0 8px}input,textarea{width:100%;margin:0 0 10px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:#ffffff0a;color:var(--text);font-family:var(--sans)}.stack{display:grid;gap:8px}.card{padding:12px;border-radius:16px;border:1px solid var(--line);background:#ffffff08;margin:10px 0}.card.featured h2{color:var(--gold-soft)}.tags{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 12px}.tags span{font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 8px}.list{display:grid;gap:6px}.row{display:flex;justify-content:space-between;gap:8px;width:100%;text-align:left;padding:9px 10px;border-radius:12px;border:1px solid transparent;background:#ffffff08;color:var(--text)}.row.static{cursor:default}.row.sel,.row:hover{border-color:var(--line)}.row em{color:var(--muted);font-style:normal;font-size:11px}.admin h3{margin-top:16px;font-size:14px;color:var(--gold)}.stats{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;color:var(--gold-soft)}.nodeLabel{pointer-events:none;white-space:nowrap;font-size:11px;letter-spacing:.04em;color:#fff8e6;padding:3px 8px;border-radius:999px;background:#0c0a0eb8;border:1px solid rgba(232,197,107,.35)}@media (max-width: 900px){.app{grid-template-columns:1fr;grid-template-rows:48vh 1fr}.panel{border-left:0;border-top:1px solid var(--line)}}
