.alien-choice,.alien-choice.selected{background:#292929}
.alien-choice:hover{border-color:#e8c292}
.alien-choice.selected{box-shadow:inset 0 0 0 1px var(--accent)}
.alien-choice>span{display:block;background:#292929;padding:5px 0}
.alien-choice .portrait{background:#292929}
.setup-bots,.player-kind{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.player-kind{font-size:14px;color:var(--muted)}
.route-choices{display:grid;gap:10px}
.route-choices button{text-align:left;border-color:#88b7bc;background:#223a3d}
.route-choices button:hover{background:#345358}
.route-choices small{display:block;color:#cad8d6;font-size:14px;margin-top:5px}
.route-preview{opacity:0;pointer-events:none;transition:opacity .16s ease}
.route-preview path{fill:none;stroke:#fff2a8;stroke-width:58;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 9px #fff7a8) drop-shadow(0 0 20px #8fffd0)}
.route-preview.active{opacity:.72}
.bot-status{padding:10px 14px;border:1px solid #8b83ab;border-radius:6px;background:#302e42;font-size:14px}
.bot-turn .turn-panel>.primary,.bot-turn .route-choices,.bot-turn .trade-options,.bot-turn .trade-done,.bot-turn .event-card>.primary,.bot-turn .card-choice-grid{display:none}
.board{aspect-ratio:1600/1900;min-width:1100px;background-size:cover;background-position:58% center}
.tile{width:3.55%;height:2.2%;font-size:19px}
.tile.finish{width:6%;height:3.5%;font-size:14px}
.tile.start{width:16.5%;height:8%;font-size:16px;align-items:flex-end;padding-bottom:9px;border:3px solid #efe0ae;background:linear-gradient(155deg,#758d65,#3c5442);color:#fff1cc;box-shadow:0 12px 0 #293e30,0 16px 0 #9a9670,0 25px 20px #0009}
.tile.start .number{display:none}
.pawn[data-player-pawn]{cursor:pointer}
.pawn[data-player-pawn]:focus-visible{outline:3px solid #ffe7a6;outline-offset:4px;border-radius:16px}
.tile.trade{background:linear-gradient(#3e8391,#244453);border-color:#bff6ff;color:#e8fdff;box-shadow:0 7px 0 #18323c,0 9px 0 #70aebb,0 16px 12px #0009}
.tile.trade .field-symbol{position:absolute;inset:0;display:grid;place-items:center;transform:none}
.tile.trade .trade-icon{display:block;width:1.28em;height:1.28em;margin:auto;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.tile.star{background:linear-gradient(#c9aa45,#6d5720);border-color:#ffe79b;color:#fff7ce;box-shadow:0 7px 0 #403518,0 9px 0 #b99c42,0 12px 10px #0008}
.tile.star2{background:linear-gradient(#b89538,#66501f);border-color:#ffe69b;color:#fff7ce;box-shadow:0 7px 0 #403518,0 9px 0 #c4a64e,0 16px 12px #0009}
.tile.star3{background:linear-gradient(#e0b63e,#805813);border-color:#fff3a9;color:#fff;box-shadow:0 7px 0 #51380e,0 9px 0 #e2c058,0 0 18px #ffd95a88,0 16px 12px #0009}
.jail-icon{position:static;display:block;width:1.25em;height:1.25em;border:0;background:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}

.tile.alternate{border-style:dashed}
.tile .number{bottom:-30px}
.map-place{position:absolute;transform:translateX(-50%);font-size:14px;letter-spacing:2px;background:#12271ee8;border:1px solid #afbb9777;padding:6px 12px;border-radius:20px;color:#e0eac9;white-space:nowrap}
.cargo-panel{padding:13px;border:1px solid #55727a;border-radius:8px;background:#14282cf2}
.cargo-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.cargo-head .eyebrow{margin:0 0 2px}.cargo-head>span{font-size:12px;color:#9fb7ba;white-space:nowrap}
.market-prices{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:9px}.market-prices>span{display:flex;flex-direction:column;padding:6px;border-radius:5px;background:#20363a}.market-prices b{font-size:11px;white-space:nowrap}.market-prices em{font-size:12px;font-style:normal;color:#e9e5cf}.price-change{font-size:10px}.price-change.up{color:#8fe39b}.price-change.down{color:#ff9a9a}.price-change.steady{color:#b7c5c7}
.cargo-owned{margin-top:8px;font-size:12px;color:#c8d7d8}
.trade-panel{display:grid;gap:9px}.trade-title{font:600 21px 'Barlow Condensed',sans-serif;color:#bfeef5}.trade-panel>p:not(.trade-title){font-size:13px;color:#cbd7d8}.trade-options{display:grid;grid-template-columns:1fr 1fr;gap:6px}.trade-options button{display:grid;grid-template-columns:1fr auto;text-align:left;padding:8px}.trade-options button span{font-size:12px}.trade-options button b{color:#f3d898}.trade-options button small{grid-column:1/-1;color:#9fb3b6}.trade-done{width:100%}
.trade-section{margin-top:3px;color:#a9cbd0;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.card-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}.card-choice{display:grid;grid-template-columns:34px 1fr;text-align:left;align-items:center;gap:2px 8px;padding:8px}.card-choice>span{grid-row:1/3;width:34px;height:34px;border-radius:50%;overflow:hidden;background:#263b3f}.card-choice>span svg{width:100%;height:100%}.card-choice b{font-size:13px}.card-choice small{color:#adc0c2;font-size:11px}.card-choice:not(:has(>span)){grid-template-columns:1fr}.choice-card .effect{margin-bottom:2px}
.desktop-map-name{display:none}
.mobile-hud-tabs{display:none}
.header-player-strip{display:none;position:relative;flex:1;min-width:0}.header-player-strip.active{display:block}.header-player-list{display:flex;justify-content:center;gap:6px;min-width:0;overflow-x:auto;scrollbar-width:none}.header-player-list::-webkit-scrollbar{display:none}.header-player{position:relative;flex:0 0 36px;width:36px;height:36px;padding:0;border:2px solid var(--player-color);border-radius:50%;overflow:hidden;background:#273235;box-shadow:0 2px 6px #0008}.header-player.current{outline:2px solid #fff3b8;outline-offset:2px}.header-player.selected{background:#40575a;box-shadow:0 0 12px var(--player-color)}.header-player-face,.header-player-face svg{display:block;width:100%;height:100%}.header-player-number{position:absolute;right:-1px;bottom:-1px;width:15px;height:15px;border-radius:50%;display:grid;place-items:center;background:var(--player-color);color:#142024;font-size:9px;font-weight:800}.header-player-popover{position:absolute;z-index:30;top:44px;left:50%;transform:translateX(-50%);width:min(330px,calc(100vw - 24px));padding:12px 14px;border:1px solid var(--player-color);border-radius:8px;background:#132326f8;box-shadow:0 10px 28px #000b}.header-player-popover>strong{font-size:15px}.header-player-popover dl{display:grid;gap:6px;margin:8px 0 0}.header-player-popover dl>div{display:grid;grid-template-columns:68px 1fr;gap:8px}.header-player-popover dt{color:#9fb1b4;font-size:12px}.header-player-popover dd{margin:0;font-size:12px;color:#eef1e6}
.finish-head{margin-inline:auto;text-align:center}.finish-head .finish-reset{margin-top:4px}.finish-reset[hidden]{display:none}
.ranking{width:min(920px,100%);margin-inline:auto}.rank-card{position:relative;overflow:hidden;transition:opacity .35s ease,transform .45s cubic-bezier(.2,.85,.25,1),filter .35s}.rank-card.reveal-pending{visibility:hidden;opacity:0;transform:translateY(28px) scale(.97)}.rank-card.revealed{visibility:visible;opacity:1;transform:none;animation:rank-reveal .48s ease both}
.rank-card .placement{flex:0 0 48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#29363b;border:1px solid #66777c;font:700 25px 'Barlow Condensed',sans-serif}
.rank-card.place-1{background:linear-gradient(120deg,#5d4514,#a67b24 52%,#d8b851);border-color:#ffe69a;box-shadow:0 0 24px #d7ae4755}.rank-card.place-1 .placement{background:#f4d369;color:#3d2b08;border-color:#fff0a7}.rank-card.place-1 .score,.rank-card.place-1 .eyebrow{color:#fff1a8}.rank-card.place-1 p,.rank-card.place-1 small{color:#f8edcd}
.rank-card.place-2{background:linear-gradient(120deg,#41494f,#75818a 52%,#aab2b8);border-color:#dce4e9}.rank-card.place-2 .placement{background:#d8dee2;color:#30383d;border-color:#fff}.rank-card.place-2 .score,.rank-card.place-2 .eyebrow{color:#f2f5f7}.rank-card.place-2 p,.rank-card.place-2 small{color:#eef2f4}
.rank-card.place-3{background:linear-gradient(120deg,#56371f,#8f5a32 52%,#bd7b47);border-color:#e4a977}.rank-card.place-3 .placement{background:#c47d49;color:#2d190c;border-color:#efba91}.rank-card.place-3 .score,.rank-card.place-3 .eyebrow{color:#ffd2ae}.rank-card.place-3 p,.rank-card.place-3 small{color:#f8dfcd}
.confetti-layer{position:fixed;inset:0;z-index:1000;pointer-events:none;overflow:hidden}.confetti-layer i{position:absolute;left:50%;top:46%;width:9px;height:15px;border-radius:2px;background:var(--c);opacity:0;animation:confetti-pop 2.05s cubic-bezier(.15,.65,.25,1) var(--delay) forwards}
@keyframes rank-reveal{0%{filter:brightness(1.8)}100%{filter:brightness(1)}}
@keyframes confetti-pop{0%{opacity:1;transform:translate(0,0) rotate(0) scale(.4)}32%{opacity:1;transform:translate(var(--x),var(--peak)) rotate(var(--midrot)) scale(1)}100%{opacity:0;transform:translate(var(--x),var(--end)) rotate(var(--rot)) scale(.8)}}
@media(min-width:851px){.side{position:sticky;top:16px}}
@media(max-width:850px){
 .mobile-hud-tabs{display:grid;grid-template-columns:repeat(3,1fr);position:sticky;top:0;z-index:12;background:#111f22f5;border-bottom:1px solid #52646a;order:-10}
 .mobile-hud-tabs button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;padding:7px 3px;border:0;border-right:1px solid #34494e;background:transparent;color:#b9c8cb;font-size:11px}.mobile-hud-tabs button:last-child{border-right:0}.mobile-hud-tabs button b{font-size:15px;color:#e9cf8d}.mobile-hud-tabs button.active{background:#395258;color:#fff}.mobile-hud-tabs button.active b{color:#ffe59b}
 .playing .roster{display:none}
 .playing .side{gap:0;background:#17282cf7;border:1px solid #50636a;box-shadow:0 -5px 22px #0008}
 .playing .side>.turn-panel,.playing .side>.deck,.playing .side>.event-card,.playing .side>.cargo-panel,.playing .side>.bot-status{display:none}
 .playing .side.mobile-view-turn>.turn-panel,.playing .side.mobile-view-turn>.bot-status{display:block}
 .playing .side.mobile-view-cargo>.cargo-panel{display:block}
 .playing .side.mobile-view-event>.deck,.playing .side.mobile-view-event>.event-card{display:block}
 .header-player-list{justify-content:flex-start;gap:4px}.header-player{flex-basis:30px;width:30px;height:30px}.header-player-popover{position:fixed;top:52px;left:12px;right:12px;transform:none;width:auto}.header-player-number{width:13px;height:13px;font-size:8px}
}
@media(max-width:540px){.player-kind .quiet{padding:8px}.board-scroll{max-height:440px}.setup-bots .quiet{flex:1}.market-prices{grid-template-columns:repeat(4,minmax(105px,1fr));overflow-x:auto}.trade-options{grid-template-columns:1fr 1fr}.cargo-panel{padding:9px}.rank-card .placement{flex-basis:36px;width:36px;height:36px;font-size:20px}.rank-card{gap:9px}}

.branch-direction-arrows{pointer-events:none}
.branch-direction-arrows path{fill:#fff;stroke:none}

/* Give the selected alien its own full-body column beside the live stats. */
.header-player-popover{display:grid;grid-template-columns:minmax(0,1fr) 110px;align-items:start;gap:14px;width:min(390px,calc(100vw - 24px));max-height:calc(100dvh - 80px);overflow:auto}
.header-player-popover .status-copy{min-width:0;overflow-wrap:anywhere}
.header-player-popover .status-copy>strong{font-size:15px}
.header-player-popover dd{min-width:0;overflow-wrap:anywhere}
.status-character{width:110px;height:160px;overflow:hidden;border-radius:8px;background:#292929;isolation:isolate}
.status-character svg{display:block;width:100%;height:100%;filter:contrast(1.1);mix-blend-mode:lighten}
@media(max-width:420px){.header-player-popover{grid-template-columns:minmax(0,1fr) 96px;gap:10px}.status-character{width:96px;height:145px}}

.header-player-popover .status-copy>strong{font-size:calc(15px + 1pt)}
.header-player-popover dt,.header-player-popover dd{font-size:calc(12px + 1pt)}
.header-player-popover dl>div{grid-template-columns:78px minmax(0,1fr)}
