:root{--bg:#1d3b5a;--panel:#fbf6ea;--ink:#2b2118;--muted:#7a6a58;--accent:#b5562f;--accent-ink:#fff;--line:#e2d6bf;--radius:10px;color:var(--ink);background:radial-gradient(circle at 40% 40%, #2b6ca3, var(--bg) 70%);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}button,.button{font:inherit;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #c9b896;border-radius:8px;align-items:center;gap:.3rem;padding:.45rem .8rem;text-decoration:none;display:inline-flex}button:hover:not(:disabled){background:#f1e8d4}button:disabled{opacity:.45;cursor:not-allowed}button.primary,.button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}button.primary:hover:not(:disabled){background:#9c4625}button.sel{outline:3px solid #e8c547}button.big{justify-content:center;width:100%;padding:.7rem;font-size:1.05rem}input{font:inherit;border:1px solid #c9b896;border-radius:8px;width:100%;margin-top:.25rem;padding:.5rem .6rem}label{font-size:.9rem;font-weight:600;display:block}.center{place-items:center;min-height:100%;padding:1rem;display:grid}.card{background:var(--panel);border-radius:14px;gap:.8rem;width:min(420px,100%);padding:1.5rem;display:grid;box-shadow:0 10px 40px #00000059}.card h1{color:var(--accent);margin:0;font-size:2.2rem}.card h2{margin:0}.muted{color:var(--muted);font-size:.9rem}.error{color:#b3261e}.or{text-align:center;color:var(--muted);font-size:.85rem}.phrase{text-align:center;border:2px dashed var(--accent);-webkit-user-select:all;user-select:all;background:#fff;border-radius:8px;padding:.6rem;font-family:ui-monospace,Menlo,monospace;font-size:1.3rem}.game{grid-template-columns:1fr minmax(320px,380px);height:100%;display:grid}.board-wrap{min-height:0;display:grid;position:relative}.board{width:100%;height:100%;max-height:100vh}.side{background:#f3ead6;flex-direction:column;gap:.6rem;padding:.6rem;display:flex;overflow-y:auto}.panel{background:var(--panel);border-radius:var(--radius);border:1px solid var(--line);gap:.5rem;padding:.6rem;display:grid}.row{flex-wrap:wrap;gap:.35rem;display:flex}.room-line{color:var(--muted);font-size:.85rem}.prompt{white-space:nowrap;background:#ffffffeb;border-radius:999px;padding:.45rem 1rem;font-weight:600;position:absolute;top:.8rem;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #00000040}.toast{color:#fff;cursor:pointer;background:#b3261e;border-radius:8px;padding:.5rem 1rem;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.toast.warn{background:#8a6d00;bottom:3.5rem}.players{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.players li{background:var(--panel);border:2px solid #0000;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.4rem .55rem;display:flex}.players li.active{border-color:var(--accent)}.swatch{border:1.5px solid #1a1a1a;border-radius:50%;width:14px;height:14px;display:inline-block}.hand{grid-template-columns:repeat(5,1fr);gap:.3rem;display:grid}.card-slot{position:relative}.card-slot img{width:100%;display:block}.badge{background:var(--ink);color:#fff;text-align:center;border-radius:999px;min-width:1.4rem;padding:0 .3rem;font-size:.8rem;font-weight:700;position:absolute;top:2px;right:2px}.devcards{flex-wrap:wrap;gap:.35rem;display:flex}.devcard{flex-direction:column;width:64px;padding:.25rem;font-size:.65rem;position:relative}.devcard img{width:100%}.costs{color:var(--muted);flex-wrap:wrap;gap:.2rem .7rem;font-size:.75rem;display:flex}.costs span{align-items:center;gap:1px;display:inline-flex}.counts{align-items:center;gap:.35rem;display:inline-flex}.counts span{align-items:center;gap:.1rem;display:inline-flex}.responses{margin:0;padding-left:1rem}.responses li{align-items:center;gap:.4rem;display:flex}.modal-back{z-index:10;background:#00000073;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{background:var(--panel);border-radius:14px;gap:.6rem;width:min(460px,100%);padding:1.2rem;display:grid;position:relative}.modal h3{margin:0}.modal p{margin:.2rem 0 0}.modal-x{background:0 0;border:none;font-size:1.4rem;position:absolute;top:.5rem;right:.5rem}.counter{grid-template-columns:repeat(5,1fr);gap:.3rem;display:grid}.counter-cell{justify-items:center;gap:.2rem;display:grid}.counter-row{align-items:center;gap:.2rem;display:flex}.counter-row button{padding:.1rem .45rem}.respick{gap:.3rem;display:flex}.respick button{padding:.3rem}.final{gap:.3rem;padding:0;list-style:none;display:grid}.hex-edge{fill:none;stroke:#f4e9cf;stroke-width:3px;stroke-opacity:.6;pointer-events:none}.num{text-anchor:middle;fill:#2b2118;pointer-events:none;font:800 26px system-ui,sans-serif}.num.hot{fill:#c0262d}.pips circle{fill:#2b2118}.pips.hot circle{fill:#c0262d}.port line{stroke:#f4e9cf;stroke-width:4px;stroke-dasharray:6 5}.port-ratio{text-anchor:middle;fill:#2b2118;font:700 13px system-ui,sans-serif}.hot-spot{fill:#ffffff8c;stroke:#fff;stroke-width:3px;cursor:pointer;animation:1.2s ease-in-out infinite pulse}.hot-spot:hover{fill:#e8c547}.hot-hex{fill:#ffffff1f;stroke:#fff;stroke-width:4px;stroke-dasharray:10 6;cursor:pointer}.hot-hex:hover{fill:#e8c54766}@keyframes pulse{50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.hot-spot{animation:none}}@media (width<=860px){.game{grid-template-rows:auto auto;grid-template-columns:1fr;height:auto}.board{max-height:70vh}.prompt{white-space:normal;text-align:center;max-width:90%;font-size:.85rem}}.prompt{align-items:center;gap:.6rem;display:flex}.prompt.mine{background:#fff7d6;outline:3px solid #e8c547;animation:.5s ease-out pop}.clock{font-variant-numeric:tabular-nums;background:var(--ink);color:#fff;border-radius:999px;padding:.05rem .55rem;font-size:.9rem}.clock.low{background:#c0262d;animation:1s steps(2,end) infinite blink}.room-line{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:auto;padding-top:.2rem;display:flex}.sound-toggle{margin-left:auto;padding:.2rem .55rem;font-size:.8rem}.turn-banner{color:#fff;letter-spacing:.02em;text-shadow:0 3px #9c4625,0 6px 20px #00000080;pointer-events:none;font-size:2.6rem;font-weight:800;animation:1.6s ease-out forwards banner;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}.speed{gap:.3rem;display:grid}.seg{grid-template-columns:repeat(4,1fr);gap:.25rem;display:grid}.seg button{justify-content:center;padding:.4rem .2rem;font-size:.85rem}.seg button.sel{background:var(--accent);color:#fff;border-color:var(--accent);outline:none}.flights{pointer-events:none;z-index:20;position:fixed;inset:0}.flight{opacity:0;width:64px;animation:1.1s cubic-bezier(.2,.8,.3,1) forwards fly-in;position:absolute;top:45%;left:38%}.flight img{border-radius:6px;width:100%;box-shadow:0 6px 18px #0006}.flight.lose{animation-name:fly-out;top:300px;left:auto;right:190px}.flight .minus{color:#fff;background:#c0262d;border-radius:999px;padding:0 .35rem;font-weight:800;position:absolute;top:-10px;right:-10px}.card-slot.pulse img{animation:1.1s ease-out glow}.card-slot.pulse .badge{background:#2e7d32;animation:.6s ease-out .5s bump}@keyframes fly-in{0%{opacity:0;transform:translateY(30px)scale(.6)rotate(-8deg)}20%{opacity:1;transform:translate(0)scale(1.15)rotate(0)}to{opacity:0;transform:translate(calc(62vw - 120px),-10vh)scale(.55)rotate(6deg)}}@keyframes fly-out{0%{opacity:1;transform:translate(0)scale(.8)}to{opacity:0;transform:translate(-40vw,20vh)scale(.5)rotate(-12deg)}}@keyframes glow{0%,to{filter:none;transform:none}40%{filter:drop-shadow(0 0 8px #ffe066)brightness(1.15);transform:translateY(-6px)}}@keyframes bump{50%{transform:scale(1.45)}}@keyframes pop{0%{transform:translate(-50%)scale(.85)}60%{transform:translate(-50%)scale(1.08)}}@keyframes blink{50%{opacity:.55}}@keyframes banner{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}20%{opacity:1;transform:translate(-50%,-50%)scale(1.05)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-60%)scale(1)}}@media (prefers-reduced-motion:reduce){.flight,.turn-banner,.prompt.mine,.card-slot.pulse img,.card-slot.pulse .badge,.clock.low{animation-duration:.01ms}.flight{display:none}}@media (width<=860px){.flight{top:30%;left:40%}@keyframes fly-in{0%{opacity:0;transform:scale(.6)}20%{opacity:1;transform:scale(1.15)}to{opacity:0;transform:translateY(60vh)scale(.5)}}}.roll-hit{pointer-events:none;animation:2.6s ease-out forwards hit-fade}.roll-hit-ring{fill:#fff0be2e;stroke:#fff3c4;stroke-width:5px;stroke-linejoin:round;animation:1.3s ease-in-out 2 hit-ring}.roll-hit-token{fill:none;stroke:#ffe066;stroke-width:4px;transform-box:fill-box;transform-origin:50%;animation:1.3s ease-out 2 hit-token}.roll-hit.blocked .roll-hit-ring{fill:#0000002e;stroke:#9aa0a6;stroke-dasharray:10 8}.roll-hit.blocked .roll-hit-token{stroke:#9aa0a6}@keyframes hit-fade{0%{opacity:0}12%{opacity:1}80%{opacity:1}to{opacity:0}}@keyframes hit-ring{0%,to{stroke-opacity:.35}50%{stroke-opacity:1}}@keyframes hit-token{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}@media (prefers-reduced-motion:reduce){.roll-hit-ring,.roll-hit-token{animation:none}}.players li{gap:.35rem;display:grid}.pl-head{align-items:center;gap:.45rem;display:flex}.pl-head .vp{font-variant-numeric:tabular-nums;margin-left:auto;font-size:1.05rem;font-weight:800}.pl-head .vp small{color:var(--muted);font-size:.7rem;font-weight:600}.pl-body{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.stack{font-variant-numeric:tabular-nums;align-items:center;gap:.3rem;font-size:.85rem;font-weight:700;display:inline-flex}.stack-cards{height:26px;display:inline-block;position:relative}.stack-card{transform-origin:50% 100%;border-radius:3px;width:18px;height:25px;position:absolute;top:0;box-shadow:0 1px 2px #00000059}.stack-card.ghost{box-shadow:none;border:1.5px dashed #c9b896;display:block;position:static}.stack.empty .stack-n{color:var(--muted);font-weight:500}.chip{font-variant-numeric:tabular-nums;background:#efe5cf;border-radius:999px;align-items:center;gap:.2rem;padding:.05rem .45rem;font-size:.8rem;font-weight:700;display:inline-flex}.chip.on{background:#f4dd8f;box-shadow:inset 0 0 0 1.5px #d4a843}.chip-icon{color:#6b5a46;display:inline-flex}.chip-icon svg{width:13px;height:13px}.award{width:24px;height:24px}.bank{gap:.35rem;padding:.5rem .6rem}.bank-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.75rem;font-weight:700}.bank-row{grid-template-columns:repeat(6,1fr);gap:.3rem;display:grid}.pile{justify-items:center;gap:.15rem;display:grid}.pile-cards{width:30px;height:46px;position:relative}.pile-card{border-radius:4px;width:28px;height:39px;position:absolute;box-shadow:0 1px 2px #0000004d}.pile-card.ghost{box-shadow:none;border:1.5px dashed #c9b896;display:block;top:6px}.pile-label{color:var(--muted);font-size:.68rem;font-weight:600}.pile.low .pile-label{color:#b5562f}.pile.out .pile-label{color:#c0262d}.pile.out .pile-cards{opacity:.6}.stack.dev .stack-card:not(.ghost),.pile.dev .pile-card:not(.ghost){filter:hue-rotate(255deg)saturate(.85)}.dice-btn{background:0 0;border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:.6rem;padding:.5rem .8rem .9rem;display:flex;position:relative}.dice-btn.idle{opacity:.45}.dice-btn.ready{cursor:pointer;background:#fff7d6;border-color:#e8c547;animation:1.6s ease-in-out infinite dice-ready}.dice-btn.ready:hover{background:#ffefb0}.dice-btn.ready:hover .die-wrap{transform:rotate(-8deg)scale(1.06)}.dice-btn.ready:hover .die-wrap+.die-wrap{transform:rotate(8deg)scale(1.06)}.die-wrap{transition:transform .15s;display:inline-flex}.die-svg{filter:drop-shadow(0 3px 3px #0000004d);width:46px;height:46px}.die-body{fill:#fbf8f1;stroke:#2b2118;stroke-width:3px}.die-shine{fill:#fff;opacity:.5}.die-pip{fill:#2b2118}.die-svg.red .die-body{fill:#d23c32;stroke:#7a1f1f}.die-svg.red .die-pip{fill:#fff}.die-svg.red .die-shine{opacity:.12}.die-wrap.rolling{animation:.42s linear tumble}.die-wrap.rolling.b{animation-duration:.36s;animation-direction:reverse}.dice-hint{color:#9c4625;letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:700;position:absolute;bottom:0}.dice-sum{color:var(--muted);font-size:1.1rem;font-weight:800;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}@keyframes tumble{0%{transform:translateY(-6px)rotate(0)}50%{transform:translateY(2px)rotate(200deg)}to{transform:translateY(0)rotate(360deg)}}@keyframes dice-ready{50%{box-shadow:0 0 0 5px #e8c54759}}@media (prefers-reduced-motion:reduce){.die-wrap.rolling,.dice-btn.ready{animation:none}}.game{grid-template-columns:1fr minmax(340px,400px)}.side{gap:.5rem;height:100vh;position:sticky;top:0;overflow-y:auto}.side-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.72rem;font-weight:700}.activity{flex-direction:column;flex:none;gap:.3rem;height:220px;display:flex}.log-lines{flex-direction:column;flex:1;gap:.05rem;min-height:0;font-size:.8rem;display:flex;overflow-y:auto}.ev{border-left:3px solid #0000;border-radius:3px;padding:.12rem .4rem .12rem .5rem;line-height:1.35}.ev .who,.chat-line .who{color:var(--pc);filter:brightness(.8)}.ev.turn{border-top:1px solid var(--line);margin-top:.3rem;padding-top:.3rem;font-weight:600}.ev.roll{background:#f5eedd;border-left-color:#2b2118;font-weight:600}.ev.prod{color:#3d5f2c;border-left-color:#6aa84f}.ev.build{border-left-color:#b5562f}.ev.robber{background:#ece6dc;border-left-color:#555}.ev.trade{border-left-color:#2f6fd6}.ev.award{background:#fbf1cf;border-left-color:#d4a843;font-weight:600}.ev.timeout{color:#8c1d18;border-left-color:#c0262d}.ev.private{color:var(--muted);border-left-color:#c9b896;font-style:italic}.chat-box{flex:none;gap:.3rem}.chat-lines{flex-direction:column;gap:.1rem;height:72px;font-size:.8rem;display:flex;overflow-y:auto}.chat-line{line-height:1.35}.chat-form input{margin-top:0;padding:.35rem .5rem}.panel .row button{padding:.4rem .55rem;font-size:.9rem}@media (width<=860px){.game{grid-template-columns:1fr}.side{height:auto;position:static;overflow:visible}}.side .panel{gap:.35rem;padding:.45rem .55rem}.chat-lines{height:44px}.bank-row .pile-cards{height:38px}.bank-row .pile-card{width:24px;height:33px}.players{gap:.25rem}.players li{gap:.2rem;padding:.3rem .5rem}.die-svg{width:36px;height:36px}.dice-btn{padding:.25rem .6rem .75rem}.dice-btn:not(.ready){padding-bottom:.25rem}.hand{gap:.25rem}.card-slot img{object-fit:cover;border-radius:5px;width:100%;height:64px}.costs{gap:.1rem .5rem;font-size:.7rem}.side>.room-line{margin-top:auto;padding-top:0}.my-panel{flex:none}.activity{flex:220px;height:auto;min-height:96px;max-height:220px}.chat-box{flex:0 auto;min-height:0}.chat-lines{flex:44px;height:auto;min-height:20px;max-height:44px}.side>.room-line{margin-top:0}.side>.my-panel{margin-top:auto}.devcards{gap:.25rem}.devcard{flex-direction:row;gap:.3rem;width:auto;padding:.15rem .45rem .15rem .2rem;font-size:.75rem}.devcard img{border-radius:3px;width:18px;height:25px}.devcard-n{color:var(--muted);font-weight:800}@media (width>=861px) and (height<=940px){.side{gap:.35rem;padding:.4rem}.side .panel{gap:.25rem;padding:.35rem .5rem}.side-title{font-size:.65rem}.bank-row .pile-cards{width:24px;height:30px}.bank-row .pile-card{width:20px;height:27px}.pile-label{font-size:.62rem}.players li{gap:.1rem;padding:.2rem .45rem}.pl-head .vp{font-size:.95rem}.stack-cards{height:22px}.stack-card{width:15px;height:21px}.die-svg{width:30px;height:30px}.dice-btn{gap:.45rem;padding:.15rem .5rem .65rem}.dice-btn:not(.ready){padding-bottom:.15rem}.dice-hint{font-size:.6rem}.card-slot img{height:46px}.badge{min-width:1.2rem;font-size:.7rem}.panel .row{gap:.25rem}.panel .row button{padding:.25rem .5rem;font-size:.82rem}.room-line{font-size:.75rem}.sound-toggle{padding:.1rem .45rem;font-size:.72rem}}@media (width>=861px) and (height<=740px){.bank{grid-template-columns:auto 1fr;align-items:center;display:grid}.bank-row .pile-label{display:none}.bank-row .pile.low .pile-cards,.bank-row .pile.out .pile-cards{outline-offset:1px;border-radius:4px;outline:2px solid #b5562f}.card-slot img{height:38px}.chat-lines{max-height:22px}}.chat-box,.chat-lines{flex:none}.players li{grid-template-columns:auto 1fr auto;align-items:center;column-gap:.5rem;display:grid}.pl-head{display:contents}.pl-head .swatch{grid-area:1/1}.pl-head strong{white-space:nowrap;text-overflow:ellipsis;grid-area:1/2;min-width:0;overflow:hidden}.pl-head .vp{grid-area:1/3}.pl-body{grid-area:2/1/auto/-1;gap:.45rem}@media (width>=861px){.players li{grid-template-columns:auto minmax(0,1fr) auto auto}.pl-body{flex-wrap:nowrap;grid-area:1/3}.pl-head .vp{grid-column:4}.award{width:20px;height:20px}}.side .trade{font-size:.82rem}.side .trade .responses{margin:0}@media (width>=861px) and (height<=940px){.chat-lines{max-height:22px}.chat-box .side-title{display:none}.chat-box{gap:.2rem}.activity{min-height:72px}}@media (width>=861px) and (height<=740px){.chat-lines{display:none}.chat-form input{padding:.25rem .45rem;font-size:.85rem}.activity{min-height:60px}.my-panel .row button{padding:.2rem .45rem}.side{gap:.3rem}}.activity{position:relative}.jump-latest{background:var(--ink);color:#fff;border-color:var(--ink);border-radius:999px;padding:.15rem .6rem;font-size:.75rem;font-weight:700;position:absolute;bottom:.5rem;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000004d}.jump-latest:hover:not(:disabled){background:#000}.devcard.idle{opacity:.7}.devcard.ready{border-color:#6b3fa0;box-shadow:inset 0 0 0 1px #6b3fa0}.dev-explain{grid-template-columns:110px 1fr;align-items:start;gap:.9rem;display:grid}.dev-explain-art{border-radius:8px;width:110px;box-shadow:0 4px 14px #00000040}.dev-explain-text p{margin:0 0 .5rem;line-height:1.45}.dev-reason{color:#8c1d18;background:#fbe9e7;border-radius:6px;padding:.35rem .5rem;font-size:.9rem}@media (width<=480px){.dev-explain{grid-template-columns:80px 1fr}.dev-explain-art{width:80px}}.seg.two{grid-template-columns:repeat(2,1fr)}.ev .who,.chat-line .who{text-shadow:0 0 1px #0000008c,0 0 1px #0000008c}@media (width>=861px) and (height<=740px){.players li{padding:.12rem .45rem}.stack-cards{height:18px}.stack-card{width:13px;height:18px}.side .trade{gap:.15rem;padding:.3rem .5rem}.side .trade button{padding:.15rem .5rem}}.hand.ck{grid-template-columns:repeat(8,1fr);gap:.2rem}.hand.ck .card-slot img{height:52px}.hand.ck .badge{min-width:1.1rem;padding:0 .2rem;font-size:.65rem}.bank-row{grid-template-columns:repeat(6,1fr)}@media (width>=861px) and (height<=940px){.hand.ck .card-slot img{height:40px}}@media (width>=861px) and (height<=740px){.hand.ck .card-slot img{height:32px}}.room-line{white-space:nowrap;flex-wrap:nowrap;overflow:hidden}.room-line code{text-overflow:ellipsis;min-width:0;overflow:hidden}.event-die{color:#2b2118;background:#fbf8f1;border:2px solid #2b2118;border-radius:6px;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:.4rem;left:.6rem}.event-die svg{width:20px;height:20px}.event-die.none{opacity:.35}.event-die.ship{color:#fff;background:#3a3a3a}.event-die.trade{background:#e8c547}.event-die.politics{color:#fff;background:#2f6fd6}.event-die.science{color:#fff;background:#3e9a4b}.my-panel{position:relative}.improvements{grid-template-columns:repeat(3,1fr);gap:.25rem;display:grid}.track{flex-direction:column;align-items:stretch;gap:.15rem;padding:.25rem .35rem;font-size:.72rem;position:relative}.track-name{font-weight:700}.track.trade{border-color:#c9a227}.track.politics{border-color:#2f6fd6}.track.science{border-color:#3e9a4b}.track.ability .track-name:after{content:" ✓"}.pips5{gap:2px;display:flex}.pips5 i{background:#e2d6bf;border-radius:2px;flex:1;height:5px}.track.trade .pips5 i.on{background:#c9a227}.track.politics .pips5 i.on{background:#2f6fd6}.track.science .pips5 i.on{background:#3e9a4b}.track-cost{color:var(--muted);align-items:center;gap:2px;font-size:.68rem;display:inline-flex}.metro{color:#d4a843;position:absolute;top:2px;right:4px}.progress-hand{flex-wrap:wrap;gap:.2rem;display:flex}.pchip{background:#fff;border:1.5px solid;border-radius:999px;padding:.1rem .45rem;font-size:.7rem}.pchip.trade{border-color:#c9a227}.pchip.politics{border-color:#2f6fd6}.pchip.science{border-color:#3e9a4b}.metro-ring{fill:none;stroke-width:5px;stroke-dasharray:8 5;pointer-events:none}.metro-ring.trade{stroke:#e8c547}.metro-ring.politics{stroke:#5b93ea}.metro-ring.science{stroke:#4fbf5f}@media (width>=861px) and (height<=940px){.track{padding:.15rem .3rem}}.knight.inactive{opacity:.55;filter:grayscale(.45)}.knight.active{filter:drop-shadow(0 0 4px #ffe066)}.barbarian{color:var(--muted);align-items:center;gap:.35rem;font-size:.72rem;display:flex}.barb-track{flex:1;gap:2px;display:flex}.barb-track i{background:#e2d6bf;border-radius:2px;flex:1;height:7px}.barb-track i.on{background:#6b3a2a}.barb-track i.last{outline:1.5px solid #c0262d}.knight-menu{flex-wrap:wrap;gap:.25rem;display:flex}.knight-menu button{padding:.3rem .55rem;font-size:.85rem}@media (width>=861px) and (height<=940px){.knight-menu button{padding:.25rem .5rem;font-size:.82rem}}button.pchip{border-width:1.5px;border-radius:999px;padding:.12rem .5rem;font-size:.72rem}.pcard{color:#fff;text-transform:uppercase;letter-spacing:.06em;border-radius:8px;place-items:center;width:110px;height:150px;font-size:.85rem;font-weight:800;display:grid;box-shadow:0 4px 14px #00000040}.pcard.trade{background:linear-gradient(160deg,#e8c547,#b8901c)}.pcard.politics{background:linear-gradient(160deg,#5b93ea,#1f4f9c)}.pcard.science{background:linear-gradient(160deg,#4fbf5f,#2a7536)}.modal label input[type=number]{width:4rem}@media (width<=480px){.pcard{width:80px;height:110px}}.vp-row{justify-content:center;align-items:center;gap:.8rem;display:flex}.vp-row strong{text-align:center;min-width:4rem;font-size:1.1rem}
