:root{color-scheme:dark;--desk: #1c1612;--cork: #c4a574;--paper: #f4ead7;--ink: #2a241c;--muted: #6d6254;--line: #c8b89a;--blue: #3d78d8;--purple: #7a4ea8;--orange: #e08a2c;--codex: #1a8a86;--danger: #9d2c2c;--sweet: #2f8f5b;--teal: #1f6f62;font-family:IBM Plex Sans,Noto Sans TC,PingFang HK,sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{min-width:1100px;color:var(--ink);background:radial-gradient(circle at 80% 0%,rgba(255,196,120,.08),transparent 28%),linear-gradient(180deg,#241c17,var(--desk) 42%)}button,input{font:inherit;color:inherit}button{cursor:pointer}[hidden]{display:none!important}#topbar{padding:12px 16px 0}#topbar strong{font-size:32px;letter-spacing:.04em;color:#f3eadc}#hud-meters{padding:8px 16px 0}.meter-row{display:grid;grid-template-columns:1.35fr repeat(10,1fr);gap:6px;padding:10px;background:linear-gradient(#3a3128,#2c261f);border:1px solid #5a4a38;border-radius:10px 10px 4px 4px;box-shadow:inset 0 1px #ffffff14}.meter{background:var(--paper);border:1px solid #d7c7a8;border-radius:3px;padding:6px 7px 5px;min-height:68px;box-shadow:0 1px #00000040}.meter .k{color:var(--muted);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.meter .v{font-size:15px;margin-top:3px;color:var(--ink)}.meter .sub{color:var(--muted);font-size:10px;margin-top:2px}.meter .gold{color:#8a5a12}.meter.slow{box-shadow:inset 0 0 0 2px #c4552a}.meter.fast{box-shadow:inset 0 0 0 2px var(--danger)}.meter.sweet{box-shadow:inset 0 0 0 2px var(--sweet)}.meter-note{margin:6px 2px 0;color:#cbbba6;font-size:12px}.stars{letter-spacing:1px;color:#a15c12}.pace-track,.hall-track,.cost-track{position:relative;height:8px;margin-top:6px;background:#e7dcc6;border-radius:99px;overflow:hidden;border:1px solid #cbb892}.pace-track .sweet{position:absolute;top:0;bottom:0;background:#2f8f5b73}.pace-track .marker{position:absolute;top:-2px;width:3px;height:12px;background:var(--ink)}.hall-track .fill{height:100%;background:#c47a32}.dots{display:flex;gap:4px;margin-top:8px}.dots i{width:10px;height:10px;border-radius:50%;border:1px solid #8d7b62;display:block}.dots i.on{background:var(--teal);border-color:var(--teal)}#layout{display:flex;flex-direction:column;gap:12px;padding:12px 16px 24px}#orgchart{order:-1}#main-stage,#orgchart{border-radius:12px;padding:12px}#orgchart{background:radial-gradient(circle at 12% 18%,rgba(255,255,255,.18),transparent 16%),radial-gradient(circle at 82% 74%,rgba(0,0,0,.08),transparent 20%),repeating-linear-gradient(28deg,rgba(0,0,0,.035) 0 2px,transparent 2px 7px),var(--cork);border:8px solid #5c4632;box-shadow:0 16px 40px #00000059;color:var(--ink)}#main-stage{background:transparent;border:0;padding:0}.org-head,.stage-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-end}.org-head h2,.stage-head h2{margin:0;letter-spacing:.14em}.org-head p,.note,.hint-line,.nocancel{color:#4e4336;margin:4px 0 0;font-size:13px}.stage-head{color:#f3eadc}.stage-head p{color:#cbbba6;margin:4px 0 0;font-size:13px}.left{color:#f0d7a2;font-size:14px}.left strong{font-size:22px;color:#fff}.board{display:grid;grid-template-columns:5fr 92px 4fr;gap:10px;margin-top:10px;align-items:start}.tree{display:grid;gap:6px}.tree.you{grid-template-columns:repeat(5,1fr)}.tree.rival{grid-template-columns:repeat(4,1fr)}.ceo-col{display:flex;flex-direction:column;align-items:center;padding-top:4px}.board.dotted .ceo-col{outline:2px dashed var(--orange);outline-offset:4px;border-radius:8px}.node{border:1px solid #8d6b3e;background:#f7f1e4;border-radius:6px;padding:6px 8px;font-weight:750}.node.you,.node.rival{grid-column:1 / -1;text-align:left}.node.you{color:#1d4e8f}.node.rival{color:#5c2f86}.node.ceo{background:#2a241c;color:#f4ead7;border-color:#2a241c}.node span{display:block;font-weight:500;font-size:11px;color:var(--muted)}.dotted-note{font-size:11px;text-align:center;color:#4e4336;max-width:88px;margin:6px 0 0}.dotted-note.on{color:#8a3b12;font-weight:700}.seat{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;background:#fbf6ee;border:1px solid #e4d3b4;border-bottom-width:8px;border-radius:3px;padding:8px 2px 4px;min-height:70px;box-shadow:2px 3px #50321429;position:relative;color:var(--ink)}.seat:before{content:"";position:absolute;top:4px;width:7px;height:7px;border-radius:50%;background:#c23b3b}.seat.you.human{border-bottom-color:#8eb4ef}.seat.rival.human{border-bottom-color:#c3a4e4}.seat.hermes{border-bottom-color:var(--orange);background:#fff6ea}.seat.vacant{border-style:dashed;color:var(--muted)}.seat.eligible{outline:2px solid var(--teal)}.seat.source{outline:2px solid var(--orange)}.seat .nm{font-size:12px;font-weight:650}.tier{color:#8a4b10;font-size:11px;font-weight:700}.badge-c,.legend .badge-c{display:inline-grid;place-items:center;min-width:14px;height:14px;padding:0 3px;border-radius:50%;background:var(--codex);color:#fff;font-size:10px}.meeple{width:20px;height:24px;background:var(--blue);clip-path:polygon(50% 0,68% 10%,74% 26%,62% 30%,86% 52%,76% 100%,24% 100%,14% 52%,38% 30%,26% 26%,32% 10%);display:inline-block}.seat.rival .meeple,.meeple.rival{background:var(--purple)}.meeple.hex,.seat.hermes .meeple{background:var(--orange);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px;color:#3d342a;font-size:12px;align-items:center}.legend .meeple{margin-right:4px}.costs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}#cost-you,#cost-rival{background:#2a241c;color:#f4ead7;border-radius:8px;padding:8px 10px}.cost-label{display:flex;justify-content:space-between;font-size:13px}#cost-you .sub{color:#f0a35a}#cost-rival .sub{color:#e38b8b}.cost-track{background:#4a3d30;border-color:#4a3d30}.cost-track .fill{height:100%}.cost-track .fill.you{background:var(--blue)}.cost-track .fill.rival{background:var(--purple)}.action-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:8px}.action{text-align:left;background:var(--paper);border:2px solid #5c4632;border-radius:12px;padding:10px;box-shadow:3px 3px #1a120c;color:var(--ink)}.action:nth-child(1){background:#f3e2b0}.action:nth-child(2){background:#d9d3c7}.action:nth-child(3){background:#e7cbb6}.action:nth-child(4){background:#d5d5d2}.action:nth-child(5){background:#e7d0d0}.action.armed{outline:3px solid var(--teal)}.action .blurb{display:block;color:var(--muted);font-size:12px;margin:4px 0}.hints,.chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.hint,.chip{font-size:11px;border-radius:4px;padding:2px 6px;background:#ffffff8c;border:1px solid rgba(90,70,40,.35)}.action-grid.locked{opacity:.55}#preview-chips{margin-top:10px;padding:10px 12px;border-radius:8px;background:var(--paper);border:1px dashed #8d6b3e;color:var(--ink)}.confirm-line{margin:0 0 6px}.row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.go,.back,.destroy,.card button,.quarter button{border-radius:8px;border:2px solid #3a2a1c;background:#efe6d4;padding:8px 12px;box-shadow:2px 2px #1a120c}.go{background:var(--teal);border-color:#143f38;color:#fff}.go.slim,.destroy.slim{padding:6px 10px}.go.danger,.destroy{background:#e07a2f;border-color:#6a3412;color:#2a1608;font-weight:800}.destroy{font-size:22px;padding:12px 18px;min-width:220px}.back{background:#d9d4cc}.log{margin:12px 0 0;padding:8px 8px 8px 26px;color:#d9cbb8;font-size:12px;background:#00000040;border-radius:8px}.log li{margin:3px 0}.card,.quarter{border:1px solid #c8b89a;border-radius:8px;padding:10px 12px;margin-bottom:12px;background:var(--paper);color:var(--ink)}.card header,.quarter h2{display:flex;justify-content:space-between;gap:12px;align-items:center}h2,h3{margin:0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 0}.stat{background:#fffaf1;border:1px solid #e4d3b4;border-radius:4px;padding:6px 8px}.stat span{display:block;color:var(--muted);font-size:11px}.quarter table{width:100%;border-collapse:collapse;margin:8px 0;font-size:14px}.quarter th,.quarter td{border-bottom:1px solid var(--line);text-align:left;padding:4px}.kicker{color:var(--danger);letter-spacing:.08em;text-transform:uppercase;font-size:12px;margin:0;font-weight:800}.seat.flash,.node.flash{outline:3px solid #a15c12}@media(prefers-reduced-motion:no-preference){.seat.flash,.node.flash{animation:flash .7s ease-in-out 3}}@keyframes flash{50%{outline-color:transparent}}#event-modal,#confirm-replace,#ending{position:fixed;top:0;right:0;bottom:0;left:0;background:#140e0ab8;z-index:30;display:flex;align-items:center;justify-content:center;padding:24px}#confirm-replace{z-index:40}#ending{z-index:50}.modal-card{width:min(860px,100%);background:linear-gradient(180deg,rgba(255,255,255,.35),transparent 28%),#f6edd8;color:var(--ink);border:10px solid #6b4e32;border-radius:6px;padding:18px;box-shadow:0 16px 40px #00000059}.modal-card.danger{width:min(720px,100%)}.modal-card h2{margin:4px 0 8px}#event-title{color:#8d2b2b;letter-spacing:.02em}.stakes{color:#5c3b16}.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:12px}.choice{border:2px solid #5c4632;border-radius:10px;padding:10px;background:#fbf6ee;box-shadow:2px 2px #1a120c}.choice h3{font-size:15px}.auto{color:#8a3b12;font-weight:700}.stamp{display:inline-block;border:4px solid var(--danger);color:var(--danger);font-size:28px;font-weight:900;letter-spacing:.08em;padding:2px 10px;transform:rotate(-2deg);margin:0 0 8px}.replace-picture{display:flex;align-items:center;gap:16px;margin:10px 0}.polaroid{background:#fff;border:1px solid #ddd;border-bottom-width:16px;padding:10px;min-width:120px;text-align:center;color:var(--ink)}.polaroid em{display:block;font-style:normal;font-size:13px;margin-top:4px}.polaroid .meeple{width:36px;height:42px}.polaroid.struck{position:relative}.polaroid.struck:after{content:"";position:absolute;top:8px;right:10px;bottom:22px;left:10px;background:linear-gradient(to top left,transparent 46%,#9d2c2c 48%,#9d2c2c 52%,transparent 54%),linear-gradient(to top right,transparent 46%,#9d2c2c 48%,#9d2c2c 52%,transparent 54%)}.hex-card{width:120px;height:110px;display:grid;place-items:center;background:var(--orange);color:#2a1608;font-weight:800;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.arrow{font-size:28px}.replace-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:0;list-style:none}.replace-stats li{background:#fffaf1;border:1px solid #e4d3b4;border-radius:6px;padding:6px}.replace-row{margin-top:14px}.ending-card h2{font-size:36px;letter-spacing:.06em}.thumb{display:flex;gap:4px;flex-wrap:wrap;margin:8px 0 12px}.dot{width:14px;height:16px;display:block;background:var(--blue);clip-path:polygon(50% 0,68% 10%,74% 26%,62% 30%,86% 52%,76% 100%,24% 100%,14% 52%,38% 30%,26% 26%,32% 10%)}.dot.hermes{background:var(--orange);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.dot.vacant{background:transparent;border:1px dashed var(--muted);clip-path:none;height:12px;border-radius:50%}
