:root{--bg-dark:#14141a;--bg-card:#1a1a24;--bg-surface:#1e1e2a;--bg-panel:#2a2a32;--border-dim:#3a3a44;--border-bright:#5b8def;--text-primary:#ecf0f4;--text-dim:#8a94a0;--text-muted:#5a6270;--gold:#d4a843;--gold-dim:#d4a8434d;--red:#f33;--green:#22c55e;--blue:#5b8def;--hp-green:#22c55e;--hp-yellow:#fc0;--hp-red:#f33;--energy-color:#d4a843;--font-pixel:"Press Start 2P", monospace;--suit-tickets:#ff6b6b;--suit-bureaucracy:#6bcb77;--suit-meetings:#4d96ff;--suit-orgchart:#ffd93d;--suit-tickets-bg:#ff6b6b1f;--suit-bureaucracy-bg:#6bcb771f;--suit-meetings-bg:#4d96ff1f;--suit-orgchart-bg:#ffd93d1f;--radius-sm:6px;--radius-md:12px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-dark);color:var(--text-primary);font-family:var(--font-pixel);-webkit-user-select:none;user-select:none;overflow:hidden}.game-screen{flex-direction:column;display:none;position:absolute;inset:0;overflow-y:auto}.game-screen.active{display:flex}.btn{font-family:var(--font-pixel);border:2px solid var(--gold);color:var(--gold);cursor:pointer;text-transform:uppercase;letter-spacing:1px;background:0 0;padding:12px 24px;font-size:10px;transition:all .15s}.btn:hover{background:var(--gold);color:var(--bg-dark)}.btn:disabled{opacity:.3;pointer-events:none}.btn-small{padding:8px 16px;font-size:8px}.btn-danger{border-color:var(--red);color:var(--red)}.btn-danger:hover{background:var(--red);color:#fff}.title-screen{text-align:center;justify-content:center;align-items:center;gap:20px;padding:20px}.title-logo{color:var(--gold);text-shadow:0 0 20px #d4a8434d;font-size:clamp(16px,3vw,28px)}.title-subtitle{color:var(--text-dim);font-size:clamp(8px,1.2vw,12px)}.title-input{font-family:var(--font-pixel);background:var(--bg-card);border:2px solid var(--border-dim);color:var(--text-primary);text-align:center;width:260px;padding:10px 16px;font-size:10px}.title-input:focus{border-color:var(--gold);outline:none}.title-buttons{flex-direction:column;align-items:center;gap:12px;display:flex}.map-screen{align-items:center;gap:12px;padding:16px}.map-header{width:100%;max-width:500px;color:var(--text-dim);justify-content:space-between;padding:8px 0;font-size:8px;display:flex}.map-stats{flex-wrap:wrap;gap:16px;display:flex}.map-nodes{flex-direction:column;gap:8px;width:100%;max-width:500px;display:flex}.map-node{border:2px solid var(--border-dim);background:var(--bg-card);cursor:default;align-items:center;gap:12px;padding:10px 16px;font-size:8px;display:flex}.map-node.completed{border-color:var(--green);opacity:.5}.map-node.current{border-color:var(--gold);cursor:pointer;animation:1.5s infinite pulse-border}.map-node.locked{opacity:.3}.map-node-type{min-width:60px;font-size:10px}.map-node-type.elite{color:var(--gold)}.map-node-type.boss{color:var(--red)}.map-perks{flex-wrap:wrap;gap:6px;font-size:7px;display:flex}.map-perk{background:var(--gold-dim);color:var(--gold);border-radius:3px;padding:3px 6px}@keyframes pulse-border{0%,to{border-color:var(--gold)}50%{border-color:var(--gold-dim)}}.hp-bar{background:var(--bg-dark);border:1px solid var(--border-dim);width:100%;height:10px;overflow:hidden}.hp-bar-fill{background:var(--hp-green);height:100%;transition:width .3s}.combat-screen{gap:6px;padding:8px}.combat-top{color:var(--text-dim);justify-content:space-between;padding:4px 8px;font-size:8px;display:flex}.combat-enemies{flex-wrap:wrap;justify-content:center;gap:8px;padding:8px;display:flex}.enemy-card{border:2px solid var(--border-dim);background:var(--bg-card);cursor:pointer;flex-direction:column;gap:4px;min-width:140px;max-width:180px;padding:10px;font-size:7px;display:flex}.enemy-card.targeted{border-color:var(--red)}.enemy-card.dead{opacity:.3;pointer-events:none}.enemy-name{color:var(--text-primary);font-size:9px}.enemy-dept{color:var(--text-muted)}.enemy-intent{color:var(--gold);margin-top:4px;font-size:8px}.enemy-statuses{flex-wrap:wrap;gap:4px;display:flex}.status-badge{border-radius:3px;padding:2px 4px;font-size:6px}.status-badge.buff{color:var(--green);background:#22c55e33}.status-badge.debuff{color:var(--red);background:#f333}.combat-player{background:var(--bg-surface);border:1px solid var(--border-dim);justify-content:space-between;align-items:center;padding:6px 12px;font-size:8px;display:flex}.combat-player-stats{align-items:center;gap:16px;display:flex}.combat-hand{flex-wrap:wrap;justify-content:center;gap:6px;min-height:120px;padding:8px;display:flex}.hand-card{border:2px solid var(--border-dim);background:var(--bg-card);cursor:pointer;flex-direction:column;gap:3px;width:120px;padding:8px;font-size:7px;transition:all .15s;display:flex}.hand-card:hover{border-color:var(--text-dim);transform:translateY(-4px)}.hand-card.unplayable{opacity:.4;cursor:default}.hand-card.unplayable:hover{border-color:var(--border-dim);transform:none}.hand-card-top{justify-content:space-between;align-items:center;display:flex}.hand-card-cost{background:var(--energy-color);color:var(--bg-dark);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:8px;font-weight:700;display:flex}.hand-card-suit{font-size:8px;font-weight:700}.hand-card-name{color:var(--text-primary);font-size:8px}.hand-card-meta{color:var(--text-muted);justify-content:space-between;display:flex}.hand-card-desc{color:var(--text-dim);margin-top:2px;font-size:6px}.hand-card-exhaust{color:var(--red);letter-spacing:1px;opacity:.8;font-size:5px}.val-buffed{color:var(--green)}.val-debuffed{color:var(--red)}.combat-actions{justify-content:center;padding:4px;display:flex}.combat-announcer{text-align:center;color:var(--gold);min-height:24px;padding:6px;font-size:9px}.tag-phase{flex-direction:column;align-items:center;gap:10px;padding:12px;display:flex}.tag-header{color:var(--gold);font-size:12px}.tag-cards{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.tag-card{border:2px solid var(--border-dim);background:var(--bg-card);cursor:pointer;text-align:center;min-width:100px;padding:8px 12px;font-size:8px;transition:all .15s}.tag-card.tagged{border-color:var(--gold);background:var(--gold-dim)}.tag-preview{text-align:center;color:var(--text-dim);padding:8px;font-size:9px}.tag-preview .style-name{color:var(--gold);font-size:10px}.tag-preview .profit-preview{color:var(--green);font-size:12px}.reward-screen{align-items:center;gap:12px;padding:16px;overflow-y:auto}.reward-section{border:1px solid var(--border-dim);background:var(--bg-surface);width:100%;max-width:600px;padding:12px}.reward-title{color:var(--gold);margin-bottom:8px;font-size:10px}.reward-cards{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.reward-card{border:2px solid var(--border-dim);background:var(--bg-card);cursor:pointer;flex-direction:column;gap:3px;min-width:130px;max-width:160px;padding:10px;font-size:7px;display:flex}.reward-card:hover{border-color:var(--gold)}.reward-card.selected{border-color:var(--green);opacity:.5;pointer-events:none}.reward-perk{border:2px solid var(--border-dim);background:var(--bg-card);cursor:pointer;padding:8px;font-size:7px}.reward-perk:hover{border-color:var(--gold)}.reward-perk .perk-rarity{text-transform:uppercase;font-size:6px}.reward-perk .perk-rarity.common{color:var(--text-dim)}.reward-perk .perk-rarity.uncommon{color:var(--blue)}.reward-perk .perk-rarity.rare{color:var(--gold)}.end-screen{text-align:center;justify-content:center;align-items:center;gap:16px;padding:24px}.end-title{font-size:clamp(14px,2.5vw,22px)}.end-stats{color:var(--text-dim);flex-direction:column;gap:8px;font-size:9px;display:flex}.end-grade{color:var(--gold);font-size:32px}
