.locale-picker{display:flex;align-items:center;gap:3px;justify-content:flex-end;max-width:170px;font-size:12px;color:inherit}.locale-picker select{font:inherit;color:inherit;background:#fffdf3;border:1px solid #c9bd98;border-radius:8px;min-height:32px;max-width:145px;width:100%;padding:3px}.locale-picker:focus-within{outline:2px solid #b37d3d;outline-offset:2px;border-radius:8px}header{position:relative;flex-wrap:wrap;gap:6px}header>.locale-picker{margin-left:auto}dialog>.locale-picker{margin:0 0 8px auto}.header-right,.header-actions{margin-left:auto}.header-right>span,.header-actions>span{display:none}
html:not([lang=zh-CN]) h1{font-size:22px;letter-spacing:0}html:not([lang=zh-CN]) .brand small{letter-spacing:1px}html:not([lang=zh-CN]) .sign b{letter-spacing:0;font-size:13px}html:not([lang=zh-CN]) .sign small{letter-spacing:.5px}html:not([lang=zh-CN]) .label{white-space:normal;line-height:1.15;max-width:100%;min-width:0}html:not([lang=zh-CN]) .seed-info{min-width:0}html:not([lang=zh-CN]) .shelf-label{writing-mode:horizontal-tb;letter-spacing:0}html:not([lang=zh-CN]) .field-title{gap:4px;line-height:1.3}html:not([lang=zh-CN]) .field-title>span:first-child{max-width:62%}html:not([lang=zh-CN]) .scene-title b{letter-spacing:0}html:not([lang=zh-CN]) .guest-info b{overflow-wrap:anywhere}html:not([lang=zh-CN]) .tools>span:nth-child(2){min-width:0}html:not([lang=zh-CN]) .tools small{line-height:1.3}html:not([lang=zh-CN]) dialog h2{letter-spacing:0;font-size:24px}html:not([lang=zh-CN]) dialog p{line-height:1.65}html:not([lang=zh-CN]) .primary,html:not([lang=zh-CN]) .secondary{line-height:1.35}html:not([lang=zh-CN]) .room-label{letter-spacing:0;gap:6px}
@media(max-width:760px){header>.locale-picker{max-width:102px}header>.locale-picker select{max-width:85px;min-height:32px;font-size:10px}header{gap:4px}html:not([lang=zh-CN]) h1{font-size:18px}.brand{gap:5px}.brand small{font-size:7px}.header-right,.header-actions{gap:3px}.header-right .icon,.header-actions button{width:32px;height:34px}html:not([lang=zh-CN]) .shelf-label{display:none}html:not([lang=zh-CN]) .plot .label{font-size:9px;padding:4px 3px}html:not([lang=zh-CN]) .tools small{max-width:50%;font-size:8px}html:not([lang=zh-CN]) .seed small{font-size:7px}html:not([lang=zh-CN]) .field-title{font-size:7px}html:not([lang=zh-CN]) .scene-title b{font-size:9px}html:not([lang=zh-CN]) .sign b{font-size:10px}html:not([lang=zh-CN]) .order-card h2{font-size:12px;letter-spacing:0}html:not([lang=zh-CN]) .stock-row b{font-size:9px}html:not([lang=zh-CN]) .sell{font-size:9px;padding:4px}html:not([lang=zh-CN]) .metrics small{font-size:9px}html:not([lang=zh-CN]) .room-label{font-size:6px}}
@media(max-width:360px){header{gap:3px}.brandmark,.sun-logo{font-size:23px}html:not([lang=zh-CN]) h1{font-size:15px}header>.locale-picker{max-width:74px}header>.locale-picker select{max-width:61px}.brand small{font-size:6px}.header-right .icon,.header-actions button{width:28px}.header-right,.header-actions{gap:2px}html:not([lang=zh-CN]) .table .label{font-size:9px;padding:4px 5px}html:not([lang=zh-CN]) .seed b{font-size:9px}html:not([lang=zh-CN]) .tools small{display:none}html:not([lang=zh-CN]) .table{min-height:88px}}
@media(orientation:landscape) and (max-height:560px){.app{grid-template-columns:240px 1fr}header>.locale-picker{max-width:80px}header>.locale-picker select{max-width:67px;font-size:9px}.brand small{display:none}html:not([lang=zh-CN]) h1{font-size:14px}.brandmark,.sun-logo{font-size:22px}.header-right .icon,.header-actions button{height:30px;width:27px}.header-right,.header-actions{gap:2px}html:not([lang=zh-CN]) .plot .label{font-size:9px}html:not([lang=zh-CN]) .table .label{font-size:10px}.locale-picker>span{display:none}html:not([lang=zh-CN]) .metrics small{font-size:8px}html:not([lang=zh-CN]) .tools small{display:none}}
@media(orientation:landscape) and (max-height:350px){.app{grid-template-columns:230px 1fr}html:not([lang=zh-CN]) .metrics b{font-size:15px}html:not([lang=zh-CN]) .scoreboard small{font-size:8px}html:not([lang=zh-CN]) .guest-info b{font-size:9px}html:not([lang=zh-CN]) .order-card h2{font-size:11px}html:not([lang=zh-CN]) .stock-row b{font-size:8px}}
@media(orientation:portrait) and (max-width:400px) and (max-height:620px){.metrics{padding-top:4px;padding-bottom:4px;margin-bottom:6px}.order-card,.market{padding:6px}.game-layout{gap:6px}.field-title{margin-bottom:2px}.seed-shelf{margin-top:4px}.locale-picker>span{display:none}header>.locale-picker select{width:61px}.tools{min-height:32px}html:not([lang=zh-CN]) .order-card h2{margin:4px 0}.stock-row{padding-top:2px}}
@media(orientation:landscape) and (max-height:560px){.app{grid-template-columns:270px 1fr}header{flex-wrap:nowrap}.brand{flex-shrink:0}header>.locale-picker{max-width:67px;flex-shrink:0}.header-right,.header-actions{flex-shrink:0}html:not([lang=zh-CN]) .metrics>div{padding-left:6px}.metrics{padding-left:8px;padding-right:8px}}
@media(max-width:360px){html[data-game=sunny-fields]:not([lang=zh-CN]) h1{font-size:12px;max-width:125px;line-height:1.2}header{flex-wrap:nowrap}.brand{min-width:0}header>.locale-picker{flex-shrink:0}.header-actions,.header-right{flex-shrink:0}}
@media(orientation:landscape) and (max-height:560px){html:not([lang=zh-CN]) header h1{font-size:12px;max-width:100px;line-height:1.2;white-space:normal}.brand{max-width:132px}.locale-picker select{min-width:0}}
@media(min-width:761px) and (min-height:561px) and (max-height:850px){html[data-game=sunny-fields] .game-layout aside{gap:10px}html[data-game=sunny-fields] .order-card{padding:14px}html[data-game=sunny-fields] .market{padding:12px 16px}html[data-game=sunny-fields] .tools{padding:8px 12px}html[data-game=sunny-fields] .farm-scene{align-self:start}}
/* Keep the native accessible menu with full names; only its closed visual label is compact. */
.locale-picker{position:relative;width:62px!important;max-width:62px!important;flex-shrink:0}.locale-picker select{width:62px!important;max-width:62px!important;color:transparent;appearance:none;padding:3px;cursor:pointer}.locale-picker select option{color:#45533d;background:#fffdf3}.locale-picker>.locale-short{display:block;position:absolute;inset:0;pointer-events:none;text-align:center;align-content:center;color:#45533d;font:600 11px/1.2 sans-serif;white-space:nowrap}.earnings small{gap:6px}
@media(orientation:landscape) and (max-height:560px){.earnings small{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:2px;line-height:1.2}.earnings #target{white-space:nowrap;font-size:8px}}
