:root{--bg: #10141c;--panel: #1d2533;--panel-2: #283246;--text: #eef2f8;--muted: #9aa6ba;--accent: #f2c14e;--danger: #e8004f;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font:15px/1.35 system-ui,-apple-system,sans-serif;overscroll-behavior:none;user-select:none;-webkit-user-select:none;touch-action:none}#app{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column}#hud{display:flex;align-items:center;gap:10px;padding:calc(8px + var(--safe-top)) 10px 8px;white-space:nowrap;background:var(--panel);border-bottom:1px solid #000}#hud-team{display:flex;align-items:center;gap:6px;font-weight:700}#team-dot{width:12px;height:12px;border-radius:50%;background:#0065c6;box-shadow:0 0 0 2px #0008}#hud-gold,#hud-turn{color:var(--muted)}#gold{color:var(--accent);font-weight:700}#hud-turn{margin-right:auto}#hud .btn{padding:8px 12px}#map{flex:1;width:100%;min-height:0;display:block}#info{min-height:64px;padding:8px 12px calc(8px + var(--safe-bottom));background:var(--panel);border-top:1px solid #000;font-size:13px}#info .row{display:flex;gap:12px;flex-wrap:wrap;align-items:baseline}#info b{font-size:15px}#info .muted{color:var(--muted)}#info .hint{color:var(--accent)}#info .btn{margin-top:6px;width:100%}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:10px;padding:8px 14px;background:var(--panel-2);color:var(--text);font:inherit;font-weight:600;min-height:40px}.btn:active{filter:brightness(1.3)}.btn:disabled{opacity:.4}.btn.primary{background:var(--accent);color:#1a1a1a}.btn.big{min-width:200px;min-height:50px;font-size:18px;background:var(--accent);color:#1a1a1a}.sheet{position:fixed;left:0;right:0;bottom:0;max-height:70%;overflow-y:auto;padding:12px 12px calc(12px + var(--safe-bottom));background:var(--panel);border-top:2px solid var(--accent);border-radius:14px 14px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;z-index:10}.sheet h2{grid-column:1 / -1;margin:0 0 4px;font-size:16px}.sheet .btn.primary{grid-column:span 2}.sheet .buy{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px}.sheet .buy canvas{width:48px;height:48px;image-rendering:pixelated}.sheet .buy small{color:var(--accent)}.hidden{display:none!important}#banner{position:fixed;left:50%;top:40%;transform:translate(-50%,-50%);padding:14px 26px;border-radius:12px;background:#000c;font-size:22px;font-weight:800;text-align:center;pointer-events:none;z-index:20}#banner small{display:block;font-size:14px;color:var(--accent);font-weight:600}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:safe center;gap:12px;padding:calc(24px + var(--safe-top)) 16px calc(24px + var(--safe-bottom));overflow-y:auto;background:radial-gradient(circle at 50% 30%,#2a3a5c,var(--bg) 70%);text-align:center}.overlay h1{margin:0;font-size:24px}.overlay label{display:flex;gap:10px;align-items:center;justify-content:space-between;width:240px}.overlay select{font:inherit;padding:6px 10px;border-radius:8px;background:var(--panel-2);color:var(--text);border:0}.overlay .note,.overlay .map-name{color:var(--muted);font-size:13px;max-width:300px;margin:0}#logo{width:min(80vw,320px);image-rendering:pixelated}.overlay .btn.big{width:240px}.slots{display:flex;flex-direction:column;gap:8px;width:min(100%,340px)}.slot{display:grid;grid-template-columns:14px 1fr auto auto;gap:8px;align-items:center;text-align:left}.slot .dot{width:14px;height:14px;border-radius:50%;box-shadow:0 0 0 2px #0008}#hud #menu-btn{padding:8px 12px}#fade{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;opacity:0;pointer-events:none;transition:opacity .5s;z-index:15}#fade.on{opacity:1}#dialog{position:fixed;left:8px;right:8px;bottom:calc(8px + var(--safe-bottom));display:flex;gap:10px;align-items:flex-start;padding:10px;background:#0d1424f2;border:2px solid var(--accent);border-radius:12px;z-index:25}#dialog canvas{width:72px;height:72px;flex:none;image-rendering:pixelated;border-radius:8px;background:#1d2533}#dialog b{color:var(--accent)}#dialog p{margin:4px 0;font-size:15px}#dialog small,#story small{color:var(--muted)}#story{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:safe center;gap:16px;padding:calc(24px + var(--safe-top)) 20px calc(24px + var(--safe-bottom));background:#000;overflow-y:auto;text-align:center}#story img{width:min(100%,480px);image-rendering:pixelated;border-radius:6px}#story p{max-width:480px;margin:0;font-size:16px;line-height:1.5;font-family:Georgia,serif}#story .credits{font-family:inherit;font-size:15px}.sheet p.text{grid-column:1 / -1;margin:0}.missions{display:flex;flex-direction:column;gap:8px;width:min(100%,340px)}.missions .btn{text-align:left}.missions .btn small{display:block;color:var(--muted);font-weight:400}.sheet input.code{grid-column:1 / -1;font:600 22px/1 ui-monospace,monospace;letter-spacing:4px;text-align:center;padding:10px;border-radius:10px;border:1px solid #000;background:var(--bg);color:var(--text)}
