/* Scoped to Little Farm. Never changes other games or shared preferences. */
body[data-action-game=littlefarm]{--cozy-bg:#fff8e9;--cozy-fg:#283e36;--cozy-muted:#4f665a;--cozy-line:#b4c1a2;--cozy-control:#f6f0dc;--cozy-accent:#2f684c}
body[data-action-game=littlefarm][data-cozy-theme=dark]{--cozy-bg:#172d29;--cozy-fg:#f1f5dd;--cozy-muted:#c4d5c1;--cozy-line:#647d69;--cozy-control:#294238;--cozy-accent:#b9e6a0}
body[data-action-game=littlefarm][data-cozy-theme=light] :is(.lobby,.dialog),body[data-action-game=littlefarm][data-cozy-theme=dark] :is(.lobby,.dialog){background:var(--cozy-bg)!important;color:var(--cozy-fg)!important}
body[data-action-game=littlefarm]:not([data-cozy-theme=system]) :is(button,input,select){background:var(--cozy-control)!important;color:var(--cozy-fg)!important;border-color:var(--cozy-line)!important}
body[data-action-game=littlefarm]:not([data-cozy-theme=system]) :is(small,.farm-info,.farm-summary,p,label){color:var(--cozy-fg)!important}
.cozy-panel{font-size:15px;line-height:1.55;overflow-wrap:anywhere}.cozy-panel h2{padding-right:24px}.cozy-panel :is(button,input,select){font:inherit;min-height:44px;max-width:100%;box-sizing:border-box}.cozy-panel button:disabled{opacity:.5}.cozy-panel button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--cozy-accent)}.cozy-panel button:focus-visible,.cozy-panel input:focus-visible,.cozy-panel select:focus-visible{outline:3px solid #cd8d31;outline-offset:3px}.cozy-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cozy-form label{display:flex;flex-direction:column;gap:5px}.cozy-form input,.cozy-form select{width:100%;padding:9px;border:1px solid var(--cozy-line);border-radius:9px}.cozy-check{display:flex;align-items:center;gap:10px;margin:16px 0}.cozy-check input{width:20px;flex-shrink:0}.cozy-actions,.cozy-filters{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:10px 0}.cozy-actions button,.cozy-filters button{padding:8px 12px}.cozy-avatar{display:block;margin:auto;max-width:100%;background:#d8e2bb;border-radius:50%}.cozy-stats{display:flex;flex-wrap:wrap;gap:10px;padding:12px 0}.cozy-stats span{padding:6px 10px;border:1px solid var(--cozy-line);border-radius:10px}.cozy-album{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.cozy-album>div{display:grid;justify-items:center;text-align:center;font-size:12px}.cozy-undiscovered{opacity:.55}.cozy-item{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--cozy-line)}.cozy-item>div:first-of-type{flex:1;min-width:120px}.cozy-item canvas{width:56px;height:56px;flex-shrink:0}.cozy-item small{display:block;line-height:1.6}.cozy-item>.cozy-actions{margin:0}.cozy-layout-preview{width:min(100%,320px);height:auto;display:block;margin:auto;border-radius:14px}.cozy-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cozy-map button{text-align:left;padding:12px;display:grid;gap:6px}.cozy-map-plots{display:grid;grid-template-columns:repeat(6,1fr);gap:3px}.cozy-map-plots i{height:9px;background:#b6b9ac;border-radius:2px}.cozy-map-plots i.open{background:#53815c}.cozy-volume{display:grid;grid-template-columns:1fr 2fr 48px;align-items:center;gap:10px;margin:20px 0}.cozy-summary{margin:0;font-weight:600}.cozy-navigation button{font-weight:600}
body[data-action-game=littlefarm][data-cozy-text=large] :is(.cozy-panel,.farm-info,.farm-summary,.farm-toolbar button,.farm-toolbar select,.farm-heading small,#saveStatus){font-size:18px!important;line-height:1.6}body[data-action-game=littlefarm][data-cozy-text=large] .cozy-panel :is(small,.cozy-album>div){font-size:16px}
@media(max-width:460px){.cozy-form{grid-template-columns:1fr}.cozy-album{grid-template-columns:repeat(3,minmax(0,1fr))}.cozy-item>.cozy-actions{width:100%;justify-content:flex-end}.cozy-map{grid-template-columns:1fr}.cozy-volume{grid-template-columns:1fr 48px}.cozy-volume input{grid-column:1;grid-row:2}.cozy-volume output{grid-column:2;grid-row:2}.cozy-navigation>*{min-width:calc(50% - 8px)}.cozy-panel{min-width:0}}
/* Farm viewport: authored 4:5 world, not a portrait picture inside a wide strip. */
body[data-action-game=littlefarm] .lobby{max-width:1120px;min-width:0;padding-bottom:24px}
body[data-action-game=littlefarm] .farm-workspace{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:20px;align-items:start}
body[data-action-game=littlefarm] :is(.farm-view,.farm-actions){min-width:0}
body[data-action-game=littlefarm] .sim-stage{position:relative;width:100%;max-width:min(560px,max(160px,calc((100dvh - 180px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)) * .8)));height:auto;min-height:0;aspect-ratio:4/5;margin:12px auto;overflow:hidden;border-radius:16px;isolation:isolate}
body[data-action-game=littlefarm] .sim-stage canvas{position:absolute;inset:0 auto auto 0;display:block;width:100%;height:100%;max-width:none;touch-action:pan-y}
body[data-action-game=littlefarm] .farm-actions{padding-top:26px}
body[data-action-game=littlefarm] .farm-actions .farm-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
body[data-action-game=littlefarm] .farm-actions .farm-toolbar>*{min-width:0;width:100%;max-width:100%;overflow-wrap:anywhere}
body[data-action-game=littlefarm] .farm-actions .farm-toolbar select{grid-column:1/-1}
body[data-action-game=littlefarm] .farm-actions .row{display:flex;flex-wrap:wrap;gap:8px}
body[data-action-game=littlefarm] .farm-actions .row>*{min-width:0;max-width:100%}
body[data-action-game=littlefarm] .farm-actions #saveStatus{flex-basis:100%}
body[data-action-game=littlefarm] :is(.farm-heading,.topline){min-width:0;flex-wrap:wrap}
body[data-action-game=littlefarm] .farm-heading h1{overflow-wrap:anywhere}
body[data-action-game=littlefarm] .district-select{max-width:100%;min-width:0;text-overflow:ellipsis}
@media(max-width:820px){body[data-action-game=littlefarm] .farm-workspace{grid-template-columns:minmax(0,1fr);gap:0}body[data-action-game=littlefarm] .sim-stage{max-width:min(560px,max(160px,calc((100dvh - 120px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)) * .8)))}body[data-action-game=littlefarm] .farm-actions{padding-top:0}}
@media(max-width:420px){body[data-action-game=littlefarm] .lobby{padding:14px 12px 20px}body[data-action-game=littlefarm] .farm-heading h1{font-size:23px}body[data-action-game=littlefarm] .cozy-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}body[data-action-game=littlefarm] .cozy-navigation>*{min-width:0;overflow-wrap:anywhere}}
