.match-options{margin:14px 0;border-top:1px solid #aca78066;border-bottom:1px solid #aca78066;padding:8px 0 12px}.test-badge{font-size:10px;color:#8b6332;background:#dbc99844;padding:4px 7px;border-radius:4px}.victory-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.victory-tabs button{padding:11px 8px;border:1px solid #c3ba9c;border-radius:6px;background:#efe6cb;color:#68634c;text-align:left;min-height:60px}.victory-tabs button.active{background:#254b3e;color:#fff0c9;border-color:#254b3e;box-shadow:0 2px 0 #163b32}.victory-tabs strong,.victory-tabs small{display:block}.victory-tabs strong{font-size:14px}.victory-tabs small{font-size:11px;opacity:.8;margin-top:5px}.match-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}.match-fields label{display:flex;flex-direction:column;gap:7px;font-size:13px}.match-fields input,.match-fields select{width:100%;min-height:42px;background:#fff8e6;color:#374b3e;border:1px solid #bcb797;border-radius:4px;padding:8px 10px}.match-fields small{font-size:10px;color:#78765f;line-height:1.5}.royal-round-note{display:flex;flex-direction:column;justify-content:center;gap:8px;font-size:14px;color:#685031}.strategy-toggle{display:flex;align-items:center;gap:10px;cursor:pointer}.strategy-toggle input{width:19px;height:19px;accent-color:#315b45}.strategy-toggle strong,.strategy-toggle small{display:block}.strategy-toggle strong{font-size:13px}.strategy-toggle small{font-size:11px;margin-top:5px;color:#74715a}.text-link{border:0;background:transparent;padding:8px 0;color:inherit;font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:36px}.match-options>.text-link{color:#6d684e;margin-top:3px}.season-counter{font:15px Georgia,'Songti SC',serif;color:#ead7a7;border:1px solid #a78e5655;background:#0f2e26;border-radius:20px;padding:7px 13px;white-space:nowrap}.season-counter small{font-size:11px;color:#b6be9a;margin-left:7px}.season-track b.current:after{display:none!important}.match-summary{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#c3c6a6;padding:0 3px}.tabletop.variant-game,.tabletop.variant-game:has(.delivery-bar){height:auto;min-height:calc(100dvh - 60px);grid-template-rows:auto auto minmax(360px,1fr) auto auto auto;align-content:start}.variant-game .play-surface{min-height:390px!important}.variant-game .personal{padding-bottom:9px}.royal-objective{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:14px 20px;border:1px solid #d4b36670;border-radius:9px;background:linear-gradient(110deg,#173931,#3f4b30);box-shadow:0 5px 12px #031c1760}.royal-heading{display:flex;align-items:center;gap:12px}.royal-seal{font-size:39px;color:#e7cc85}.royal-heading h2{font:20px 'Songti SC',serif;letter-spacing:3px;margin:0 0 6px}.royal-heading p{font-size:11px;color:#bfc3a0;margin:0}.royal-materials{display:flex;gap:19px;flex:1;justify-content:center}.royal-materials>span{font-size:11px;color:#c8c7a8}.royal-materials b{display:block;margin-top:5px;font:21px Georgia,serif;color:#e8dfbf}.royal-materials .fulfilled b{color:#c8dc8a}.royal-submit{display:flex;flex-direction:column;gap:6px;text-align:center}.royal-submit .primary{background:#d9bd78;border-color:#e4cd93;color:#302c1e}.royal-submit small{font-size:10px;color:#c6c6a5}.royal-rivals{flex-basis:100%;display:flex;gap:18px;font-size:11px;color:#b8c1a1;border-top:1px solid #a49c5840;padding-top:9px}.royal-rivals b{color:#e0d3a7;margin-left:4px}.strategy-rack{padding:12px 16px;background:#102e25aa;border:1px solid #a68e5155;border-radius:9px}.strategy-rack-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.strategy-rack-heading strong{font:15px 'Songti SC',serif}.strategy-rack-heading strong span{font:11px sans-serif;color:#c7c5a1;margin-left:5px}.strategy-rack-heading small{display:block;color:#aeb994;font-size:11px;margin-top:5px}.strategy-rack-actions{display:flex;align-items:center;gap:15px}.strategy-rack-actions .secondary{min-height:38px;font-size:12px;padding:7px 12px}.strategy-hand{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.strategy-empty{font-size:12px;color:#a8b590;margin:3px 0}.strategy-card{display:flex;align-items:center;gap:9px;min-height:59px;border:1px solid #a69c7255;border-radius:6px;background:#e9ddb8;color:#4c4930;padding:9px 12px;text-align:left;box-shadow:0 3px 0 #a79161}.strategy-card.usable{border-color:#f5d371;box-shadow:0 0 0 2px #d9c77988,0 3px 0 #a79161}.strategy-symbol{font-size:27px;line-height:1;color:#aa833d;min-width:26px;text-align:center}.strategy-card strong{font-size:13px;display:block}.strategy-card small{display:block;font-size:10px;margin-top:5px;color:#6b7153}.strategy-card>b{font-size:12px;margin-left:6px}.strategy-guide>p,.strategy-detail>p{font-size:14px;line-height:1.8}.strategy-guide article{display:flex;gap:15px;padding:14px 0;border-top:1px solid #b5a77444}.strategy-guide h3{font-size:16px;margin:0 0 5px}.strategy-guide h3 small{display:inline-block;font-size:11px;color:#7d7656;font-weight:400;margin-left:8px}.strategy-guide article p{font-size:13px;line-height:1.75;margin:0}.strategy-detail>.strategy-symbol{display:block;font-size:42px;margin:15px}.strategy-target{display:flex;flex-direction:column;gap:8px;margin:18px 0;font-size:13px}.strategy-target select{width:100%;min-height:48px;white-space:normal;border:1px solid #bfb28d;background:#fff8e8;color:#344b3d;padding:10px 8px;border-radius:5px}.strategy-detail .primary{margin-bottom:14px}.variant-note,.strategy-unavailable{font-size:12px!important;color:#78755d;background:#d6c99530;padding:10px;border-radius:5px}.variant-game .action-area{position:sticky;bottom:8px;z-index:7}.variant-game .action-bar{background:#102f28f5}.variant-game .selection-panel{bottom:calc(100% + 8px)}
@media(min-width:900px){.variant-game .turn-strip{padding:0 40px}.variant-game .board-window{height:390px}.variant-game .strategy-hand{gap:8px}.variant-game .personal-content{min-height:135px}}
@media(max-width:899px){.tabletop.variant-game{display:flex}.variant-game .play-surface{min-height:0!important}.royal-objective{gap:13px;padding:13px}.royal-heading{width:100%}.royal-materials{justify-content:flex-start;gap:15px}.royal-submit .primary{padding:9px;font-size:12px}.royal-rivals{gap:10px;flex-wrap:wrap}.match-summary{font-size:10px;flex-wrap:wrap}.strategy-rack{padding:11px}.strategy-rack-heading{align-items:flex-start}.strategy-rack-actions{flex-direction:column;gap:0;align-items:flex-end}.strategy-rack-heading small{max-width:180px;line-height:1.6}.strategy-card{flex:1 1 140px;padding:10px;min-height:64px}.season-track{padding:0}.season-counter{font-size:13px;padding:6px 9px}.season-counter small{display:none}.match-options .setting-line{font-size:13px}.strategy-target select{font-size:12px}.royal-submit{width:100%;text-align:left}.royal-submit small{text-align:center}}

#modal .strategy-rack{color:#f0e3ba}#modal .strategy-rack .text-link{color:#dfd4ac}.strategy-shortcut{white-space:nowrap}.variant-game .turn-actions{flex-wrap:wrap}
@media(max-width:899px){.welcome{overflow-x:clip}}

@media(min-width:1100px){
 .welcome{max-width:1440px;grid-template-columns:minmax(280px,1fr) minmax(560px,660px);gap:35px;align-items:start;padding:18px 30px 28px;min-height:0}
 .welcome-copy{max-width:none}.welcome-table{align-self:center}.setup{max-width:none;display:grid;grid-template-columns:1.15fr 1fr;column-gap:24px;padding:20px 24px}.setup>.section-head,.setup>.mode-tabs,.setup>.mode-help,.setup>.start-button,.setup>.continue-button,.setup>.local-note{grid-column:1/-1}
 .setup>.match-options{grid-column:1;grid-row:4;margin:0 0 12px;border-bottom:0}.participants{grid-column:2;grid-row:4;padding:8px 0 0 18px;border-left:1px solid #aca78066}.setup>.mode-help{min-height:0;margin:9px 0 12px}.setup .setting-line{font-size:13px}.setup .ai-settings label{font-size:12px}.setup .ai-settings select{padding:6px 8px}.setup .seed-details input{max-width:110px}.setup .section-head{margin-bottom:12px}.game-title{margin-bottom:15px}.game-title h1{font-size:36px;margin:8px 0}.game-title p{font-size:12px}.welcome-ports{max-width:460px}.welcome-materials{gap:14px}
}

.idle-income-note{display:block;font-size:10px;color:#c3caa1;line-height:1.4;margin:-2px 0 5px}.delivery-end{white-space:normal!important}

/* Unused ship pieces leave the player rack and sit at the shared rental quay. */
.rental-yard{position:absolute;z-index:3;bottom:13px;left:6%;right:6%;display:flex;align-items:center;gap:15px;padding:10px 13px;border:1px solid #c4ad736e;border-radius:8px;background:linear-gradient(110deg,#e6d7aa,#c4b580);color:#51452b;box-shadow:0 4px 0 #766442,0 7px 12px #092a2980}
.rental-heading{flex-shrink:0}.rental-heading h3{font:17px 'Songti SC',serif;letter-spacing:3px;margin:0 0 5px}.rental-heading>span{font-size:11px}.rental-heading small{display:block;font-size:9px;margin-top:4px;color:#756b4d}.rental-fleet{display:grid;grid-template-columns:repeat(var(--rental-players,4),minmax(0,1fr));gap:7px;flex:1;min-width:0}.rental-slip{position:relative;text-align:center;border:1px dashed #8f866077;border-bottom:3px solid var(--player);border-radius:5px;min-width:0;background:#f9edc632}.rental-slip.has-ships{background:#fcf0cc70}.rental-owner{position:absolute;left:4px;top:3px;font:bold 11px Georgia,serif;color:var(--player)}.rental-ships{display:flex;align-items:center;justify-content:center;height:40px;padding-left:7px}.rental-ship{display:block;min-width:0;max-width:38px;flex:1}.rental-ship img{width:43px;height:38px;max-width:none;object-fit:contain;filter:drop-shadow(0 3px 1px #4c493b66)}.rental-slip>small{display:block;font-size:9px;padding:0 2px 4px}.rental-empty{color:#a19570;font-size:16px}.rental-overflow{font-size:11px;margin-left:4px}
@media(min-width:900px){.tabletop .board-window{height:calc(100% - 102px)!important}.variant-game .play-surface{min-height:490px!important}.tabletop:not(.variant-game){min-height:860px}.tabletop:not(.variant-game) .play-surface{min-height:440px!important}}
@media(max-width:1100px) and (min-width:900px){.rental-yard{gap:9px;padding:8px;left:5%;right:5%}.rental-heading h3{font-size:15px}.rental-heading small{font-size:8px}.rental-fleet{gap:4px}}
@media(max-width:899px){.rental-yard{position:relative;inset:auto;margin:5px 15px 20px;padding:11px;display:block}.rental-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.rental-heading h3{font-size:16px;margin:0}.rental-heading small{margin:0}.rental-fleet{gap:7px}.rental-ships{height:45px}.rental-heading>span{margin-left:auto}.rental-heading small{flex-basis:100%}.rental-ship img{width:36px;height:37px}.rental-slip>small{font-size:10px}}
