/* Keep the existing botanical map, stage ribbon and three-column desktop composition. */
.play-mode .intro,.play-mode #quickDemo,.play-mode .species-switch,.play-mode #worldScenarioToggle,.play-mode #quickLink,.play-mode #l07TrayBtn,.play-mode #l07FocusBtn,.play-mode #l07Tabs,.play-mode .field-head .tools>[data-world-tab],.play-mode .field-head .tools>[data-screen-open],.play-mode #journeyLegacyBtn,.play-mode .field-id,.play-mode .map-count,.play-mode .world-bottom-tools,.play-mode #worldExitBtn{display:none!important}
.play-mode #journeyWelcome[hidden]{display:none!important}.play-mode:not(.play-awaiting) #journeyWelcome{display:none!important}
.play-awaiting .workspace,.play-awaiting .game-hud,.play-awaiting #bfStageBar,.play-awaiting #l07Dock{display:none!important}
.play-mode .brand h1{font-size:26px}.play-mode .chiprow .chip:not(.live){display:none}
.play-mode .field-head{min-height:54px}.play-mode .field-name{font:700 11px system-ui;letter-spacing:.07em}
.play-mode .bf-stage-conditions{align-items:center}.play-next-mini{min-width:0;display:grid;gap:4px}.play-next-mini span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#778071}.play-next-mini b{font-size:13px;line-height:1.3}
.play-mode button[data-play-open],.play-mode button[data-play-action],.play-mode button[data-play-new],.play-mode .play-card button,.play-mode .play-life button{min-height:44px;border:1px solid #cec6ae;border-radius:10px;background:#fbf7e9;padding:10px 12px;color:#375742;font:700 12px system-ui;line-height:1.35;cursor:pointer}
.play-mode .play-primary{width:100%;background:#315b48!important;color:#fff9e9!important;border-color:#315b48!important;min-height:48px!important}
.play-eyebrow{font-size:10px;letter-spacing:.12em;font-weight:800;color:#7b7959}.play-goal{padding:18px 0 14px}.play-goal h2{font:600 27px/1.13 Georgia,serif;letter-spacing:-.025em;margin:10px 0;color:#354d37}.play-goal p,.play-card p,.play-life p,.play-plant p{font-size:13px;line-height:1.55;color:#65705e;margin:10px 0 14px}
.play-progress{display:flex;gap:4px;flex-wrap:wrap;margin-top:14px}.play-progress i{flex:1;height:4px;background:#e4dfcc;border-radius:3px}.play-progress i.done{background:#719775}.play-progress small{flex-basis:100%;margin:5px 0 0;line-height:1.5;color:#777e68;font-size:10px}
.play-pair{display:flex;gap:7px;flex-wrap:wrap}.play-pair>*{flex:1;min-width:105px}.play-rail-links{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:18px 0 12px;border-top:1px solid #ded6bf;margin-top:16px}.play-save{color:#8b8d7a;font-size:10px}
.play-tabs{display:flex;gap:5px;overflow:auto;scrollbar-width:thin;padding:0 0 10px;border-bottom:1px solid #dfd7bf}.play-tabs button{flex:none;white-space:nowrap}.play-tabs [aria-pressed=true]{background:#e3eadb!important;border-color:#7a9675!important}
.play-weather{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:#77836b;padding:13px 0 0}.play-notice{background:#eaf0e0;border-left:3px solid #719575;padding:12px;font-size:12px;line-height:1.5;color:#425b3f;overflow-wrap:anywhere}
.play-card,.play-plant{border-top:1px solid #dcd5bd;padding:18px 0;margin-top:15px}.play-card h3,.play-plant h3,.play-life h3{font:600 21px Georgia,serif;color:#3d5540;margin:0 0 8px}.play-card>button{margin:3px 4px 3px 0}.play-plant header{display:flex;align-items:center;justify-content:space-between;gap:8px}.play-plant small,.play-vessel small{display:block;color:#7d846e;font-size:11px;line-height:1.5;margin-top:9px}
.play-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:15px}.play-metrics span{font-size:10px;color:#79816d}.play-metrics b{display:block;font-size:20px;color:#476749;margin:0 0 5px}.play-stock{display:grid;grid-template-columns:1fr 1fr;gap:7px;font-size:12px}.play-stock span{display:flex;justify-content:space-between;background:#eeeddc;padding:8px;border-radius:7px}
.play-life{display:flex;gap:14px;padding:18px 0;border-top:1px solid #ded8c2}.play-life img{width:62px;height:62px;object-fit:contain}.play-life>div{min-width:0;flex:1}.play-life button{margin:3px 3px 3px 0}.play-life small{font-size:12px;color:#7b806b}
.play-vessel{padding:14px;background:#eeeddd;border:1px solid #ded8c3;border-radius:13px;margin:12px 0}.play-checks{padding-left:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:#688267}.play-clock{display:flex;gap:8px;margin:20px 0 8px;padding-top:16px;border-top:1px solid #dcd5bd}.play-clock button{flex:1}.play-journal{padding-left:20px;font-size:12px;line-height:1.7;color:#5a6b55}.play-journal small{color:#929780}
.play-mode #journeyWelcome{display:flex;position:relative;align-items:center;max-width:1020px;margin:35px auto;padding:40px;border:1px solid #d2cfb6;background:radial-gradient(ellipse at 85% 25%,#dce7d2,#f9f5e5 62%);border-radius:25px;overflow:hidden}.play-welcome-copy{width:55%;position:relative;z-index:1}.play-mode #journeyWelcome h2{font:600 56px/.98 Georgia,serif;letter-spacing:-.04em;color:#344f39;margin:16px 0 20px}.play-mode #journeyWelcome p{font-size:15px;line-height:1.65;color:#6b7864}.play-welcome-art{width:42%;object-fit:contain;filter:drop-shadow(3px 20px 18px #485e3833);transform:rotate(-12deg);margin-left:15px}.play-mode #playStartForm{display:grid;gap:8px;margin:18px 0}.play-mode #playStartForm label{font-size:11px;font-weight:750;color:#64735c}.play-mode #playStartForm input,.play-mode #playStartForm select{font:14px system-ui;padding:12px;border:1px solid #c8c6ae;background:#fffbed;border-radius:10px;min-width:0;color:#3c5140}.play-mode #journeyWelcome small{font-size:11px;color:#7d856e;line-height:1.5;display:block}.play-entry-error{color:#954f3d!important}
@media(min-width:721px){.play-mode #l07Rail{padding:0!important}.play-mode #l07Rail .play-rail{padding:4px 4px 10px}.play-mode #l07Dock[data-tab="play"] #l07Navigation{display:none}.play-mode #l07Dock[data-tab="play"] #l07Content{padding:16px 22px}.play-mode .play-rail .play-goal h2{font-size:25px}.play-mode .field-head .tools .play-toolbar{font-size:11px}.play-mode .field-head{flex-wrap:wrap}}
@media(max-width:720px){.play-mode .lab{padding:8px 10px 20px}.play-mode .mast{padding-bottom:10px}.play-mode .brand h1{font-size:23px}.play-mode .brand .overline{font-size:8px}.play-mode .chip.live{font-size:9px}.play-mode .bf-stage-current{padding:10px}.play-mode #l07Dock[data-tab="play"][data-state="peek"]{height:min(69dvh,590px)}.play-mode #l07Dock[data-tab="play"][data-state="full"]{height:94dvh}.play-mode .play-goal h2{font-size:27px}.play-mode #journeyWelcome{margin:14px 0;padding:25px 21px;display:block}.play-welcome-copy{width:100%}.play-mode #journeyWelcome h2{font-size:42px;max-width:230px}.play-mode #journeyWelcome p{font-size:13px}.play-welcome-art{position:absolute;width:123px;right:8px;top:28px;opacity:.8}.play-mode #journeyWelcome .play-welcome-copy>p{padding-top:12px}.play-mode .field-head .tools .play-toolbar{font-size:10px;min-height:40px}.play-mode .field-head{padding:8px;gap:6px;flex-wrap:wrap}.play-mode .map-viewport{min-height:330px}.play-mode .play-tabs{margin:0 -2px}.play-mode .play-tabs button{font-size:11px;padding:9px}.play-mode .play-metrics b{font-size:18px}.play-mode #l07DockStatus{font-size:12px}.play-mode #bfStageConditions>button{display:block!important;flex:none;padding:8px;font-size:11px}.play-mode .game-hud{gap:5px}.play-mode #worldClassicName{display:none}}
@media(prefers-reduced-motion:reduce){.play-mode *{scroll-behavior:auto!important;transition:none!important}}

.play-mode [data-world="invest"],.play-mode [data-world="boost"],.play-mode [data-world="add"],.play-mode [data-world="reset"],.play-mode [data-world="work"],.play-mode #worldIslandSize{display:none!important}
.play-awaiting #journeyWelcome{display:flex!important}@media(max-width:720px){.play-awaiting #journeyWelcome{display:block!important}}

.play-sale{padding:14px 0;border-bottom:1px solid #ded8c2}.play-sale>small{display:block;overflow-wrap:anywhere;color:#74816d;font-size:11px;margin-top:9px}.play-sale .play-stock{margin-top:10px}.play-mode .play-vessel p{overflow-wrap:anywhere}


/* v0.18: clear hierarchy, current rank first and touch-sized navigation. */
#playSaveStatus{display:flex;align-items:center;gap:12px;padding:12px 16px;margin:12px 0;border:1px solid #b89556;border-radius:12px;background:#fff3d4;color:#5a4a2d;font:13px/1.5 system-ui}
#playSaveStatus[hidden]{display:none}
#playSaveStatus button{flex:none;min-height:44px;padding:9px 12px;border:1px solid #b89556;background:#fff9e9;border-radius:8px;color:#504323;font-weight:700}
.bf-rank-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-bottom:10px}
.bf-rank-stages button{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;min-height:58px;padding:7px 2px;border:1px solid #d1d7c4;border-radius:10px;background:#faf8ed;color:#536750;font:700 10px system-ui;cursor:pointer}
.bf-rank-stages img{width:25px;height:25px;object-fit:contain}
.bf-rank-stages [aria-pressed=true]{background:#e3eddb;border-color:#4e7857;box-shadow:inset 0 -2px #4e7857;color:#2c4d38}
.bf-rank-personal{padding:13px;margin-bottom:12px;border-radius:13px;background:linear-gradient(140deg,#e6eddc,#f4f0dd);border:1px solid #c8d3ba}
.bf-rank-position{display:flex;align-items:center;gap:12px;margin:8px 0}
.bf-rank-position>strong{font:600 36px/1 Georgia,serif;color:#355d45}
.bf-rank-position b{font-size:12px;color:#35523c}.bf-rank-position small{display:block;font:11px/1.5 system-ui;color:#596d51}
.bf-rank-personal p{font:11px/1.5 system-ui;color:#607056;margin:10px 0}
.bf-rank-benefits{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid #cbd6be;padding-top:10px}
.bf-rank-benefits span{font:10px/1.4 system-ui;color:#68765b}.bf-rank-benefits b{display:block;font-size:18px;color:#405f42}
.bf-rank-links{display:flex;gap:5px;margin-top:12px}.bf-rank-links button{flex:1;font-size:10px!important;padding:7px 4px!important}
.bf-rank-band[hidden]{display:none!important}
.bf-rank-entry{min-height:44px}
.bf-rank-explain{font:11px/1.55 system-ui;color:#5d6e56;padding:4px 6px 10px}
.bf-rank-explain summary{cursor:pointer;min-height:36px;padding:8px 0;font-weight:750}
.play-mode button:focus-visible,.bf-rank-stages button:focus-visible,.bf-rank-entry:focus-visible{outline:3px solid #b98e43;outline-offset:2px}
.play-mode .play-tabs{flex-wrap:wrap;overflow:visible;gap:6px}
.play-mode .play-tabs button{flex:1 0 calc(25% - 6px);min-width:90px}
.play-mode .play-goal{padding-top:10px}
.play-mode .play-map-fit{min-height:40px;font-size:11px;font-weight:700}
.play-mode .field-head .tools{flex-wrap:wrap}
.play-mode .field-head .tools>[data-world-tab="ranking"],.play-mode .field-head .tools>[data-world-tab="players"]{display:none!important}
.play-mode #playStartForm button{border:1px solid #315b48;border-radius:11px;cursor:pointer}
.play-mode #journeyWelcome .play-welcome-art{display:block!important;max-width:42%;height:auto;min-height:100px}
@media(min-width:1100px){
 body.play-mode.world-sandbox-active .workspace{grid-template-columns:minmax(250px,285px) minmax(0,1fr) minmax(270px,310px)}
 body.play-mode .bf-rank-column{max-height:calc(100dvh - 245px)}
 body.play-mode .map-viewport{aspect-ratio:auto;height:clamp(440px,calc(100dvh - 310px),740px)}
 .play-mode .field-head{min-height:50px}
 .play-mode .play-rail-links{margin-top:12px;padding-top:12px}
}
@media(max-width:720px){
 #playSaveStatus{flex-direction:column;align-items:stretch;font-size:12px}
 .play-mode .bf-stage-current{padding:7px 9px}
 .play-mode .game-hud .stat:has(#honeyValue){display:none}
 .play-mode .play-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}
 .play-mode .play-tabs button{min-width:0;white-space:normal;font-size:10px;padding:8px 3px;min-height:44px}
 .play-mode .play-weather{padding-top:9px}
 .play-mode .play-rail-links{padding-top:10px}
 .play-mode .play-map-fit{font-size:10px;min-height:36px}
 .play-mode .map-viewport{min-height:300px}
 .play-mode #journeyWelcome .play-welcome-art{max-width:32%;top:34px;right:8px}
 .bf-rank-position>strong{font-size:40px}
 .bf-rank-benefits b{font-size:21px}
 .bf-rank-links button{font-size:12px!important}
 .bf-rank-stages button{font-size:11px}
}

/* Browser review: retain the player guide, remove duplicate tools and fit small screens. */
body.play-mode.world-sandbox-active .field-head .tools>[data-world-tab]{display:none!important}
@media(max-width:720px){
 body.play-mode.bf-view-ranking #bfStageBar{display:none!important}
 body.play-mode.world-sandbox-active .field-head{display:block}
 body.play-mode.world-sandbox-active .field-head .field-name{margin:1px 1px 7px;width:100%;font-size:10px}
 body.play-mode.world-sandbox-active .field-head .tools{display:grid!important;grid-template-columns:1fr 1.35fr 44px 44px;gap:4px;width:100%;margin:0}
 .play-mode .field-head .tools>button{min-width:0;min-height:40px}
 .play-mode.bf-view-ranking .bf-rank-heading{padding:10px 12px}
 .play-mode.bf-view-ranking .bf-rank-heading h2{font-size:27px}
}

.play-mode .play-rail>.play-pair{display:none}
.bf-rank-expand{width:100%;min-height:44px;padding:9px;border:1px solid #d2d8c2;border-radius:9px;background:#f3f5e8;color:#426148;font:700 11px system-ui;cursor:pointer;margin-top:7px}
@media(max-width:720px){
 body.play-mode.world-sandbox-active .map-viewport{height:clamp(260px,calc(100dvh - 430px),400px);min-height:260px;aspect-ratio:auto}
}

@media(max-width:720px){body.play-mode.world-sandbox-active .side-panel{display:none}}
