@import"https://fonts.googleapis.com/css2?family=Antonio:wght@300;400;500;600;700&family=Space+Grotesk:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@300;400;500;600&display=swap";:root{--lc-amber: #FF9C42;--lc-gold: #FFC773;--lc-peach: #F2A37A;--lc-rose: #C97C9E;--lc-lilac: #B492C8;--lc-steel: #8E9BC4;--lc-ice: #AFC8E8;--lc-red: #D4604F;--lc-cream: #F4E3C8;--lc-ink: #07080C;--lc-panel: #0C0E14;--lc-dim: #5A607A;--map-player: #FFB45C;--map-enemy: #D4604F;--map-neutral: #7E88A8;--map-grid: #232838;--line: #1A1E2B;--line-soft: #14171F;--f-lcars: "Antonio", sans-serif;--f-grot: "Space Grotesk", sans-serif;--f-mono: "IBM Plex Mono", monospace;--fg-muted: var(--lc-dim);--fg: var(--lc-cream);--rail-w: 150px;--bar-h: 22px;--elbow-h: 64px}*{box-sizing:border-box}html,body,#app{margin:0;padding:0;height:100%;background:var(--lc-ink);color:var(--lc-cream);font-family:var(--f-grot)}.lc-num{font-family:var(--f-lcars);font-variant-numeric:tabular-nums;letter-spacing:.08em}.mono{font-family:var(--f-mono)}#app{position:relative;height:100%;overflow:hidden}.elbow{position:absolute;left:0;top:0;width:calc(var(--rail-w) + 90px);height:var(--elbow-h);background:var(--lc-amber);border-top-left-radius:34px}.elbow-cut{position:absolute;left:var(--rail-w);top:var(--bar-h);width:130px;height:calc(var(--elbow-h) - var(--bar-h));background:var(--lc-ink);border-top-left-radius:28px}.segbar{position:absolute;left:calc(var(--rail-w) + 94px);top:0;right:16px;height:var(--bar-h);display:flex;gap:4px}.segbar .seg-steel{flex:2.2;background:var(--lc-steel)}.segbar .seg-cream{flex:.4;background:var(--lc-cream)}.segbar .seg-rose{flex:3;background:var(--lc-rose)}.segbar .seg-amber{flex:1.2;background:var(--lc-amber);border-radius:0 999px 999px 0}.head-right{position:absolute;right:28px;top:30px;font-family:var(--f-lcars);text-transform:uppercase;color:var(--lc-gold);font-size:18px;letter-spacing:.12em;font-weight:600}#rail{position:absolute;left:0;top:calc(var(--elbow-h) + 6px);width:var(--rail-w);bottom:0;display:flex;flex-direction:column;gap:5px}#rail .brand{font-family:var(--f-lcars);color:var(--lc-amber);font-size:20px;font-weight:700;letter-spacing:.12em;padding:0 12px 8px 0;text-align:right}#rail .nav-btn{height:52px;display:flex;align-items:flex-end;justify-content:flex-end;padding:0 12px 6px 0;font-family:var(--f-lcars);font-size:14px;font-weight:600;letter-spacing:.06em;color:#08090c;background:var(--lc-amber);opacity:.55;cursor:pointer}#rail .nav-btn.rose{background:var(--lc-rose)}#rail .nav-btn.lilac{background:var(--lc-lilac)}#rail .nav-btn.steel{background:var(--lc-steel)}#rail .nav-btn.peach{background:var(--lc-peach)}#rail .nav-btn.active{background:var(--lc-gold);opacity:1}#rail .nav-btn:hover{opacity:.85}#rail .rail-spacer{flex:1;background:var(--lc-steel);opacity:.35}#rail .rail-badge{height:64px;background:var(--lc-amber);border-bottom-left-radius:34px;display:flex;align-items:center;justify-content:flex-end;padding:0 12px;font-family:var(--f-lcars);font-variant-numeric:tabular-nums;letter-spacing:.06em;color:#08090c;font-size:13px;font-weight:600;text-align:right}#content{position:absolute;left:calc(var(--rail-w) + 18px);top:calc(var(--elbow-h) + 14px);right:18px;bottom:14px;display:flex;flex-direction:column;min-height:0}.status-row{display:flex;align-items:center;gap:8px;margin-bottom:12px}#controls{display:flex;gap:8px;align-items:center}#controls input{background:#ffffff0a;color:var(--lc-cream);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-family:var(--f-mono);font-size:12px;width:150px}#controls input:focus{outline:none;border-color:var(--lc-gold)}#controls button{font-family:var(--f-lcars);text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-size:13px;border:none;border-radius:999px;padding:7px 16px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;color:#08090c;background:var(--lc-gold)}#controls button#generate-btn{background:var(--lc-amber)}#controls button:hover{filter:brightness(1.08)}#controls button:disabled{background:#ffffff0f;color:var(--lc-dim);cursor:not-allowed}.status-spacer{flex:1}.status-note{font-family:var(--f-mono);font-size:10.5px;color:var(--lc-dim)}.content-body{flex:1;display:flex;gap:14px;min-height:0;margin-top:6px}#canvas-host{flex:1;position:relative;overflow:auto;border:1px solid var(--line);border-radius:12px;background:radial-gradient(ellipse at 38% 30%,#0b0f1a,#04050a 70%);min-width:0}#canvas-host canvas{display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}#canvas-host .map-hint{position:absolute;left:10px;bottom:8px;font-family:var(--f-mono);font-size:10px;color:var(--lc-dim);pointer-events:none}#detail-panel{width:340px;display:flex;flex-direction:column;min-height:0;border:1.5px solid var(--lc-amber);border-radius:18px;position:relative;overflow:visible}#detail-panel .composer-head{position:absolute;top:-11px;left:16px;background:var(--lc-ink);padding:0 8px;font-family:var(--f-lcars);color:var(--lc-amber);font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}#detail-panel .ledger-body{flex:1;overflow:auto;padding:20px 16px 16px;font-family:var(--f-grot);font-size:13px}#detail-panel h2{margin:0 0 12px;font-family:var(--f-lcars);font-size:14px;color:var(--lc-cream);text-transform:uppercase;letter-spacing:.1em}#detail-panel h3{font-family:var(--f-lcars);letter-spacing:.06em;color:var(--lc-cream)}#detail-panel h4{font-family:var(--f-lcars);text-transform:uppercase;letter-spacing:.08em;color:var(--lc-steel)}#detail-body dl{display:grid;grid-template-columns:110px 1fr;gap:4px 10px;margin:0}#detail-body dt{font-family:var(--f-lcars);text-transform:uppercase;letter-spacing:.06em;font-size:11px;color:var(--lc-steel)}#detail-body dd{margin:0;font-family:var(--f-mono);font-size:12px;color:var(--lc-cream);word-break:break-word}
