:root{color-scheme:dark;--bg:#06100b;--panel:#0a1b12;--panel2:#0d2418;--line:#28543c;--text:#c2f7d3;--muted:#78a889;--accent:#70ffa4;--amber:#ffd27b;--danger:#ff8e8e;--shadow:0 18px 60px rgba(0,0,0,.32)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -20%,#173d28 0,#08150e 42%,#050c08 100%);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}.app{width:min(1180px,calc(100% - 28px));margin:22px auto 50px}.topbar{display:flex;justify-content:space-between;align-items:end;gap:24px;padding:8px 2px 17px;border-bottom:1px solid var(--line)}h1{margin:0;font-size:clamp(1.65rem,4vw,3rem);letter-spacing:.15em;line-height:1}.eyebrow,.subtitle{color:var(--muted);margin:.4rem 0 0}.eyebrow{font-size:.72rem;letter-spacing:.14em}.save-tools{display:flex;gap:8px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px;margin:14px 0}.stat{min-width:0;padding:10px 11px;background:rgba(10,27,18,.92);border:1px solid var(--line);border-radius:8px}.stat span{display:block;font-size:.68rem;color:var(--muted);text-transform:uppercase}.stat strong{display:block;margin-top:2px;font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,.85fr);gap:14px}.panel{background:linear-gradient(180deg,rgba(12,32,21,.96),rgba(7,20,13,.96));border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow)}.main-panel{padding:18px}.scene{margin:0;min-height:390px;white-space:pre-wrap;overflow:auto;line-height:1.35;font-size:clamp(.78rem,1.45vw,1rem);color:#d8ffe4}.actions{display:flex;flex-wrap:wrap;gap:9px;border-top:1px dashed var(--line);padding-top:14px;margin-top:14px}.side-panel{overflow:hidden}.tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.tabs button{border:0;border-right:1px solid var(--line);border-radius:0;padding:12px 6px;font-size:.76rem}.tabs button:last-child{border-right:0}.tabs button.active{background:var(--accent);color:#062010}.tab-content{max-height:590px;overflow:auto;padding:14px}.tab-content h2{margin:0 0 12px;font-size:1rem;letter-spacing:.08em}button{font:inherit;color:var(--text);background:#10291b;border:1px solid var(--line);border-radius:7px;padding:10px 12px;cursor:pointer;transition:transform .12s,border-color .12s,background .12s}button:hover:not(:disabled){border-color:var(--accent);background:#173a25;transform:translateY(-1px)}button:disabled{opacity:.42;cursor:not-allowed}.primary{background:var(--accent);border-color:var(--accent);color:#05200f;font-weight:800}.danger{border-color:#6d3333;color:var(--danger)}.location-card,.upgrade-card{display:block;width:100%;text-align:left;margin-bottom:9px;padding:12px}.location-card strong,.location-card span,.location-card small,.upgrade-card strong,.upgrade-card span,.upgrade-card small{display:block}.location-card span,.upgrade-card span{margin-top:4px;color:var(--muted);font-size:.78rem}.location-card small,.upgrade-card small{margin-top:7px;color:#9dcaae;line-height:1.35}.location-card.selected{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.upgrade-card.owned{border-color:#3d7354}.archive-card{padding:12px;border:1px solid var(--line);border-radius:7px;margin-bottom:9px;background:#091a11}.archive-card p{color:#a8d9b8;line-height:1.45;margin:.5rem 0 0}.muted{color:var(--muted);font-size:.82rem}.log-list p{padding:9px 0;border-bottom:1px dotted #183b29;margin:0;color:#9bc9aa;line-height:1.4}.log-list p.latest{color:var(--accent)}.complete{color:var(--amber);font-size:.85rem}.footer{text-align:center;color:var(--muted);font-size:.72rem;margin-top:16px}@media(max-width:1000px){.stats{grid-template-columns:repeat(5,1fr)}.workspace{grid-template-columns:1fr}.tab-content{max-height:none}}@media(max-width:650px){.app{width:min(100% - 16px,1180px);margin-top:10px}.topbar{align-items:start;flex-direction:column}.stats{grid-template-columns:repeat(3,1fr)}.stat{padding:9px}.scene{min-height:330px}.tabs{grid-template-columns:repeat(2,1fr)}.tabs button:nth-child(2){border-right:0}.tabs button:nth-child(-n+2){border-bottom:1px solid var(--line)}}
