:root{--bg:#10131a;--panel:#1a1f2b;--panel-2:#232a39;--line:#333c4f;--text:#e6e9f0;--dim:#98a2b8;--accent:#6ea8fe;--danger:#ff6b6b;--ok:#4ec9a0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:14px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}button{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:.35rem .7rem}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}button.linky{font:inherit;color:inherit;cursor:pointer;opacity:.75;background:0 0;border:none;padding:0;text-decoration:underline}button.linky:hover{opacity:1}button.primary{background:var(--accent);color:#0b1020;border-color:var(--accent);font-weight:600}input{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:6px;padding:.35rem .5rem}.app{max-width:1100px;margin:0 auto;padding:1rem}.row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.spread{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.dim{color:var(--dim)}.small{font-size:12px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;margin-bottom:.75rem;padding:.75rem .9rem}.statusbar{flex-wrap:wrap;gap:1.25rem;font-size:13px;display:flex}.statusbar b{font-weight:600}.cards{flex-wrap:wrap;gap:.4rem;display:flex}.routes{flex-direction:column;align-items:flex-start;gap:.35rem;margin-bottom:.6rem;display:flex}.routes button{text-align:left}.card:not(.cost-chip){z-index:1;text-align:left;border:1px solid var(--line);background:var(--panel-2);border-radius:8px;flex-direction:column;gap:.15rem;width:132px;min-height:74px;padding:.4rem .45rem .5rem;display:flex;position:relative}.card .card-top{align-items:flex-start;gap:.35rem;display:flex}.card .name{flex:1;min-width:0;font-size:12.5px;font-weight:600;line-height:1.25}.card .meta{color:var(--dim);gap:.4rem;font-size:11px;display:flex}.card .powers{color:var(--dim);margin-top:auto;font-size:10.5px}.card.selectable{cursor:pointer}.card.selectable:hover{border-color:var(--accent)}.card.picked{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.card.unavailable{opacity:.35;cursor:default}.card .goodchip{border:2px solid var(--panel);border-radius:50%;width:16px;height:16px;position:absolute;top:-6px;right:-6px}.card .stripe{border-radius:8px 0 0 8px;width:4px;position:absolute;top:0;bottom:0;left:0}.my-tableau .card .stripe,.tableau-cards .card .stripe{display:none}.cost-chip{vertical-align:middle;background:0 0;border:none;border-radius:0;flex-shrink:0;min-height:0;padding:0;display:inline-block;overflow:visible}.cost-chip.inspector{width:32px;height:32px;min-height:32px}.cost-chip.card{width:22px;height:22px;min-height:22px}.cost-chip.mini{width:15px;height:15px;min-height:15px}.seat{border-top:1px solid var(--line);margin-top:.6rem;padding-top:.6rem}.seat:first-child{border-top:0;margin-top:0;padding-top:0}.seat-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.seat-header h3{margin:0;font-size:13px;font-weight:600}.seat h3{margin:0 0 .35rem;font-size:13px;font-weight:600}.seat .tags{color:var(--dim);font-size:12px;font-weight:400}.military-display{flex-wrap:wrap;align-items:center;gap:.35rem;display:inline-flex}.military-badge{color:#fca5a5;background:#2a1518;border:1px solid #ef4444;border-radius:4px;align-items:center;gap:.25rem;padding:.08rem .38rem;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.military-icon{vertical-align:middle;display:inline-block}.military-cond{border-radius:4px;align-items:center;gap:.25rem;padding:.08rem .38rem;font-size:10.5px;font-weight:700;line-height:1.2;display:inline-flex}.military-cond.rare{color:#fed7aa;background:#381e0d;border:1px solid #b45309}.military-cond.alien{color:#fef08a;background:#422006;border:1px solid #eab308}.military-cond.rebel{color:#fecdd3;background:#450a0a;border:1px solid #f43f5e}.military-cond.genes{color:#bbf7d0;background:#052e16;border:1px solid #22c55e}.military-cond.novelty{color:#bae6fd;background:#172554;border:1px solid #38bdf8}.military-cond.other{color:#e2e8f0;background:#1e293b;border:1px solid #64748b}.cond-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.mini,.tableau-chips{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.mini .m,.tableau-chips .tableau-chip{font:inherit;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer;border-radius:5px;align-items:center;gap:.3rem;padding:.15rem .4rem;font-size:11px;transition:border-color .15s;display:inline-flex;position:relative}.mini .m:hover,.mini .m-tucked-wrapper:hover .m,.tableau-chips .tableau-chip:hover,.tableau-chips .tucked-chip-wrapper:hover .tableau-chip{border-color:var(--accent)}.m-tucked-wrapper,.tucked-chip-wrapper{align-items:center;display:inline-flex;position:relative}.m.tucked-front,.tableau-chip.tucked-front{z-index:1;position:relative}.m-tucked-wrapper .tucked-card-underlay,.tucked-chip-wrapper .tucked-card-underlay{background:color-mix(in srgb, var(--good-color) 45%, #151821);border:1.5px solid var(--good-color);z-index:0;pointer-events:none;border-radius:5px;width:100%;height:100%;position:absolute;bottom:-3.5px;right:-4.5px;box-shadow:0 2px 4px #00000080}.cardwrap .tucked-card-underlay{background:color-mix(in srgb, var(--good-color) 45%, #151821);border:1.5px solid var(--good-color);z-index:0;pointer-events:none;border-radius:8px;width:100%;height:100%;position:absolute;bottom:-4px;right:-5px;box-shadow:0 2px 4px #00000080}.prompt{border-color:var(--accent)}.prompt h2{margin:0 0 .15rem;font-size:15px}.prompt .hint{color:var(--dim);margin-bottom:.6rem;font-size:12.5px}.options{flex-direction:column;gap:.3rem;margin-bottom:.6rem;display:flex}.option{text-align:left;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.option.picked{border-color:var(--accent)}.ref-option-good,.ref-option-card{align-items:center;gap:.5rem;width:100%;display:inline-flex}.ref-option-good .ref-world-name{font-weight:600}.ref-option-good .ref-type-tag{margin-left:auto}.chosen-refs-line{flex-wrap:wrap;align-items:center;gap:.35rem;margin:.4rem 0;font-size:12px;display:flex}.chosen-ref-pill{color:var(--text);align-items:center;gap:.25rem;display:inline-flex}.error{color:var(--danger)}.waiting{color:var(--dim);font-style:italic}.log{max-height:260px;font-size:12.5px;overflow:auto}.log li{margin-bottom:.15rem}.log .seq{color:var(--dim);min-width:2.2rem;display:inline-block}.scores-panel{flex-direction:column;gap:.75rem;display:flex}.winner-banner{background:color-mix(in srgb, #f5c518 12%, var(--panel-2));border:1.5px solid #f5c518;border-radius:8px;align-items:center;gap:.6rem;padding:.5rem .8rem;font-size:14px;display:flex}.winner-banner .crown{font-size:1.3rem;line-height:1}.scores-table{border-collapse:collapse;width:100%;font-size:13px}.scores-table th{text-align:left;color:var(--dim);border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.04em;padding:.35rem .6rem;font-size:11.5px;font-weight:500}.scores-table th.num,.scores-table td.num{text-align:right}.scores-table td{border-bottom:1px solid color-mix(in srgb, var(--line) 50%, transparent);padding:.4rem .6rem}.scores-table .winner-row{background:#f5c5180f}.scores-table .rank{color:var(--dim);font-size:12px}.scores-table .total-vp{color:#f5c518;font-size:15px;font-weight:800}.scores-table .bonus-vp{color:var(--accent);font-weight:600}.scores-table .winner-tag{margin-left:.35rem;font-size:.9rem}.scores-breakdown{border-top:1px solid var(--line);padding-top:.6rem}.scores-breakdown-title{margin-bottom:.5rem;font-size:12px}.scores-bonus-players{flex-direction:column;gap:.6rem;display:flex}.player-bonus-group{background:var(--panel-2);border:1px solid var(--line);border-radius:7px;padding:.5rem .75rem}.player-bonus-header{margin-bottom:.4rem;font-size:13px}.bonus-cards-grid{flex-wrap:wrap;gap:.5rem;display:flex}.bonus-dev-card{background:color-mix(in srgb, var(--panel) 70%, #000);border:1px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;flex:260px;padding:.45rem .6rem;transition:all .15s}.bonus-dev-card:hover,.bonus-dev-card.hovered{background:color-mix(in srgb, #f5c518 10%, var(--panel-2));border-color:#f5c518;box-shadow:0 0 10px #f5c51840}.bonus-dev-card-header{align-items:center;gap:.35rem;margin-bottom:.3rem;display:flex}.bonus-dev-card-header .dev-name{flex:1;font-size:12.5px;font-weight:600}.bonus-dev-card-header .dev-pts{color:#f5c518;font-size:13px;font-weight:800}.bonus-dev-lines{flex-direction:column;gap:.15rem;margin:0;padding:0;font-size:11.5px;list-style:none;display:flex}.bonus-dev-lines li{color:var(--dim);justify-content:space-between;display:flex}.bonus-dev-lines .line-pts{color:var(--text);margin-left:.5rem;font-weight:600}.bonus-badge{color:#1a1500;z-index:10;pointer-events:none;background:#f5c518;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:800;line-height:1.3;animation:.15s ease-out bonusPopIn;position:absolute;top:-8px;right:-7px;box-shadow:0 2px 6px #0009}.mini .tableau-chip .bonus-badge{padding:0 5px;font-size:10px;top:-8px;right:-6px}@keyframes bonusPopIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.card.bonus-source,.mini .tableau-chip.bonus-source{box-shadow:0 0 0 1.5px #f5c518,0 0 10px #f5c51859;border-color:#f5c518!important}.card.bonus-target,.mini .tableau-chip.bonus-target{box-shadow:0 0 0 2px #f5c518,0 0 14px #f5c51873;border-color:#f5c518!important}.card.bonus-dimmed,.mini .tableau-chip.bonus-dimmed{opacity:.35;transition:opacity .15s}.dev-bonus-pill{color:#1a1500;background:#f5c518;border-radius:999px;align-items:center;padding:.08rem .4rem;font-size:10.5px;font-weight:800;animation:.15s ease-out bonusPopIn;display:inline-flex;box-shadow:0 0 8px #f5c51866}.withinspector{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:.75rem;display:grid}@media (width<=880px){.withinspector{grid-template-columns:minmax(0,1fr)}aside.inspector{position:static}}aside.inspector{min-height:120px;position:sticky;top:1rem}.inspector-top{align-items:center;gap:.5rem;display:flex}.inspector-name{margin:0;font-size:15px}.inspector-facts{margin:.1rem 0 .6rem}.inspector-heading{margin:.6rem 0 .2rem}.inspector-powers{flex-direction:column;gap:.25rem;margin:0;padding-left:1rem;font-size:12.5px;display:flex}.power-content{vertical-align:middle;align-items:center;gap:.35rem;display:inline-flex}.rftg-badges{vertical-align:middle;flex-shrink:0;align-items:center;gap:.35rem;display:inline-flex}.vp-badge,.card-badge,.good-chip-token{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.vp-badge svg,.card-badge svg,.good-chip-token svg{display:block;overflow:visible}.trade-option-source{align-items:center;gap:.45rem;display:inline-flex}.arrow{color:var(--dim);padding:0 .1rem;font-size:13px;font-weight:600}.phase-header-bar{margin-bottom:.75rem}.phase-ribbon-container{scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items:stretch;gap:.4rem;padding:.1rem 0;display:flex;overflow-x:auto}.phase-ribbon-container::-webkit-scrollbar{display:none}.phase-item{background:var(--panel);border:1px solid var(--line);border-radius:6px;flex-direction:column;flex:1;gap:.2rem;min-width:80px;padding:.35rem .5rem;font-size:11.5px;transition:all .15s;display:flex}.phase-item.active{background:#192231;border-color:#4b5563}.phase-item.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 2px 8px #6ea8fe33;background:#212c44}.phase-item.skipped{opacity:.38;background:0 0;border-style:dashed}.phase-item.skipped .phase-title{color:var(--dim);text-decoration:line-through}.phase-item.you-picked{border-left:3px solid #38bdf8}.phase-item-main{justify-content:space-between;align-items:center;gap:.3rem;display:flex}.phase-num{color:var(--dim);font-size:10.5px;font-weight:700}.phase-item.current .phase-num{color:#93c5fd}.phase-title{color:var(--text);white-space:nowrap;font-weight:600}.phase-tag{text-transform:uppercase;letter-spacing:.02em;border-radius:3px;padding:.05rem .3rem;font-size:9.5px;font-weight:700}.phase-tag.current{color:#93c5fd;background:#6ea8fe40}.phase-tag.skipped{color:var(--dim);background:#9ca3af26;font-size:9px}.phase-tag.you{color:#38bdf8;background:#38bdf833;border:1px solid #38bdf866}.phase-tag.opp{color:var(--dim);background:#9ca3af26}.phase-item-who{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.phase-item-bonus{align-items:center;gap:.25rem;margin-top:.1rem;display:flex}.bonus-pill{align-items:center;gap:.25rem;display:inline-flex}.bonus-tag{border-radius:3px;align-items:center;padding:.05rem .3rem;font-size:10px;font-weight:700;display:inline-flex}.bonus-tag.discount{color:#f1f5f9;background:#334155;border:1px solid #64748b}.bonus-tag.settle-draw{color:#e9d5ff;background:#2e1065;border:1px solid #c084fc}.bonus-tag.trade{color:#fef08a;background:#713f12;border:1px solid #eab308}.bonus-tag.vp-double{color:#93c5fd;background:#1e293b;border:1px solid #6ea8fe}.bonus-tag.windfall{color:#bbf7d0;background:#14532d;border:1px solid #22c55e}.eye-badge{color:#bae6fd;background:#172554;border:1px solid #38bdf8;border-radius:4px;align-items:center;gap:2px;padding:1px 4px;font-size:10.5px;font-weight:700;display:inline-flex}.eye-badge svg{display:block}@media (width<=520px){.phase-name-full{display:none}.phase-name-short{display:inline}.phase-item{min-width:62px;padding:.3rem .4rem;font-size:10.5px}}@media (width>=521px){.phase-name-full{display:inline}.phase-name-short{display:none}}.goodchip.inline{vertical-align:-2px;border:0;width:10px;height:10px;margin-right:.35rem;display:inline-block;position:static}.cardwrap{display:inline-flex;position:relative}.readme{color:var(--dim);opacity:.6;background:0 0;border:0;border-radius:4px;padding:0 .25rem;font-size:11px;line-height:1.3;position:absolute;bottom:2px;right:2px}.readme:hover{opacity:1;color:var(--accent)}dialog.modal{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:10px;width:90vw;max-width:440px;padding:1.25rem 1.5rem;box-shadow:0 10px 30px #00000080}dialog.modal::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000000a6}
