:root{font-family:ui-sans-serif,system-ui,sans-serif;color:#eee7d1;background:#102117;font-size:16px;color-scheme:dark}*{box-sizing:border-box}html,body,#app{width:100%;height:100%}body{margin:0;overflow:hidden}main{display:grid;grid-template-rows:auto minmax(0,1fr);height:100dvh;min-height:0}button,input,select{font:inherit;color:inherit;border:1px solid #6a8466;background:#284633;border-radius:6px;padding:.5rem .65rem}button{cursor:pointer}button:hover{background:#456649}.primary-action{background:#527953;border-color:#a5c486}.primary-action:hover{background:#648e62}button:disabled{opacity:.5;cursor:default}.arrival-ready{background:#3f7b47;border-color:#d1e881;color:#fff9d7;font-weight:700;animation:arrival-pulse 1.5s ease-in-out infinite}.arrival-ready:hover{background:#4f9257}@keyframes arrival-pulse{50%{box-shadow:0 0 0 .3rem #a7d85d2b,0 0 1rem #c6ed7890}}button[aria-pressed=true],.active-tool{background:#826a36;border-color:#f4d58b}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffdc83;outline-offset:2px}header{min-height:65px;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.6rem 1rem;background:#193425;border-bottom:1px solid #52654a}.brand{letter-spacing:.12em}.brand span{color:#edcd88}#clock{font-size:.85rem}#population{white-space:nowrap;color:#f3d89c;font-size:.85rem;font-variant-numeric:tabular-nums}.time-controls{display:flex;align-items:center;gap:.5rem}#dev-tools{border-color:#9a7dba;color:#ead8ff}#controls{border-color:#a5ad80;color:#edcd88}#dev-dialog{width:min(420px,92vw)}.dev-enable{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.dev-warning{color:#f0bd86;font-size:.78rem}#controls-dialog{width:min(560px,92vw)}.controls-intro{margin-top:0}.controls-section+.controls-section{margin-top:1rem;padding-top:.8rem;border-top:1px solid #52654a}.controls-section h3{margin-bottom:.25rem;color:#edcd88}.controls-section p{margin:0}#dev-options{margin-top:1rem;padding-top:1rem;border-top:1px solid #52654a}#dev-options button{margin:.25rem .35rem .25rem 0}.dev-enable{display:block;margin-top:1rem;font-weight:700}.dev-warning,.dev-status,.dev-diagnostics{font-size:.82rem}.dev-warning{color:#efc887}.dev-diagnostics{color:#a9d9bd;font-variant-numeric:tabular-nums}#time-of-day{min-width:5.5rem;white-space:nowrap;font-variant-numeric:tabular-nums;color:#f3d89c}#resources{flex:1;min-width:220px;font-size:.85rem;display:flex;align-items:center;gap:.3rem .65rem;flex-wrap:wrap;color:#f3d89c}#resources>span{white-space:nowrap}.resource-overlay{position:absolute;z-index:5;top:10rem;left:.65rem;width:min(11rem,calc(100% - 1.3rem));max-height:calc(100% - 14rem);min-width:0!important;display:block!important;overflow:auto;padding:.2rem;border:0;background:transparent;box-shadow:none;color:#eee7d1!important;text-shadow:0 1px 2px #061109,0 0 5px #061109;scrollbar-width:thin}.resource-category,.resource-row{display:flex;width:100%;align-items:center;gap:.5rem;border:0;background:transparent;box-shadow:none}.resource-category,.resource-row{padding:.12rem .2rem;font-size:.875rem}.resource-category{margin-top:.2rem;color:#edcd88;font-weight:700;text-align:left}.resource-category:hover,.resource-row:hover{background:#10211780}.resource-category small{margin-left:auto;color:#a9d9bd;font-weight:400}.category-arrow{width:.7rem;color:#cad5b7}.resource-row{padding-left:1.4rem;justify-content:space-between;text-align:left}.resource-row strong{font-variant-numeric:tabular-nums}.resource-breakdown{margin:.15rem 0 .4rem;padding:0 .2rem 0 1.4rem;color:#b9ccb1;font-size:.7rem;line-height:1.35}.food-stock{color:#f5dfab}.food-days{color:#a9d9bd;padding-right:.25rem;border-right:1px solid #6a8466}.layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;height:auto;min-height:0}aside{overflow:auto;padding:1rem;background:#193224;scrollbar-width:thin}.left{border-right:1px solid #53664b}.right{border-left:1px solid #53664b}.colony-controls{margin:.1rem 0 .65rem;padding-bottom:.65rem;border-bottom:1px solid #53664b}.colony-controls h3{margin:0 0 .35rem}.toolgroup{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;margin:.7rem 0}.toolgroup button{font-size:.8rem;padding:.4rem}.garden-action-dock{position:absolute;z-index:8;bottom:4.3rem;left:1rem;display:flex;gap:.55rem;pointer-events:auto}.scythe-glyph{display:block;width:1.35em;height:1.35em;overflow:visible;filter:drop-shadow(0 1px 1px #07140c)}.garden-action-dock button>span{line-height:1}.scythe-glyph .scythe-blade{fill:#dceac0;stroke:#f6ffdb;stroke-linejoin:round;stroke-width:1.5}.scythe-glyph .scythe-handle,.scythe-glyph .scythe-grip{fill:none;stroke:#a66b3a;stroke-linecap:round;stroke-width:4}.scythe-glyph .scythe-grip{stroke-width:3}.scythe-glyph .scythe-collar{fill:none;stroke:#e7bf6c;stroke-linecap:round;stroke-width:2.5}.map-save{position:absolute;z-index:8;right:1rem;bottom:4.3rem;display:grid;place-items:center;width:3.25rem;height:3.25rem;padding:0;border:2px solid #7ac6ff;border-radius:50%;background:radial-gradient(circle at 35% 28%,#327ab0,#12304a 70%);box-shadow:0 0 .75rem #52a8ef66,inset 0 0 .8rem #061725bb;color:#edf8ff;font-size:1.35rem}.map-fullscreen{right:5rem;border-color:#d7c977;background:radial-gradient(circle at 35% 28%,#8b7738,#403318 70%)}.map-fullscreen:hover:not(:disabled),.map-fullscreen:focus-visible{background:radial-gradient(circle at 35% 28%,#b49a4b,#5a481d 70%)}.map-save:hover:not(:disabled),.map-save:focus-visible{transform:translateY(-2px);background:radial-gradient(circle at 35% 28%,#4e9ed0,#16405f 70%)}.map-save.saving{opacity:.75}.map-save.success{border-color:#a9e985;background:radial-gradient(circle at 35% 28%,#529851,#1b482c 70%);box-shadow:0 0 .9rem #91e26e88,inset 0 0 .8rem #102d19bb}.map-save.error{border-color:#ff9a8e;background:radial-gradient(circle at 35% 28%,#b14f48,#4a1719 70%);box-shadow:0 0 .9rem #f26f6688,inset 0 0 .8rem #321011bb}.map-save-revision{position:absolute;top:-.78rem;left:50%;transform:translate(-50%);padding:.1rem .32rem;border:1px solid #6fa9c9;border-radius:.35rem;background:#102d43;color:#dff3ff;font-size:.58rem;font-weight:700;line-height:1.1;white-space:nowrap;pointer-events:none}.map-save-menu{position:absolute;z-index:9;right:1rem;bottom:8.2rem;display:grid;min-width:10rem;gap:.3rem;padding:.35rem;border:1px solid #789c78;border-radius:.45rem;background:#173d2bef;box-shadow:0 .4rem 1rem #08170ecc}.map-save-menu button{text-align:left}.garden-action-dock button{display:grid;place-items:center;gap:.15rem;width:5rem;height:5rem;padding:.3rem;border:2px solid #e3ca7b;border-radius:50%;background:radial-gradient(circle at 35% 28%,#406a45,#142c20 70%);box-shadow:0 0 .7rem #efd77866,inset 0 0 1rem #08180fcc;color:#fff3bd}.garden-action-dock button>span{font-size:2rem;line-height:1}.garden-action-dock button small{font-size:.7rem;font-weight:700}.garden-action-dock .cancel-glyph{color:#ff8f82;font-family:ui-sans-serif,system-ui,sans-serif;font-size:2.5rem;font-weight:300;line-height:.75}.garden-action-dock button:hover,.garden-action-dock button[aria-pressed=true]{transform:translateY(-2px);background:radial-gradient(circle at 35% 28%,#7b6a39,#3e351f 70%);box-shadow:0 0 1rem #ffe18a99,inset 0 0 1rem #21180699}.build-card{min-width:0;min-height:7.2rem;padding:.55rem;text-align:left;display:flex;flex-direction:column;align-items:stretch;gap:.3rem;background:#203e2d}.build-card-art{display:grid;place-items:center;min-height:3.2rem;border:1px solid #6d936d;border-radius:5px;background:linear-gradient(145deg,#315b43,#182f25);color:#f2d78d;box-shadow:inset 0 0 1.1rem #0c1d1455}.build-card-art span{font-family:Georgia,serif;font-size:2rem;line-height:1;text-shadow:1px 2px 0 #14251a,0 0 .8rem #f8d77a66}.build-card-body{display:contents}.build-card-heading{display:flex;justify-content:space-between;gap:.35rem;align-items:start}.build-card-heading strong{font-size:.84rem;line-height:1.2}.build-status{flex:0 0 auto;padding:.1rem .28rem;border-radius:999px;background:#172f22;color:#c8d5b8;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em}.build-meta,.build-reason{display:block;font-size:.72rem;line-height:1.28}.build-meta{color:#e9c981}.build-reason{color:#b8caa9}.build-card.materials-ready{border-color:#d9cf75;background:#365a36;box-shadow:inset 0 0 0 1px #92bb70,0 0 12px #a6c85d2e}.build-card.materials-ready .build-status{background:#d6d071;color:#193224}.build-card.build-locked{opacity:.62;filter:saturate(.55)}.build-card.build-locked .build-status:before{content:"🔒 "}.build-card.active-tool{opacity:1;filter:none;background:#826a36;border-color:#f4d58b;box-shadow:inset 0 0 0 1px #f4d58b}.build-toolbar{position:absolute;z-index:10;left:50%;bottom:.8rem;width:min(92%,760px);transform:translate(-50%);pointer-events:none}.build-toolbar-bar,.bottom-build-menu{pointer-events:auto;border:1px solid #779672;background:#14291fe8;box-shadow:0 .5rem 1.5rem #07140dcc,inset 0 1px #d5d38b33;backdrop-filter:blur(10px)}.build-toolbar-bar{display:flex;align-items:center;gap:.7rem;min-height:3.2rem;padding:.35rem;border-radius:9px}.bottom-build-toggle{display:inline-flex;align-items:center;gap:.45rem;min-height:2.45rem;padding:.35rem .7rem;background:#345e3e;border-color:#b7c879;color:#fff2bd;font-weight:700}@keyframes tutorial-focus-pulse{0%,to{box-shadow:0 0 0 1px #c7ff9a,0 0 .55rem #79e65bbb}50%{box-shadow:0 0 0 3px #d9ffb0,0 0 1.25rem #79e65b}}button.tutorial-focus,.colonist.tutorial-focus,.bottom-category.tutorial-focus,.build-card.tutorial-focus,.arrival-slot.tutorial-focus,#context .tutorial-focus{position:relative;z-index:1;border-color:#c7ff9a!important;animation:tutorial-focus-pulse 1.1s ease-in-out infinite}#game.tutorial-focus{box-shadow:inset 0 0 0 3px #c7ff9a,inset 0 0 2rem #79e65b66;animation:tutorial-focus-pulse 1.1s ease-in-out infinite}.toolbar-glyph{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:5px;background:#9c7045;color:#fff0b5;font-family:Georgia,serif;font-size:1.4rem}.toolbar-caret{color:#d8da8b;font-size:.8rem}.bottom-build-hint{color:#c1d2b9;font-size:.78rem}.bottom-build-menu{position:relative;max-height:min(58dvh,420px);margin-bottom:.45rem;padding:.6rem;overflow:auto;border-radius:9px}.bottom-build-categories{display:flex;gap:.4rem;margin-bottom:.55rem;overflow-x:auto;scrollbar-width:thin}.bottom-category{display:grid;gap:.1rem;min-width:6.2rem;padding:.45rem .6rem;border-color:#557657;background:#203d2d;text-align:left;white-space:nowrap}.bottom-category small{color:#a9c69c;font-size:.65rem}.bottom-category.selected{background:#796436;border-color:#f0d67f;color:#fff6cd}.bottom-category.selected small{color:#fff0a6}.bottom-build-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(5.8rem,1fr));gap:.45rem;padding-right:.1rem}.build-card-compact{min-height:6.7rem;padding:.35rem;gap:.3rem;text-align:center}.build-card-compact .build-card-art{min-height:3.45rem}.build-card-compact .build-card-body{display:flex;align-items:center;gap:.15rem}.build-card-compact .build-card-heading{display:block}.build-card-compact .build-card-heading strong{display:block;font-size:.72rem}.build-card-compact .build-status,.build-card-compact .build-reason{display:none}.build-card-compact .build-meta{color:#e9c981;font-size:.62rem;white-space:nowrap}.build-card-compact.build-locked .build-card-art{filter:grayscale(.7) brightness(.65)}.build-tooltip{position:absolute;z-index:3;top:3.4rem;right:.7rem;width:min(15rem,calc(100% - 1.4rem));display:grid;gap:.25rem;padding:.65rem .75rem;border:1px solid #d8c878;border-radius:7px;background:#122319f5;color:#dce7c9;box-shadow:0 .4rem 1rem #07140ddd;font-size:.75rem;line-height:1.3;pointer-events:none}.build-tooltip strong{color:#fff0ae;font-size:.9rem}.build-tooltip-cost{color:#e9c981}.build-tooltip-state{color:#a9d9bd}.research-build-menu{margin-bottom:.55rem}.research-build-grid{display:grid;grid-template-columns:repeat(var(--research-card-count, 1),7rem);justify-content:center;gap:.5rem;width:max-content}.research-card{display:flex;flex-direction:column;gap:.3rem;min-width:0;width:7rem;min-height:7rem;padding:.35rem;border-radius:8px;border-color:#668a69;background:#173525c9;box-shadow:0 .3rem .8rem #07140d99,inset 0 1px #d8e19b33;color:#f4e9b7;text-align:center}.research-card-art{display:grid;place-items:center;width:100%;aspect-ratio:1;min-height:0;border:1px solid #7ca078;border-radius:5px;background-color:#13291f;background-repeat:no-repeat;background-size:300% 300%;color:transparent;font-size:0}.research-card-body{display:flex;flex-direction:column;align-items:center;gap:.1rem;min-width:0}.research-card-body strong{font-size:.9rem;line-height:1.1;white-space:normal}.research-card-body span{color:#bcd1ad;font-size:.68rem}.research-card[data-state=ready]{border-color:#d9cf75;background:#365a36}.research-card[data-state=active]{border-color:#ffe28a;background:#806b37ee;box-shadow:0 0 1rem #f4d77c70,inset 0 1px #fff0b5aa}.research-card[data-state=locked]{opacity:.45;filter:saturate(.5)}.research-card[data-state=complete]{border-color:#6f9b72;background:#21452f;opacity:.76}.research-card:hover:not(:disabled),.research-card:focus-visible{transform:translateY(-2px);border-color:#cdd47d;box-shadow:0 .45rem 1rem #07140db8,0 0 .8rem #d5d17a47}.tech-tree{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}#research-dialog{width:min(920px,94vw)}.tech-node[data-tech=garden_records]{grid-column:1 / -1;width:min(24rem,100%);justify-self:center}.tech-node[data-tech=irrigation]{grid-column:1}.tech-node[data-tech=garden_arts]{grid-column:3}.tech-node{min-height:8.5rem;padding:.8rem;text-align:left;display:flex;flex-direction:column;gap:.45rem}.tech-node>span:first-child{display:flex;justify-content:space-between;gap:.5rem}.tech-node [data-tech-status]{color:#f0d27e;font-size:.75rem}.tech-node [data-tech-detail]{color:#bcd1ad;font-size:.8rem;margin-top:auto}.tech-node[data-state=ready]{border-color:#d9cf75;background:#365a36;box-shadow:0 0 14px #a6c85d26}.tech-node[data-state=complete]{border-color:#74a799;background:#244b40}.tech-node[data-state=locked]{opacity:.68}#urgent{border:1px solid #a5ad80;border-radius:8px;padding:.55rem;margin-bottom:.65rem;background:#25422e}#guide{position:absolute;z-index:8;top:10rem;left:.75rem;width:min(17rem,calc(100% - 1.5rem));max-height:calc(100% - 5rem);overflow:auto;padding:.55rem;border:1px solid #a5ad80;border-radius:8px;background:#25422ed9;box-shadow:0 .4rem 1rem #07140d88;backdrop-filter:blur(3px);scrollbar-width:thin}#guide.palette-obscured{visibility:hidden;pointer-events:none}#urgent{border-color:#d99277;background:#5c302d}.guide-step{display:block;width:100%;margin:.25rem 0;text-align:left}.guide-step small{display:block;color:#c9d8b3;margin-top:.2rem}.guide-step.complete{opacity:.72}@media(max-width:760px){#guide{left:.55rem;width:min(15rem,calc(100% - 1.1rem));font-size:.82rem}}@media(pointer:coarse)and (max-width:1200px){.map-fullscreen{right:4.2rem;bottom:.55rem}}#work-overview button{display:block;width:100%;margin:.25rem 0;text-align:left;font-size:.8rem}small{display:block;margin-top:.25rem;color:#c9d8b3;line-height:1.35}h1,h2,h3,summary{color:#e4d8ac}h2{font-size:1.1rem}h3{font-size:.95rem}summary{cursor:pointer;margin:.4rem 0}label{display:block;margin:.6rem 0}label input:not([type=checkbox]),label select{width:100%;margin-top:.25rem}.world-wrap{min-width:0;min-height:0;position:relative;container-type:inline-size;display:flex;flex-direction:column;background:#102117}#game{flex:1;min-height:0;overflow:hidden;position:relative}#game canvas{display:block;width:100%;height:100%;touch-action:none}#pause-overlay{position:absolute;z-index:8;inset:0;display:grid;place-items:center;pointer-events:none;color:#fff1bd;font-size:clamp(1.8rem,5vw,4rem);font-weight:800;letter-spacing:.42em;text-indent:.42em;text-shadow:0 3px 12px #07140bcc,0 0 24px #07140bcc;background:#07140c33}#first-session-nudge{position:absolute;z-index:9;left:.75rem;bottom:13.5rem;display:grid;width:min(17rem,calc(100% - 1.5rem));gap:.25rem;padding:.55rem .65rem;border:1px solid #d7c977;border-radius:.55rem;background:#173a2bf2;box-shadow:0 .35rem 1rem #07140d99;color:#e9e3c4;font-size:.78rem;pointer-events:none}#first-session-nudge strong{color:#fff0ae}#first-session-nudge button{justify-self:start;min-height:2rem;padding:.2rem .5rem;font-size:.72rem;pointer-events:auto}#first-session-nudge .tutorial-actions{display:flex;gap:.35rem;pointer-events:auto}.tutorial-checklist{display:grid;gap:.18rem;margin:.1rem 0;padding:0;list-style:none}.tutorial-checklist li{display:grid;grid-template-columns:1rem auto 1fr;gap:.2rem;align-items:baseline;color:#c8d5ba}.tutorial-checklist li.is-complete{color:#c7e6ab}.tutorial-checklist small{color:inherit;font-size:.68rem}#first-session-nudge.tutorial-complete{border-color:#9dcc7d;background:#21472ff2}.dark-pip-notice{position:absolute;z-index:9;top:1rem;left:50%;transform:translate(-50%);margin:0;padding:.65rem 1.25rem;border:1px solid #d4bf83;border-radius:999px;color:#fff1bd;background:#193224e8;box-shadow:0 4px 18px #0008;font-weight:700;pointer-events:none;white-space:nowrap}.renderer-error{position:absolute;inset:1rem;height:fit-content;padding:1rem;border:1px solid #d4bf83;border-radius:8px;background:#193224ed;line-height:1.5}#render-stats{color:#b7cda7;font-size:.75rem;line-height:1.5}#renderer-diagnostics{color:#f0d58e;font-size:.7rem;line-height:1.35;overflow-wrap:anywhere}.hint{margin:0;padding:.6rem;min-height:3.5rem;font-size:.85rem;color:#c9d8b3;background:#183124}.emergency{background:#833e38;border-color:#d99277}.context{position:fixed;z-index:10;width:260px;background:#1c3726;border:1px solid #d4bf83;border-radius:8px;padding:.6rem;box-shadow:0 8px 30px #0009}.context button{display:block;width:100%;text-align:left;margin:.2rem 0;font-size:.85rem}#landscape-notice{display:none}[hidden]{display:none!important}.meter{height:8px;background:#0a2115;border-radius:8px;overflow:hidden}.meter i{display:block;height:100%;background:#d4ca7b}#harmony-parts,.tile-facts,#cloud-status{font-size:.8rem;line-height:1.5;color:#b7cda7}#harmony-parts{display:grid;gap:.35rem;margin-top:.55rem}.harmony-part{position:relative;display:grid;grid-template-columns:1.7rem minmax(0,1fr) auto;align-items:center;gap:.38rem;padding:.32rem .38rem;border:1px solid #416a4e;border-radius:.35rem;background:#173725}.harmony-part-icon{display:grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:50%;background:#28583b;color:#f3dc84;font-size:.95rem}.harmony-part-copy{display:grid;min-width:0}.harmony-part-copy strong{color:#f3e5a9;font-size:.92rem}.harmony-part-copy small{display:none}.harmony-part b{color:#a9e985;font-size:.95rem;font-variant-numeric:tabular-nums}.harmony-part:hover:after,.harmony-part:focus-visible:after{position:absolute;z-index:20;right:.35rem;bottom:calc(100% + .35rem);max-width:min(18rem,calc(100vw - 2rem));padding:.35rem .5rem;border:1px solid #9bb879;border-radius:.35rem;background:#10281cef;color:#e6efcf;content:attr(data-hint);font-size:.75rem;line-height:1.3;white-space:normal;pointer-events:none}.harmony-part.is-negative{border-color:#8d5a4f;background:#3d2724}.harmony-part.is-negative .harmony-part-icon{background:#72453d;color:#ffd0bf}.harmony-part.is-negative b{color:#ffae9c}#inspector{font-size:.88rem;line-height:1.45}#inspector button{margin:.15rem;font-size:.85rem}.memory{border-left:2px solid #b1ac71;padding-left:.5rem}#colonist-bar{position:absolute;z-index:4;top:3.5rem;left:50%;display:flex;max-width:calc(100% - 1.25rem);gap:.35rem;overflow-x:auto;padding:.2rem .35rem .35rem;transform:translate(-50%);scrollbar-width:thin}#age-banner{position:absolute;z-index:4;top:.45rem;left:50%;display:grid;min-width:9.5rem;padding:.3rem 1rem .35rem;transform:translate(-50%);border:1px solid #bca566;border-radius:.55rem;background:linear-gradient(135deg,#162b20ed,#3c3824e8);box-shadow:0 3px 14px #07120cb8,inset 0 0 0 1px #f4d58b1c;color:#fff1bd;text-align:center;pointer-events:none}#age-banner-title{font-family:Georgia,serif;font-size:1.15rem;letter-spacing:.08em;text-shadow:0 1px 5px #000b}.colonist{--portrait-accent: #9f9669;flex:0 0 3.6rem;width:3.6rem;min-height:4.3rem;padding:.15rem;overflow:hidden;border:1px solid transparent;border-radius:.45rem;background:#102117c9;box-shadow:0 2px 10px #07120ca6;text-align:center}.arrival-slot{--portrait-accent: #73a9bf;border-style:dashed}.arrival-slot .portrait-fallback{display:grid;place-items:center;height:100%;color:#dff4ff;font-size:2rem;font-weight:300}.arrival-slot.arrival-ready{border-style:solid}.arrival-tooltip{position:absolute;z-index:9;top:7.9rem;left:50%;width:min(20rem,calc(100% - 1.5rem));transform:translate(-50%);padding:.65rem .75rem;border:1px solid #d8c878;border-radius:7px;background:#122319ed;box-shadow:0 .4rem 1rem #07140ddd;color:#dce7c9;font-size:.78rem;line-height:1.35;pointer-events:none}.arrival-tooltip strong{color:#fff0ae}.arrival-tooltip ul{margin:.4rem 0 0;padding-left:1.15rem}.colonist-page-arrow{align-self:center;flex:0 0 2rem;width:2rem;height:4rem;padding:0;border-radius:999px;border-color:#b7c879;background:#345e3e;color:#fff2bd;font-size:2rem;line-height:1}.colonist-page-arrow:disabled{opacity:.35}.colonist.role-gardener{--portrait-accent: #79935c}.colonist.role-builder{--portrait-accent: #b8794d}.colonist.role-cook{--portrait-accent: #e9ddbb}.colonist.role-warrior{--portrait-accent: #7ba9b8}.colonist:hover{border-color:#8fa27d;background:#25452fdf}.colonist[aria-pressed=true]{border-color:#ffe09a;background:#3d5335e8;box-shadow:0 0 0 2px #826a36,0 3px 14px #0009}.pip-portrait{display:grid;width:3.2rem;height:3rem;place-items:end center;overflow:hidden;border-bottom:2px solid var(--portrait-accent);border-radius:.3rem .3rem .15rem .15rem;background:radial-gradient(circle at 50% 34%,#5f7c58 0,#294a35 48%,#13291d)}.pip-portrait img{display:block;width:100%;height:100%;object-fit:cover}.portrait-fallback{align-self:center;font-size:1.7rem;color:#f0dfb8}.pip-name{display:block;overflow:hidden;padding:.18rem .1rem .05rem;font-size:.8rem;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.colonist.is-captured{--portrait-accent: #d99277}.colonist.is-missing,.colonist.is-incapacitated,.colonist.is-dead{--portrait-accent: #787d72;filter:grayscale(.8);opacity:.72}.save-actions{display:flex;flex-wrap:wrap;gap:.3rem}.save-actions button{font-size:.8rem}.close{float:right}#menu-home{display:flex;flex-direction:column;align-items:center;gap:.55rem;margin-top:1rem}#menu-home button{min-width:7rem}#menu-dialog>h1{text-align:center}#alerts,#history{font-size:.8rem;line-height:1.5;padding-left:1rem}dialog{width:min(600px,94vw);max-height:90dvh;overflow:auto;border:1px solid #a5ad80;border-radius:14px;background:linear-gradient(145deg,#2e4d35,#152d20);color:#eee7d1;padding:1.5rem;box-shadow:0 20px 90px #000a}#changelog-dialog{width:min(820px,94vw);max-height:90dvh;overflow:hidden}.release-index{display:flex;gap:.5rem;margin-bottom:.5rem}.release-index a{color:#a9d9bd}.release-history{max-height:60dvh;overflow-y:auto;padding-right:.8rem}.release-history section+section{margin-top:2rem;padding-top:1rem;border-top:1px solid #52654a}.release-history h2 span{color:#a9d9bd;font-size:.7em}dialog::backdrop{background:#08150fbb}dialog p{line-height:1.5;color:#cad5b7}.setting-toggle{display:flex;align-items:center;gap:.55rem;font-weight:700}.setting-toggle input{width:1.15rem;height:1.15rem}#graphics-status{min-height:1.5rem;color:#f3d89c}.release-kicker{margin-bottom:0;color:#edcd88;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}#changelog-title{margin-top:.2rem}#changelog-title span{color:#a9d9bd;font-size:.65em}.release-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.25rem 0}.release-notes h2{color:#edcd88;font-size:1rem}.release-notes article{min-width:0}.release-notes ul{margin:0;padding-left:1.15rem;color:#cad5b7;line-height:1.45}@media(max-width:680px){.release-notes{grid-template-columns:1fr}}.slot{display:flex;align-items:center;gap:.4rem;margin:.5rem 0}.slot-load{flex:1;min-width:0}.device-recovery{padding:.6rem;border:1px solid #52654a;border-radius:.5rem}.device-recovery>button{display:block;margin-top:.5rem}.device-recovery p{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.menu-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0}.current-save{background:#355d3d;border-color:#79a56d}.current-save:hover{background:#47794d}.legacy-save{background:#875b28;border-color:#e5af60}.legacy-save:hover{background:#a96f2e}.delete-save{flex:0 0 auto;color:#ffd8d2;border-color:#bb5145;background:#782c29;font-size:1rem;line-height:1}.delete-save:hover,.delete-save:focus-visible{background:#a33c35;border-color:#ff9a8e}#menu-error{color:#ffc0a9}@media(max-width:1050px){.layout{grid-template-columns:minmax(0,1fr) 245px}.toolgroup{grid-template-columns:1fr}aside{padding:.65rem}header{padding:.4rem}.brand{font-size:.85rem}}@media(max-width:760px){.layout{display:flex;flex-wrap:wrap;height:auto}.world-wrap{order:0;width:100%;height:60dvh}.left{order:1;width:40%;max-height:60dvh}.right{order:2;width:60%;max-height:60dvh}.toolgroup{grid-template-columns:1fr 1fr}header{position:sticky;top:0;z-index:5}#resources{font-size:.75rem}.brand{display:none}.left{width:100%;max-height:34dvh}.right{width:100%;max-height:46dvh}.toolgroup{grid-template-columns:repeat(3,minmax(0,1fr))}.tech-tree{grid-template-columns:repeat(2,minmax(0,1fr))}.tech-node[data-tech=garden_records]{grid-column:1 / -1}.tech-node[data-tech=irrigation],.tech-node[data-tech=garden_arts]{grid-column:auto}#colonist-bar{justify-content:flex-start}.colonist{flex-basis:4.15rem;width:4.15rem}.pip-portrait{width:3.65rem}}@media(max-width:430px){.tech-tree{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media(max-width:760px){.garden-action-dock{bottom:4.1rem;left:.7rem;gap:.35rem}.garden-action-dock button{width:3.8rem;height:3.8rem}.garden-action-dock button>span{font-size:1.55rem}.garden-action-dock button small{font-size:.6rem}.map-save{right:.7rem;bottom:4.1rem;width:3rem;height:3rem}.map-save-menu{right:.7rem;bottom:7.7rem}}.touch-modes,#mobile-hud{display:none}#mobile-left-drawer{display:contents}.menu-back{margin-bottom:.7rem}@media(pointer:coarse){button,input,select{min-height:44px}.touch-modes{display:flex;position:absolute;top:4.9rem;right:.5rem;z-index:4;gap:.25rem;padding:.3rem;border-radius:.6rem;background:#10251dcc}.touch-modes button{min-height:44px;min-width:44px;padding:.4rem;font-size:.72rem}.context{width:min(20rem,calc(100vw - 1rem));padding:.45rem}.context button{min-height:44px;margin:.3rem 0;font-size:.95rem}}.build-toolbar{display:flex;flex-direction:column;align-items:center;bottom:3.1rem;width:max-content;max-width:none}.build-toolbar-bar{display:flex;flex-direction:column;justify-content:center;min-height:0;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}.bottom-build-menus{display:flex;flex-direction:column;align-items:center;gap:.55rem;width:100%}.bottom-build-hint{display:none}.bottom-build-actions{display:flex;align-items:center;justify-content:center;gap:.5rem}.bottom-build-toggle{min-width:7.5rem;justify-content:center;border-radius:999px;background:#1e3c2bde;box-shadow:0 .35rem 1rem #07140db8,inset 0 1px #e8df9c55}.bottom-build-menu{display:flex;flex-direction:column-reverse;align-items:center;gap:.55rem;max-height:none;margin:0 0 .55rem;padding:0;overflow:visible;border:0;background:transparent;box-shadow:none;backdrop-filter:none;width:max-content;max-width:none}.bottom-build-categories{justify-content:center;flex-wrap:wrap;max-width:100%;margin:0;overflow:visible}.bottom-category{display:grid;place-items:center;gap:.05rem;min-width:5.2rem;min-height:4.7rem;padding:.35rem .55rem .28rem;border-radius:999px;border-color:#668c6b;background:#1d3e2dde;box-shadow:0 .3rem .8rem #07140d99,inset 0 1px #cce3a944;text-align:center}.bottom-category-icon{display:grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:#b7dcb733;color:#d4edcf;font-family:Georgia,serif;font-size:1.3rem}.bottom-category small{font-size:.58rem}.bottom-category.selected{background:#6e5d35ee;border-color:#f6da81;box-shadow:0 0 1.1rem #e8d2745e,inset 0 1px #fff0b577}.bottom-category.selected .bottom-category-icon{background:#f4d77c44;color:#fff4bd}.bottom-build-panels{display:flex;justify-content:center;width:100%}.bottom-build-panel{width:max-content}.build-page-shell{display:flex;align-items:center;gap:.45rem}.build-pages{width:max-content}.build-page-arrow{display:grid;place-items:center;width:2rem;height:4rem;padding:0;border-radius:999px;background:#345e3e;border-color:#b7c879;color:#fff2bd;font-size:2rem;line-height:1}.build-page-arrow:disabled{opacity:.35;cursor:default}.bottom-build-grid{display:grid;grid-template-columns:repeat(var(--build-card-count, 8),7rem);justify-content:center;gap:.5rem;width:max-content}.build-card-compact{width:7rem;min-width:0;height:8.5rem;min-height:8.5rem;border-radius:8px;border-color:#668a69;background:#173525c9;box-shadow:0 .3rem .8rem #07140d99,inset 0 1px #d8e19b33}.build-card-compact:hover,.build-card-compact:focus-visible{transform:translateY(-2px);background:#315b3edb;border-color:#cdd47d;box-shadow:0 .45rem 1rem #07140db8,0 0 .8rem #d5d17a47}.build-card-compact .build-card-art{min-height:5rem;border-color:#7ca078;background:linear-gradient(145deg,#315d43,#13291f)}.build-card-compact canvas.build-card-art{display:block;width:100%;height:5rem}.build-card-compact .build-card-art span{font-size:2.15rem}.build-card-compact .build-card-body{width:100%;flex:0 0 auto;flex-direction:column;align-items:center;justify-content:center;min-width:0}.build-card-compact .build-card-heading strong{max-width:100%;color:#f4e9b7;font-size:1.02rem;font-weight:700;line-height:1.15;letter-spacing:.01em;text-align:center;white-space:normal}.build-card-compact .build-meta{display:none;max-width:100%;white-space:normal;text-align:center;line-height:1.15}.build-card-compact.materials-ready{border-color:#b5ba71;background:#28533ac9}.build-card-compact.active-tool{transform:translateY(-2px);border-color:#ffe28a;background:#806b37ee;box-shadow:0 0 1rem #f4d77c70,inset 0 1px #fff0b5aa}.build-tooltip{top:auto;right:0;bottom:calc(100% + .7rem)}@media(max-width:760px){header{min-height:54px;flex-wrap:nowrap;gap:.3rem;overflow-x:auto;padding:.25rem .4rem;scrollbar-width:none}#clock,#time-of-day{display:none}#resources{flex:0 0 auto;min-width:max-content;font-size:.7rem;flex-wrap:nowrap}.time-controls{flex:0 0 auto;gap:.2rem}.build-toolbar{bottom:2.8rem;max-width:calc(100% - 1rem)}.bottom-category{min-width:4.5rem;min-height:4.25rem;font-size:.72rem}.bottom-build-grid{grid-template-columns:repeat(var(--build-card-count, 8),6rem);gap:.3rem}.build-card-compact{width:6rem;height:8rem;min-height:8rem}.layout{display:grid;grid-template-columns:clamp(8.25rem,23vw,11.25rem) minmax(0,1fr) clamp(8.25rem,23vw,11.25rem);height:calc(100dvh - 54px);min-height:460px}.world-wrap{order:initial;width:auto;height:auto}.left,.right{order:initial;width:auto;max-height:none}.toolgroup{grid-template-columns:1fr}}@media(pointer:coarse)and (orientation:portrait){main{visibility:hidden}#landscape-notice{position:fixed;z-index:30;inset:0;display:grid;place-content:center;gap:.55rem;padding:2rem;background:#102117;color:#fff1bd;text-align:center}#landscape-notice strong{font-family:Georgia,serif;font-size:1.5rem}#landscape-notice span{color:#c9d8b3}}.mobile-drawer-close{display:none}@media(max-width:760px),(pointer:coarse)and (max-width:1200px){.mobile-drawer-close{display:block;position:sticky;top:0;z-index:1;align-self:flex-end;flex-shrink:0;min-height:44px;margin-bottom:.5rem;background:#173323}html,body{width:100%;height:100%;overflow:hidden}header{display:none}.layout{display:block;height:100dvh;min-height:0}.world-wrap{position:relative;width:100%;height:100dvh}.left{display:none}.right,#mobile-left-drawer{position:fixed;z-index:20;top:0;bottom:0;display:flex;flex-direction:column;width:min(21rem,84vw);padding:max(.75rem,env(safe-area-inset-top)) .75rem max(.75rem,env(safe-area-inset-bottom));overflow:auto;background:#173323f5;box-shadow:0 0 1.5rem #061109bb;transition:transform .18s ease,visibility .18s ease;visibility:hidden;pointer-events:none}.right{right:0;border-left:1px solid #779672;transform:translate(105%)}#mobile-left-drawer{left:0;border-right:1px solid #779672;transform:translate(-105%)}.right.mobile-drawer-open,#mobile-left-drawer.mobile-drawer-open{transform:translate(0);visibility:visible;pointer-events:auto}#mobile-left-drawer #resources.resource-overlay,#mobile-left-drawer #guide{position:static!important;top:auto!important;left:auto!important;width:100%!important;height:auto!important;max-height:none!important;min-height:0;margin:0;padding:.35rem;overflow:visible}#mobile-left-drawer #resources.resource-overlay{flex:0 0 auto;border-bottom:1px solid #537456}#mobile-left-drawer #guide{display:block;margin-top:.65rem;background:#25422ed9}#mobile-left-drawer #guide[hidden]{display:none}#mobile-hud{position:absolute;z-index:10;top:max(.45rem,env(safe-area-inset-top));left:max(.45rem,env(safe-area-inset-left));display:flex;gap:.25rem;max-width:calc(100% - 11.5rem);overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}#mobile-hud button{min-width:2.75rem;min-height:2.75rem;padding:.35rem .5rem;border-color:#789c72;background:#173525ed;color:#f4e9b7;font-size:.7rem}#mobile-hud #mobile-inventory,#mobile-hud #mobile-info,#mobile-hud #mobile-pips{min-width:auto}#mobile-hud #mobile-settings{width:2.75rem;padding:0;color:#fff2bd;font-size:1.55rem;line-height:1}#mobile-hud #mobile-changelog{width:2.75rem;padding:0;font-size:1.25rem;line-height:1}#colonist-bar{top:3.7rem;display:none;max-width:calc(100% - 1rem)}#colonist-bar.mobile-portraits-open{display:flex;z-index:16;width:min(30rem,calc(100% - 1rem));padding:.3rem;border:1px solid #759b70;border-radius:.55rem;background:#142d22f2;box-shadow:0 .45rem 1rem #07140db8}.touch-modes{top:max(.45rem,env(safe-area-inset-top));right:max(.45rem,env(safe-area-inset-right));z-index:10}.touch-modes button{min-width:2.65rem;min-height:2.75rem;padding:.25rem .35rem;font-size:.66rem}#pause-overlay{inset:auto;top:4rem;left:50%;width:max-content;max-width:calc(100% - 1rem);padding:.25rem .6rem;transform:translate(-50%);border:1px solid #d7c977;border-radius:999px;background:#173a2bed;font-size:.85rem;letter-spacing:.18em;text-indent:.18em}#first-session-nudge{top:4rem;right:.55rem;bottom:auto;left:auto;width:min(13.5rem,calc(100% - 1.1rem));padding:.4rem .5rem;font-size:.68rem}#first-session-nudge button{min-height:2rem}#age-banner{display:none}.garden-action-dock{position:fixed;bottom:4.1rem;left:.55rem}.garden-action-dock button{width:3.45rem;height:3.45rem}.garden-action-dock button>span{font-size:1.35rem}.garden-action-dock button small{font-size:.55rem}.build-toolbar{bottom:.4rem;max-width:calc(100% - 1rem)}.hint{display:none}.map-save{position:fixed;right:.2rem;bottom:.55rem}.map-fullscreen{right:calc(.2rem + 3.6rem)}.map-save-menu{position:fixed;right:.2rem;bottom:4rem}#menu-dialog{width:min(32rem,calc(100vw - 1.5rem));max-height:calc(100dvh - 1rem);margin:auto;padding:clamp(.55rem,2.5dvh,1rem) clamp(.8rem,3vw,1.2rem);overflow:hidden}#menu-dialog>form:first-child,#menu-dialog>h1,#menu-dialog>p:not(#menu-error){display:none}#menu-dialog h1{margin:0 0 .35rem;font-size:1.55rem}#menu-dialog>p:not(#menu-error){margin:.35rem 0 .7rem}#menu-dialog .menu-step{display:grid;gap:.5rem;align-content:center;min-height:min(17rem,calc(100dvh - 3rem))}#menu-home{align-items:stretch}#menu-home .menu-brand{display:block;margin-bottom:.3rem;color:#f4e9b7;font-size:1.35rem;text-align:center}#menu-dialog .menu-step[hidden]{display:none}#menu-home button,#new-garden-step>button,#load-garden-step>button{min-height:2.7rem}#new-garden-step h2,#load-garden-step h2,#new-garden-step label{margin:.1rem 0}#new-garden-step{grid-template-rows:auto auto auto auto auto}#new-garden-step input,#new-garden-step select,#new-garden-step button{min-height:clamp(2.5rem,12dvh,2.7rem)}#new-garden-step small{display:block;font-size:clamp(.65rem,2.2dvh,.78rem);line-height:1.2}#load-garden-step #slots{max-height:min(5.5rem,24dvh);overflow-y:auto;padding-right:.2rem}#load-garden-step .slot{margin:.3rem 0}#load-garden-step #slots.showing-recovery{max-height:min(18rem,48dvh)}#unsaved-recovery{margin-top:.5rem}}@media(max-width:760px){.bottom-build-menu{gap:.3rem;margin-bottom:.3rem}.bottom-build-categories{gap:.25rem}.bottom-category{min-width:3.65rem;min-height:3.3rem;padding:.2rem .35rem;font-size:.56rem}.bottom-category-icon{width:1.35rem;height:1.35rem;font-size:.9rem}.build-page-shell{gap:.25rem}.build-page-arrow{width:1.55rem;height:3.4rem;font-size:1.55rem}.bottom-build-grid{grid-template-columns:repeat(var(--build-card-count, 8),4.25rem);gap:.25rem}.build-card-compact{width:4.25rem;height:5.35rem;min-height:5.35rem;padding:.18rem;gap:.12rem;border-radius:.35rem}.build-card-compact .build-card-art,.build-card-compact canvas.build-card-art{min-height:3rem;height:3rem}.build-card-compact .build-card-art span{font-size:1.4rem}.build-card-compact .build-card-heading strong{font-size:.58rem;line-height:1.05}.research-build-grid{grid-template-columns:repeat(var(--research-card-count, 1),4.25rem);gap:.25rem}.research-card{width:4.25rem;min-height:4.75rem;padding:.18rem;border-radius:.35rem}.research-card-art{height:3rem;aspect-ratio:auto}.research-card-body strong{font-size:.58rem;line-height:1.05}.context{width:min(12.5rem,calc(100vw - 1rem));max-height:calc(100dvh - 1rem);padding:.28rem;border-radius:.4rem;overflow-y:auto;font-size:.7rem}.context strong{display:block;padding:.08rem .2rem;font-size:.68rem}.context button{min-height:2rem;margin:.12rem 0;padding:.22rem .38rem;font-size:.72rem;line-height:1.1}}@media(max-width:760px)and (max-height:390px){#menu-dialog .menu-step{min-height:0;gap:.3rem}#new-garden-step h2,#load-garden-step h2{font-size:1.15rem}#new-garden-step label{margin:0;font-size:.78rem}#new-garden-step small{max-width:100%}#new-garden-step .menu-back{min-height:2.35rem}}@media(min-width:761px){.build-toolbar{width:min(calc(100% - 1rem),46rem);max-width:calc(100% - 1rem)}.bottom-build-menu,.bottom-build-panel,.build-pages,.research-build-menu{width:100%;max-width:100%}.bottom-build-grid,.research-build-grid{grid-template-columns:repeat(var(--build-card-count, 8),minmax(0,1fr));width:100%}.research-build-grid{grid-template-columns:repeat(var(--research-card-count, 1),minmax(0,1fr))}.build-card-compact,.research-card{width:auto;min-width:0}:root[data-control-density=compact] .bottom-category{min-width:4.1rem;min-height:3.8rem}:root[data-control-density=compact] .build-card-compact{height:6.6rem;min-height:6.6rem}:root[data-control-density=compact] .build-card-compact .build-card-art,:root[data-control-density=compact] .build-card-compact canvas.build-card-art{min-height:3.65rem;height:3.65rem}:root[data-control-density=compact] .build-card-compact .build-card-heading strong{font-size:.78rem}:root[data-control-density=compact] .research-card{min-height:5.8rem}:root[data-control-density=compact] .research-card-body strong{font-size:.72rem}:root[data-control-density=tight] .bottom-build-menu{gap:.3rem;margin-bottom:.3rem}:root[data-control-density=tight] .bottom-category{min-width:3.45rem;min-height:3.1rem;padding:.2rem;font-size:.62rem}:root[data-control-density=tight] .bottom-category-icon{width:1.3rem;height:1.3rem;font-size:.9rem}:root[data-control-density=tight] .build-page-arrow{width:1.6rem;height:3rem;font-size:1.5rem}:root[data-control-density=tight] .build-card-compact{height:5.1rem;min-height:5.1rem;padding:.2rem}:root[data-control-density=tight] .build-card-compact .build-card-art,:root[data-control-density=tight] .build-card-compact canvas.build-card-art{min-height:2.65rem;height:2.65rem}:root[data-control-density=tight] .build-card-compact .build-card-heading strong,:root[data-control-density=tight] .research-card-body strong{font-size:.62rem;line-height:1.05}:root[data-control-density=tight] .research-card{min-height:4.65rem;padding:.2rem}:root[data-control-density=tight] .research-card-art{max-height:3rem}}#command-status{position:absolute;z-index:12;right:.75rem;bottom:4.5rem;max-inline-size:min(22rem,calc(100% - 1.5rem));margin:0;padding:.3rem .5rem;border-radius:.35rem;background:#5c302de8;color:#ffd8cf;font-size:.78rem;pointer-events:none}#command-status:empty{display:none}@media(max-width:760px),(pointer:coarse)and (max-width:1200px){.world-wrap,.build-toolbar,.bottom-build-menu,.bottom-build-panel,.build-pages,.bottom-build-grid,.research-build-grid{min-width:0;max-inline-size:100%}.build-toolbar{inline-size:calc(100% - 1rem)}.bottom-build-menu{inline-size:100%;overflow-x:auto;overscroll-behavior-inline:contain}.bottom-build-categories,.bottom-build-panels{min-inline-size:max-content}.garden-action-dock{max-inline-size:calc(100% - 1rem);flex-wrap:wrap;bottom:max(.75rem,env(safe-area-inset-bottom));left:max(.75rem,env(safe-area-inset-left))}}@media(pointer:coarse)and (orientation:portrait){main{visibility:hidden}#landscape-notice{position:fixed;z-index:30;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;width:100vw;min-height:100dvh;padding:max(2rem,env(safe-area-inset-top)) 1.25rem max(2rem,env(safe-area-inset-bottom));background:#102117;color:#fff1bd;text-align:center}#landscape-notice strong,#landscape-notice span{width:100%;text-align:center}}
