/* Viewport shell: only the board regions, action list and hand scroll. */
:root{--dock-peek:78px;--sidebar-width:260px;--board-zoom:1;--dock-height:330px}
html,body{height:100%;margin:0;overflow:hidden}
body{height:100dvh;display:flex;flex-direction:column;min-width:0}
body>header{flex:none;padding:7px 14px;min-height:44px;gap:12px}
header .eyebrow,header .edition{display:none}header h1{font-size:26px;margin:0}header nav{gap:6px;max-width:none}header nav button{font-size:11px;padding:6px 9px}
.notice{flex:none;padding:3px 14px;font-size:10px;line-height:1.5;display:flex;align-items:center;gap:8px;min-width:0}.notice #mode-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notice .auto-save-note,.notice #limits{display:none}.notice #current-set{flex:none;font-size:10px;padding:2px 5px}
.online-bar{flex:none;padding:5px 12px;gap:6px}.online-bar strong{font-size:11px;min-width:0}.online-bar button{font-size:10px;padding:5px}
main,body.has-continents main{position:relative;flex:1;display:flex;flex-direction:column;align-items:stretch;min-height:0;width:100%;max-width:none;margin:0;padding:0 0 var(--dock-peek);overflow:hidden;isolation:isolate}
.center{flex:none;display:flex;align-items:center;gap:15px;padding:8px 14px;min-height:60px;border-bottom:1px solid #67826955;background:#193d31}
.center>div:first-child{min-width:0;flex:1}.center .eyebrow{font-size:9px;letter-spacing:1px}.center h2{display:inline;font-size:19px;margin:0 0 0 7px}.center p{font-size:11px;line-height:1.3;margin:4px 0 0;max-height:29px;overflow:auto;max-width:640px}.center .food-base{display:flex;align-items:center;gap:7px;flex:none;max-width:225px;padding:0}.center #food-number{font-size:24px;line-height:1}.center #food-dots{gap:3px;max-width:100px;display:flex;flex-wrap:wrap}.center #food-dots .dot{width:9px;height:9px}.center #food-label{font-size:9px;max-width:110px}.center .three-pools #food-dots{display:none}body.has-continents .center .food-base{display:none}
.center .deck{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:62px;width:auto;height:auto;background:none;border:0;box-shadow:none;padding:0;transform:none}.center .deck:before,.center .deck:after{display:none}.center .deck strong{position:static;background:none;font-size:20px;color:#e8e4ba;transform:none;line-height:1}.center .deck span{font-size:9px;color:#bdcba7}.center .deck small{position:static;color:#bdcba7;font-size:9px;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.table-controls{display:flex;gap:6px;align-items:center;flex:none}.table-controls button{font-size:11px;padding:6px 8px}.table-controls label{display:flex;gap:5px;align-items:center;font-size:10px}.table-controls select{font:inherit;color:#e9efda;background:#294d3a;border:1px solid #728970;border-radius:4px;padding:5px}.table-controls button[aria-expanded=true]{background:#dbe5b9;color:#274b36}
.workspace{width:100%;flex:1;min-height:0;min-width:0;display:flex;position:relative;overflow:hidden}
.workspace>.table{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;position:relative}
.workspace>aside,body.has-continents .workspace>aside{display:none;flex:none;width:var(--sidebar-width);height:100%;align-self:stretch;min-height:0;max-height:none;position:relative;top:auto;order:0;overflow:hidden;padding:12px;flex-direction:column;border-left:1px solid #6b806b66}
body.sidebar-open .workspace>aside{display:flex}.action-head{flex:none;padding:0 24px 0 0;margin:0 0 8px}.action-head .eyebrow{display:none}.action-head h2{font-size:16px;line-height:1.2;margin:0}
#sidebar-close{position:absolute;top:7px;right:8px;z-index:1;background:transparent;border:0;padding:4px 7px;font-size:19px}
#actions{flex:1;min-height:0;max-height:none;overflow:auto;display:grid;grid-template-columns:1fr;align-content:start;gap:6px;padding:3px;scrollbar-width:thin}#actions button{font-size:12px;padding:8px}#actions p{font-size:11px}.board-selected{grid-column:auto;min-width:0}.board-selected .card-art{width:26px;height:26px}.board-selected span{overflow-wrap:anywhere}
.journal{display:block;flex:none;margin:9px 0 0;padding:9px 0 0;max-height:34%;overflow:auto;font-size:11px}.journal summary{position:sticky;top:0;background:#192f28;padding:4px 0;cursor:pointer}.journal ol{font-size:10px;margin-top:6px;padding-left:18px}.journal li{margin-bottom:6px}
/* A fixed map with independently scrollable territories. */
.world-map{flex:1;min-height:0;display:flex;flex-direction:column;padding:8px;border-width:1px;overflow:hidden}
.map-toolbar{flex:none;gap:7px;margin-bottom:5px;min-height:27px}.map-toolbar>div{width:auto;margin-right:auto}.map-toolbar h2{font-size:17px;margin:0}.map-toolbar .eyebrow{display:none}.map-toolbar button{font-size:10px;padding:5px 7px}
.map-legend{flex:none;margin:0 0 5px;padding:5px 9px;gap:5px 16px;border-radius:5px}.map-player{min-width:0;gap:5px;font-size:10px}.map-player>i{width:8px;height:8px}.map-player small{font-size:8px;display:inline;margin-left:5px}.map-plant-summary{flex:none;font-size:9px;margin:0 0 5px}.map-scroll-hint{display:none}
.map-viewport{flex:1;min-height:0;overflow:hidden;border-radius:7px}
.shared-territories{height:100%;min-height:0;min-width:0;width:100%;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr) minmax(0,1fr);background-size:cover;background-position:center;overflow:hidden;border-radius:7px}
.map-territory,.map-territory.ocean{min-height:0;min-width:0;overflow:hidden}.map-territory.laurasia{grid-column:1;grid-row:1}.map-territory.gondwana{grid-column:1;grid-row:2}.map-territory.ocean{grid-column:2;grid-row:1/3}
.map-territory-content{height:100%;min-height:0;padding:5px;display:flex;flex-direction:column;box-sizing:border-box}
.map-territory-heading{flex:none;min-height:34px;gap:7px;padding:4px 7px;margin:0 0 4px;border:0;align-items:center;backdrop-filter:none}.map-territory-heading>div>span{display:none}.map-territory-heading h3{font-size:18px;margin:0}.map-territory-heading small{font-size:9px}.map-food{display:flex;align-items:center;gap:5px;min-width:0;max-width:130px;padding:3px 6px;border:0}.map-food strong{font-size:20px}.map-food span{font-size:8px!important;max-width:64px;margin:0}.map-territory.active-territory .map-territory-heading h3:after{font-size:9px}
.map-territory-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#487a6588 #eaf0d938;padding:3px}
.map-territory-scroll-inner{zoom:var(--board-zoom);padding:2px 2px 9px}
.map-zone-label{font-size:8px;margin:4px 0 6px;letter-spacing:.6px}.map-plants{padding-bottom:6px;margin-bottom:6px}.map-plants .plant-grid{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:9px;overflow:auto;padding:2px 3px 6px;scrollbar-width:thin}.map-plants .plant-card{width:188px;max-width:none;flex:none}.map-plants .plant-card .paper-plant{height:114px;gap:4px;padding:4px;border-width:3px}.map-plants .plant-card .plant-trait-ribbon{font-size:8px;padding:3px;border-width:2px}.map-plants .plant-card .plant-traits,.map-plants .plant-card small{display:none}.map-plants .plant-food-pad{padding:18px 5px;gap:6px}.map-plants .plant-pad-food{gap:5px}.map-plants .plant-pad-food .dot{width:12px;height:12px}.map-plants .plant-pad-id,.map-plants .plant-pad-count{font-size:7px}.map-plants .plant-pad-shelters .dot{width:9px;height:9px}.map-plants .plant-growth{gap:1px;margin-bottom:3px}.map-plants .growth-row{grid-template-columns:26px 10px 1fr;height:10px;gap:1px}.map-plants .growth-row b{font-size:10px}.map-plants .growth-pips{gap:1px}.map-plants .growth-pips i{width:6px;height:6px}.map-plants .growth-pips i:nth-child(n+4){width:7px;height:7px;margin-left:-3px}.map-plants .paper-en{font-size:7px}.map-plants .plant-print-panel .paper-name{font-size:8px;margin-top:1px}.map-plants .plant-special-rule{font-size:7px;margin-bottom:3px}.map-plants .plant-print-footer{height:18px}.map-plants .plant-print-footer .paper-art{width:25px;height:19px}.map-plants .paper-plant-limit{font-size:6px;margin-top:1px}
.map-territory .territory-animals{min-height:0;justify-content:flex-start;gap:10px;align-items:flex-start}.map-territory .animal{--card-width:100px;--stack-height:132px;--stack-step:26px}.map-territory .stack-property{font-size:9px;padding:2px 4px}.map-territory .stack-property b{font-size:9px}.map-territory .stack-layer{border-width:3px;border-radius:5px}.map-territory .paper-back{padding:6px}.map-territory .paper-back .paper-art{height:72px;margin:1px 0}.map-territory .paper-back .paper-en{font-size:8px}.map-territory .paper-back-name{font-size:8px;margin-bottom:12px}.map-territory .map-owner-label{font-size:8px;padding:3px 4px;margin-top:5px}.map-territory .animal-id,.map-territory .animal .state{font-size:9px}.map-territory .animal .animal-top{padding-top:3px}.map-territory .animal .links{font-size:8px}.map-territory .animal-food{bottom:19px;right:5px;gap:3px}.map-territory .animal-food .dot{width:11px;height:11px}.map-territory .state-badges{top:calc(var(--layers)*var(--stack-step) + 20px);gap:2px}.map-territory .state-badge{font-size:7px;padding:2px}.map-territory .pair-tray{padding-top:6px;justify-content:flex-start}.map-territory .pair-card{font-size:9px;padding:4px 7px}.map-territory .pair-card small{font-size:8px}.map-territory .add-animal{width:100px;min-height:132px;font-size:10px;padding:7px}.map-territory .map-empty{font-size:10px;padding:13px}.map-territory .target-available:after{font-size:8px}
/* Classic games also have bounded player / plant regions. */
body:not(.has-continents) .workspace>.table>.habitat,body:not(.has-continents) .workspace>.table>.plants-section{flex:1;min-height:0;overflow:auto;padding:9px 12px;overscroll-behavior:contain;scrollbar-width:thin}
body:not(.has-continents) #extra-opponents{display:contents}body:not(.has-continents) #extra-opponents>.habitat{flex:1;min-height:0;overflow:auto;padding:9px 12px}
body:not(.has-continents) .section-title{margin-bottom:7px}.habitat .section-title h2{font-size:12px}.habitat .section-title>span{font-size:10px}body:not(.has-continents) .animals{zoom:var(--board-zoom);gap:12px;justify-content:flex-start}.habitat .empty{font-size:11px;padding:14px}.habitat .animal{--stack-card:100px;--stack-height:138px;--stack-step:27px}.habitat .stack-property{font-size:9px;padding:2px 4px}.habitat .paper-back .paper-art{height:77px}.habitat .paper-back .paper-en{font-size:9px}.habitat .paper-back-name{font-size:8px}.habitat .stack-layer{border-width:3px}.habitat .animal .links{font-size:9px}.habitat .animal-food .dot{width:12px;height:12px}.habitat .animal-top{padding-top:5px}.habitat .animal-id,.habitat .state{font-size:10px}.habitat .state-badges{top:calc(var(--layers)*var(--stack-step) + 24px)}
body:not(.has-continents) #plants>.plant-grid{zoom:var(--board-zoom);flex-wrap:nowrap;justify-content:flex-start;overflow:auto}.plants-section .section-title h2{font-size:12px}.plants-section .muted{font-size:9px;margin:3px 0 7px}
.shells-section{flex:none;padding:4px 10px;max-height:48px;overflow:auto;display:flex;align-items:center;gap:12px}.shells-section h2{font-size:10px;white-space:nowrap;margin:0}.shells-section p{font-size:10px;margin:0}.shell-row{margin:0;gap:6px}.shell-card{height:34px;width:auto;min-width:76px;display:flex;align-items:center;gap:5px;font-size:9px;border-width:2px;padding:3px}.shell-card .card-art{width:26px;height:23px;margin:0}
/* Hand drawer reserves only a header and a glimpse of card titles. */
.hand-section{position:absolute;z-index:20;bottom:0;left:0;right:0;height:min(var(--dock-height),calc(100% - 50px));padding:0 12px 9px;background:#e9e7d8;box-shadow:0 -3px 18px #071e2866;border-top:1px solid #899879;display:flex;flex-direction:column;transform:translateY(calc(100% - var(--dock-peek)));transition:transform .22s ease;overflow:hidden;box-sizing:border-box}
.hand-open .hand-section{transform:translateY(0)}.hand-section>.section-title{display:flex;flex:none;align-items:center;margin:0;height:33px;padding:0;gap:8px}.hand-section #hand-toggle{flex:1;display:flex;align-items:center;justify-content:space-between;background:transparent;color:#345438;border:0;padding:7px 4px;font-size:12px;text-align:left}.hand-section #hand-toggle-label{font-size:10px}.hand-section #discard{font-size:10px;padding:4px 7px}.hand-section #hand-instruction{font-size:10px;margin:0 0 5px;flex:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hand-section #hand{flex:1;min-height:0;display:flex;flex-wrap:nowrap;justify-content:flex-start;align-items:flex-start;gap:11px;padding:5px 4px 10px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.hand .hand-slot,body[data-table-density=compact] .hand .hand-slot{flex:0 0 143px;max-width:none;width:143px}.hand .card{padding:0;width:100%}.hand .paper-card{width:100%;height:233px}.hand .paper-name{font-size:12px}.hand .paper-art{height:73px}.hand .paper-rule{font-size:10px}.hand .zoom-card{font-size:10px;min-height:24px;padding:3px;margin:3px 0 0}.hand .card:hover{transform:translateY(-3px)}.hand .card.selected{transform:none;outline:3px solid #be8838;outline-offset:2px}
.sidebar-open .hand-section{right:var(--sidebar-width)}
dialog{max-height:calc(100dvh - 26px);max-width:calc(100vw - 26px);overflow:auto;overscroll-behavior:contain}#error{z-index:80;max-width:calc(100vw - 24px);max-height:40vh;overflow:auto}
@media(max-width:999px){:root{--sidebar-width:290px}.workspace>aside,body.has-continents .workspace>aside{position:absolute;z-index:30;right:0;top:0;bottom:0;width:min(var(--sidebar-width),90%);box-shadow:-10px 0 30px #0e281a66}.sidebar-open .hand-section{right:0}.map-player small{display:none}.table-controls label{font-size:0}.table-controls select{font-size:10px}.center{gap:9px}.center .deck small{display:none}}
@media(max-width:600px){:root{--dock-peek:69px;--dock-height:310px}body>header{padding:5px 8px;min-height:35px;gap:5px}header h1{font-size:21px}header nav button{font-size:9px;padding:5px}header nav{gap:4px;flex-wrap:nowrap;max-width:none}header #help{display:inline-block}.notice{padding:2px 8px;font-size:9px;gap:4px}.center{padding:6px 8px;gap:6px;flex-wrap:wrap;min-height:0}.center>div:first-child{flex:1 1 calc(100% - 60px)}.center h2{font-size:16px}.center p{font-size:10px;max-height:25px}.center .deck{min-width:40px}.center .deck strong{font-size:17px}.center .deck span{font-size:8px}.center .food-base{max-width:110px}.center #food-label{display:none}.center #food-number{font-size:18px}.table-controls{width:100%;justify-content:flex-end;gap:5px}.table-controls button{font-size:10px;padding:4px 6px}.table-controls label{margin-right:auto}.world-map{padding:5px}.map-toolbar h2{font-size:13px}.map-toolbar{gap:4px}.map-toolbar button{font-size:8px;padding:4px}.map-legend{gap:4px 10px;padding:5px}.map-player{font-size:9px;max-width:47%;overflow:hidden}.map-plant-summary{font-size:8px}.shared-territories{grid-template-columns:1fr 1fr;min-width:0}.map-territory-content{padding:3px}.map-territory-heading{padding:4px;gap:3px;align-items:flex-start;flex-wrap:wrap}.map-territory-heading h3{font-size:14px}.map-territory-heading small{font-size:8px}.map-food{padding:0;background:transparent}.map-food strong{font-size:14px}.map-food span{font-size:7px!important}.map-territory-scroll{padding:1px}.map-territory-scroll-inner{min-width:116px}.map-territory .territory-animals{gap:8px}.hand-section{padding:0 8px 6px}.hand-section>.section-title{height:30px}.hand-section #hand-instruction{display:none}.hand-section #hand{padding-top:5px}.hand .hand-slot,body[data-table-density=compact] .hand .hand-slot{flex-basis:132px;width:132px}.hand .paper-card{height:228px}.hand .paper-name{font-size:11px}.hand .paper-art{height:68px}.hand-section #hand-toggle{font-size:11px}.hand-section #hand-toggle-label{font-size:9px}.journal{max-height:30%}}
@media(max-height:550px){:root{--dock-peek:57px;--dock-height:280px}.notice{display:none}.center p{display:none}.center{min-height:43px;padding-top:4px;padding-bottom:4px}.world-map .map-plant-summary{display:none}.map-toolbar{min-height:22px}.map-legend{margin-bottom:3px}.hand-section #hand-instruction{display:none}.hand .paper-card{height:210px}.hand .paper-art{height:60px}.hand .paper-rule{font-size:9px}}
@media(prefers-reduced-motion:reduce){.hand-section{transition:none}}

/* Place flora beside animals on wide tables so neither hides the other. */
@media(min-width:1000px){
.map-territory-scroll-inner:has(.map-plants){display:grid;grid-template-columns:132px minmax(0,1fr);column-gap:9px;align-content:start;align-items:start}
.map-territory-scroll-inner>.map-plants{grid-column:1;grid-row:1/4;margin:0;padding:0;border:0}
.map-territory-scroll-inner>.map-zone-label,.map-territory-scroll-inner>.territory-animals,.map-territory-scroll-inner>.pair-tray{grid-column:2}
.map-plants .plant-grid{flex-direction:column;gap:7px;padding:2px}
.map-plants .plant-card{width:124px}.map-plants .plant-card .paper-plant{height:87px;padding:3px;gap:2px}
.map-plants .plant-food-pad{padding:12px 3px;gap:4px}.map-plants .plant-pad-food{gap:2px}.map-plants .plant-pad-food .dot{width:9px;height:9px}
.map-plants .plant-growth{zoom:.78}.map-plants .paper-en{font-size:6px}.map-plants .plant-print-panel .paper-name{font-size:7px}.map-plants .plant-special-rule{font-size:6px;margin:0}.map-plants .plant-print-footer{height:12px}.map-plants .plant-print-footer .paper-art{height:12px;width:17px}.map-plants .paper-plant-limit{font-size:5px}
.map-territory .animal{--card-width:88px;--stack-height:115px;--stack-step:23px}.map-territory .territory-animals{gap:9px}.map-territory .paper-back .paper-art{height:59px}.map-territory .add-animal{width:88px;min-height:115px}
}

/* Player boards share the available area instead of forming a long column. */
body:not(.has-continents) .workspace>.table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);align-items:stretch}
body:not(.has-continents) .workspace>.table>.plants-section{grid-column:1/-1;order:1}
body:not(.has-continents) .shells-section{grid-column:1/-1;order:2}
.habitat .card-stack,.habitat .stack-layer{--stack-height:120px;--stack-step:24px}.habitat .animal{--card-width:88px}.habitat .paper-back .paper-art{height:62px}
body[data-table-density=compact] .habitat .paper-back .paper-art{height:62px}body[data-table-density=compact] .map-territory .paper-back .paper-art{height:59px}body[data-table-density=compact] .map-territory .stack-property{font-size:9px}
@media(max-width:999px){
.map-territory-scroll-inner{display:flex;flex-direction:column;align-items:stretch}
.map-territory-scroll-inner>.map-zone-label{order:0}.map-territory-scroll-inner>.territory-animals{order:1}.map-territory-scroll-inner>.map-plants{order:2;margin-top:9px}.map-territory-scroll-inner>.pair-tray{order:3}
.map-territory .territory-animals{flex-wrap:nowrap}.map-territory .animal{--card-width:88px;--stack-height:115px;--stack-step:23px}.map-territory .paper-back .paper-art{height:59px}
}
@media(max-width:600px){
.center{display:grid;grid-template-columns:minmax(0,1fr) 54px;gap:5px 8px}.center>div:first-child{grid-column:1;grid-row:1}.center .deck{grid-column:2;grid-row:1}.center .food-base{grid-column:1;grid-row:2;max-width:100%;justify-self:start}.center #food-dots{margin:0}.center .table-controls{grid-column:1/-1;grid-row:3}.center .deck span{font-size:8px}.center .food-base #food-label{display:none}
body.has-continents .center .table-controls{grid-row:2}.map-territory-heading small{display:block;line-height:1.25}.map-territory.ocean .map-territory-heading small{max-width:120px}.map-territory .map-food span{display:none}
.habitat .section-title{display:block}.habitat .section-title>span{display:block;margin-top:3px;font-size:8px}.habitat .section-title h2{font-size:10px}
}

.habitat .stack-layer{height:var(--stack-height)}
/* Keep the collapsed drawer usable on devices with a home indicator. */
@supports(padding:env(safe-area-inset-bottom)){main,body.has-continents main{padding-bottom:calc(var(--dock-peek) + env(safe-area-inset-bottom))}.hand-section{height:min(calc(var(--dock-height) + env(safe-area-inset-bottom)),calc(100% - 50px));padding-bottom:calc(9px + env(safe-area-inset-bottom));transform:translateY(calc(100% - var(--dock-peek) - env(safe-area-inset-bottom)))}.hand-open .hand-section{transform:translateY(0)}}

@media(max-height:550px){.map-viewport{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.shared-territories{min-height:420px}.map-territory-heading{min-height:26px;padding:3px 5px}.map-territory-heading h3{font-size:14px}.map-territory-heading small{font-size:8px}.map-food strong{font-size:15px}}

.map-territory-heading h3{line-height:1.05}.map-territory-heading small{line-height:1.2}
@media(max-width:360px){header h1{font-size:18px}header nav button{font-size:8px;padding:5px 4px}header nav{gap:3px}}

/* Table revision 1: keep the game in view; secondary controls live in menus. */
:root{--dock-peek:91px;--dock-height:292px}
#table-menu{position:fixed;inset:52px auto auto 12px;width:min(330px,calc(100vw - 24px));padding:18px;border:1px solid #78947b;border-radius:10px;background:#193b2e;color:#e9ecd6;box-shadow:0 12px 40px #06170dbb}
#table-menu h2{font:26px Georgia,serif;margin:0 0 14px}#table-menu nav{display:grid;gap:7px}#table-menu .notice{display:flex;flex-wrap:wrap;padding:13px 0;gap:7px;margin:12px 0;border-block:1px solid #78947b55}#table-menu .notice #limits{display:inline-block}#table-menu #mode-name{white-space:normal;width:100%}
.center{min-height:46px;height:46px;padding:5px 10px;gap:12px;display:flex;flex-wrap:nowrap}
#menu-toggle{flex:none;padding:4px 9px;font-size:21px;background:transparent;border-color:#79957955}
.center .turn-status{flex:1;min-width:0;display:flex;gap:9px;align-items:baseline;overflow:hidden;white-space:nowrap}.center .turn-status .eyebrow{font-size:10px;letter-spacing:0}.center h2{font-size:17px;margin:0}#turn-name{font-size:11px;color:#d7dfa9;overflow:hidden;text-overflow:ellipsis}
.center .deck{flex-direction:row;gap:5px;min-width:0}.center .deck strong{font-size:19px}.center .deck small{display:none}.center .deck span{font-size:9px;max-width:35px}.center .table-controls{width:auto;gap:6px}.center .table-controls label{font-size:0}.center .table-controls select{font-size:10px}.center .food-base{max-width:150px}.center #food-dots{display:none}.center #food-label{font-size:8px}
.action-instruction{font-size:11px;line-height:1.4;margin:0 0 9px;color:#becfb3;flex:none;max-height:90px;overflow:auto}
.world-map{position:relative;padding:5px}.world-map .map-toolbar{position:absolute;z-index:8;top:5px;right:6px;display:block;min-height:0;margin:0;border-radius:5px;font-size:10px;background:#e4e9d7;color:#325747;padding:0;border:1px solid #78978577}.map-toolbar summary{cursor:pointer;padding:5px 9px;list-style:none}.map-toolbar[open]{box-shadow:0 4px 12px #183d3966;max-width:180px}.map-toolbar[open] button{display:block;width:calc(100% - 10px);margin:5px}.world-map .map-legend{padding:4px 72px 4px 8px;min-height:25px;margin:0 0 3px;gap:3px 12px;background:transparent;border:0}.map-player{min-width:0}.world-map .map-plant-summary{position:absolute;z-index:3;bottom:8px;right:10px;margin:0;padding:4px 6px;border-radius:4px;background:#e5f0e7de;color:#375949;pointer-events:none;font-size:9px}
.shared-territories{grid-template-columns:minmax(0,2fr) minmax(0,1fr);background-size:100% 100%}.map-territory.ocean .map-territory-scroll{padding-bottom:28px}.map-territory-heading h3{font-size:17px}.map-territory.ocean .map-territory-heading{flex-wrap:wrap}.map-territory .map-empty{padding:9px;font-size:9px}.map-territory.ocean .map-territory-scroll-inner{min-width:100px}
/* Controls sit to the left, exposing both property names in the resting hand. */
.hand-section{display:grid;grid-template-columns:101px minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:8px;padding:7px 10px 6px;align-items:start}
.hand-section>.section-title{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:6px;height:auto;align-items:stretch;padding-top:1px}.hand-section #hand-toggle{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:6px 2px;line-height:1.3;flex:none;font-size:11px}.hand-section #hand-toggle-label{font-size:10px}.hand-section #discard{font-size:9px;padding:4px;align-self:flex-start}.hand-section #hand-instruction{display:none}
.hand-section #hand{grid-column:2;grid-row:1;height:100%;width:100%;padding:0 4px 9px;gap:9px;align-items:flex-start;scroll-padding-inline:4px}.hand .card{position:relative}.hand .paper-heading{min-height:46px}.hand .paper-heading .paper-name{font-size:12px;line-height:1.12}.hand .paper-heading .paper-en{font-size:8px}.hand-peek-alternate{position:absolute;top:49px;left:6px;right:6px;display:block;background:#ece9cd;color:#31553e;border-top:1px solid #66826355;padding:3px 2px;font-size:10px;line-height:1.1;white-space:normal;pointer-events:none}.hand-open .hand-peek-alternate{display:none}.hand-open .hand-section{transform:translateY(0)}
/* Large, faithful botanical illustrations on green plant cards. */
.paper-plant-property .paper-art.card-art{filter:none;mix-blend-mode:normal;background-color:transparent;width:auto;aspect-ratio:1;align-self:center;flex:none;margin:4px auto}
.paper-card.paper-plant,.plant-card .paper-card.paper-plant{position:relative;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);background:#285b38;border-color:#376b44;padding:7px;gap:7px;color:#f0efdb}
.paper-plant .plant-food-pad{background:#eceace;padding:0 4px 22px;overflow:hidden;min-height:0;justify-content:flex-end;border-radius:4px;gap:2px}
.paper-plant .plant-food-pad>.paper-art{position:absolute;top:0;left:0;width:100%;height:auto;aspect-ratio:1;margin:0;filter:none;mix-blend-mode:normal;background-color:#eceace}
.paper-plant .plant-pad-id{top:2px;left:3px;color:#264b33;background:#eceacebf;padding:1px 3px;border-radius:3px;z-index:1}
.paper-plant .plant-pad-food,.paper-plant .plant-pad-shelters{position:relative;z-index:1;gap:2px;background:#264b3370;border-radius:4px;padding:2px}.paper-plant .plant-pad-food:empty,.paper-plant .plant-pad-shelters:empty{display:none}.paper-plant .plant-pad-count{bottom:4px;color:#24432d;font-weight:700;background:#eceacee8;border-radius:3px;padding:1px 4px;z-index:1}
.paper-plant .plant-print-panel{justify-content:flex-start;background:transparent!important;padding:1px!important}.paper-plant .plant-print-name{margin:0 0 10px}.paper-plant .plant-print-name .paper-name{font-weight:700;color:#f3f0d7}.paper-plant .plant-print-name .paper-en{color:#c7d7b9}.paper-plant .plant-growth{background:#eeecd5;border-radius:4px;padding:4px;margin-bottom:4px}.paper-plant .plant-print-footer{margin-top:auto}.paper-plant .paper-plant-limit{color:#c8d7b8!important}.paper-plant .plant-special-rule{color:#e9edd4}.paper-plant[data-plant-kind=carnivorous] .plant-special-rule{background:#a63745;padding:3px;border-radius:3px}
.map-plants .plant-card{width:176px}.map-plants .plant-card .paper-card.paper-plant{height:119px;padding:4px;gap:4px;border-width:3px}.map-plants .plant-food-pad{padding:0 3px 19px}.map-plants .plant-pad-food .dot{width:14px;height:14px}.map-plants .plant-pad-shelters .dot{width:12px;height:12px}.map-plants .plant-pad-id{font-size:7px}.map-plants .plant-pad-count{font-size:8px}.map-plants .plant-print-name{margin:0 0 5px}.map-plants .plant-print-panel .paper-name{font-size:10px;line-height:1.1}.map-plants .paper-en{font-size:6px}.map-plants .plant-growth{zoom:1;padding:3px;gap:2px}.map-plants .growth-row{grid-template-columns:23px 9px 1fr;height:9px}.map-plants .growth-pips i{width:5px;height:5px}.map-plants .growth-pips i:nth-child(n+4){width:6px;height:6px;margin-left:-3px}.map-plants .plant-special-rule{font-size:8px}.map-plants .plant-print-footer{height:10px}.map-plants .paper-plant-limit{font-size:7px;margin:3px 0 0}
@media(min-width:1000px){.map-territory-scroll-inner:has(.map-plants){grid-template-columns:184px minmax(0,1fr)}}
@media(max-width:600px){:root{--dock-peek:88px;--dock-height:282px}.center{height:43px;min-height:43px;padding:4px 6px;gap:6px}.center .turn-status{display:block;line-height:1.1}.center .turn-status .eyebrow{font-size:8px;margin-right:4px}.center h2{font-size:12px}#turn-name{display:block;font-size:9px;margin-top:3px}.center .deck{display:none}.center .table-controls{gap:4px}.center .table-controls button{font-size:9px;padding:6px}.center .food-base{gap:3px;max-width:38px}.center #food-number{font-size:17px}.center #food-label{display:none}#menu-toggle{font-size:18px;padding:4px 6px}.world-map .map-player{font-size:8px;max-width:48%}.map-player small{display:none}.world-map .map-legend{min-height:32px;gap:3px 8px}.world-map .map-plant-summary{font-size:7px;max-width:28%;bottom:7px;right:7px}.map-territory-heading h3{font-size:13px}.map-territory-heading small{font-size:7px}.hand-section{grid-template-columns:69px minmax(0,1fr);gap:3px;padding:6px 4px}.hand-section #hand-toggle{font-size:10px}.hand-section #hand-toggle-label{font-size:8px}.hand-section #discard{font-size:8px}.hand .paper-heading .paper-name{font-size:11px}.hand-peek-alternate{font-size:9px}.map-territory .map-food{min-width:0}.card-spread .paper-plant .plant-print-name{margin-bottom:6px}}
@media(max-height:550px){:root{--dock-peek:82px;--dock-height:265px}.hand .paper-card{height:210px}}

/* Preserve the alpha of the generated wooden pieces. */
.dot.red,.dot.blue,.dot.yellow,.dot.green{background-color:transparent;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 1px 1px #09251e66);transform:none;width:22px;height:22px}
.map-territory .animal-food .dot,.habitat .animal-food .dot{width:21px;height:21px}.map-plants .plant-pad-food .dot{width:20px;height:20px}.map-plants .plant-pad-shelters .dot{width:17px;height:17px}.paper-plant .plant-pad-food,.paper-plant .plant-pad-shelters{background:#f2eecdbb}.paper-plant .plant-pad-food:empty,.paper-plant .plant-pad-shelters:empty{display:none}

.plant-wood-tree{position:absolute;bottom:12px;left:-9px;width:37px;height:37px;pointer-events:none;filter:drop-shadow(1px 2px 1px #16331e88)}
.card-spread .plant-pad-food .dot{width:30px;height:30px}.card-spread .plant-pad-shelters .dot{width:23px;height:23px}
