/* Wisdom Homeland 1.2 · a bright, touch-first natural estate */
:root{--dock-height:76px;--sage:#3e654b;--olive:#708455;--cream:#fbf9ee}
html{scroll-padding-top:80px}body{padding-bottom:calc(var(--dock-height) + env(safe-area-inset-bottom));background:#f5f5ed}button{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #a38640;outline-offset:3px}.app-topbar{height:66px;max-width:1250px;padding:10px 28px;margin:auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dfe4d6}.app-topbar>button{border:0;background:transparent;padding:8px}.app-topbar svg{width:24px;height:24px}.app-topbar>a{text-align:center}.app-topbar b{font:19px serif;letter-spacing:4px}.app-topbar small{display:block;font-size:9px;letter-spacing:3px;color:#7c8d70;margin-top:3px}.app-mode{font-size:10px;padding:6px 15px;text-align:center;background:#eaf0e1;color:#758367}.role-switch{padding:8px 15px;background:#f1f3e9;font-size:12px}.role-switch>div{display:flex;gap:8px;flex-wrap:wrap;padding-top:10px}.role-switch summary{cursor:pointer}.game-dock{position:fixed;bottom:0;left:0;right:0;z-index:110;display:flex;justify-content:center;height:calc(var(--dock-height) + env(safe-area-inset-bottom));padding:7px 8px calc(9px + env(safe-area-inset-bottom));background:#fffcf3f5;backdrop-filter:blur(20px);border-top:1px solid #e2e5d7;box-shadow:0 -8px 30px #4b66320a}.game-dock button{border:0;background:transparent;flex:1;max-width:130px;padding:7px 5px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:#9a9f8a;font-size:10px;border-radius:14px}.game-dock svg{width:24px;height:24px;transition:transform .2s}.game-dock button.active{color:#365d42;background:#edf0e1}.game-dock button.active svg{transform:translateY(-2px)}.game-dock button.active span{font-weight:700}.lobby-route{background:#eef0e4}.lobby-route #main{min-height:calc(100dvh - var(--dock-height))}.lobby-desktop{min-height:calc(100dvh - var(--dock-height));display:flex;align-items:center;justify-content:center;gap:90px;padding:28px}.lobby-phone{position:relative;width:420px;height:min(800px,calc(100dvh - 124px));min-height:620px;overflow:hidden;border:7px solid #fffcf2;border-radius:35px;isolation:isolate;box-shadow:0 25px 80px #45663124;background:#dbe6c9}.lobby-landscape{position:absolute;inset:0;z-index:-3;background:url('/agri/assets/farm-portrait.webp') center center/cover;filter:brightness(1.13) saturate(.82);transform:scale(1.025);animation:estate-arrive 1.1s ease-out both}.lobby-sunlight{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#f8f9e9db 0%,#eff3db80 23%,#f7f9e100 37%,#f4f7db00 65%,#fbfae9e8 84%,#fffcef 100%)}.lobby-top{position:absolute;left:18px;right:18px;top:20px;display:flex;justify-content:space-between;align-items:center;gap:10px}.lobby-profile{display:flex;gap:8px;align-items:center;padding:0;background:transparent;border:0;text-align:left;max-width:calc(100% - 50px)}.profile-seal{font:21px serif;display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:15px;background:#fffcedd9;border:1px solid #fff;box-shadow:0 3px 10px #3c603a13;color:#597149}.lobby-profile b{display:block;font-size:12px;max-width:210px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lobby-profile small{display:block;margin-top:4px;font-size:9px;color:#7a876b}.round-menu{width:40px;height:40px;padding:9px;border:1px solid #fff;background:#fffbeabf;border-radius:50%;flex-shrink:0}.round-menu svg{width:20px;height:20px}.lobby-wallet{position:absolute;left:19px;top:76px;display:flex;gap:13px;color:#7b846a;font-size:9px}.lobby-wallet>span{display:flex;align-items:center;gap:4px}.lobby-wallet b{font-size:11px;color:#536647}.bean{display:inline-block;width:10px;height:10px;border-radius:50%;box-shadow:inset 1px 1px 2px #fff8}.bean.gold{background:#cda752}.bean.silver{background:#b5bcb4}.bean.fortune{background:#88a763}.lobby-title{position:absolute;top:116px;left:24px}.lobby-title>small{letter-spacing:3px;font-size:8px;color:#8d9878}.lobby-title h1{font:25px/1.4 'Songti SC','Noto Serif CJK SC',SimSun,serif;letter-spacing:2px;margin:7px 0 12px;color:#435f3a}.lobby-title nav{display:flex;gap:4px;align-items:center;padding:3px;width:max-content;background:#fffdf0a8;border:1px solid #fff9;border-radius:20px}.lobby-title nav button{border:0;background:transparent;border-radius:17px;padding:7px 12px;font-size:10px;min-height:30px;color:#738566}.lobby-title nav button.active{color:#fff;background:#66815a}.lobby-title nav span{font-size:8px;padding:0 9px;color:#899376}.lobby-title>p{font-size:9px;color:#768567;letter-spacing:1px;margin-top:11px}.world-portals{position:absolute;inset:0;pointer-events:none}.world-portal{position:absolute;pointer-events:auto;display:flex;align-items:center;gap:8px;background:#fffeefde;backdrop-filter:blur(10px);border:1px solid #fffdf1;border-radius:16px;padding:10px 12px;box-shadow:0 7px 24px #46653724;text-align:left;min-width:167px;transition:transform .2s}.world-portal:hover{transform:translateY(-3px)}.world-portal>span:nth-child(2){display:flex;flex-direction:column;gap:3px}.portal-marker{background:#edf0d8;display:grid;place-items:center;width:31px;height:37px;border-radius:11px;color:#758959}.portal-marker svg{width:21px;height:21px}.world-portal small{font:7px Georgia,serif;letter-spacing:1px;color:#97a180}.world-portal b{font:16px serif;color:#44613c;letter-spacing:1px}.world-portal em{font-style:normal;font-size:8px;color:#8a967a}.world-portal>i{font:25px Georgia,serif;color:#9ba987;margin-left:4px}.portal-farm{top:36%;left:6%}.portal-ranch{top:49%;right:7%}.portal-pond{top:62%;left:9%}.lobby-utilities{position:absolute;right:13px;top:29%;display:flex;gap:12px;flex-direction:column}.lobby-utilities button{padding:0;border:0;background:transparent;display:flex;align-items:center;flex-direction:column;gap:4px;font-size:8px;color:#5e764d;text-shadow:0 1px 5px #fff}.lobby-utilities svg{width:35px;height:35px;background:#fffdebdf;border:1px solid white;padding:8px;border-radius:13px;box-shadow:0 5px 16px #47682b15}.lobby-bottom{position:absolute;left:21px;right:21px;bottom:14px}.journey-summary{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px;padding:0 3px;gap:8px}.journey-summary small{display:block;font-size:8px;letter-spacing:1px;color:#8c9978;margin-bottom:5px}.journey-summary b{font-size:10px;font-weight:500;color:#5d754a}.journey-summary>span{font-size:7px;writing-mode:vertical-rl;letter-spacing:2px;color:#9da789;height:43px}.enter-homeland{display:grid;grid-template-columns:1fr 30px;gap:4px;width:100%;text-align:left;background:linear-gradient(120deg,#5b7c4d,#849663);border:1px solid #89a171;color:#fffce5;border-radius:16px;padding:15px 19px;box-shadow:0 8px 20px #59733c26;min-height:70px}.enter-homeland>span{font:20px serif;letter-spacing:3px}.enter-homeland>small{font-size:9px;color:#e8edce;letter-spacing:1px}.enter-homeland>b{grid-column:2;grid-row:1/3;align-self:center;font-size:25px;font-weight:400}.lobby-disclosure{font-size:8px;line-height:1.6;text-align:center;color:#929b7e;margin-top:10px}.lobby-editorial{width:330px}.lobby-editorial h2{font:38px/1.8 serif;letter-spacing:4px;margin:24px 0;color:#486542}.lobby-editorial p{font-size:13px;line-height:2.2;color:#829071}.lobby-editorial>div{display:grid;grid-template-columns:1fr 1fr;gap:17px;font-size:11px;color:#7a8b69;margin:30px 0}.lobby-editorial>small{display:block;font-size:10px;line-height:1.8;color:#97a187;margin-top:25px}.scene-route .estate-section.immersive{bottom:calc(var(--dock-height) + env(safe-area-inset-bottom))}.scene-route .immersive .estate-canvas{height:calc(100dvh - var(--dock-height) - env(safe-area-inset-bottom));max-width:100vw}.scene-route .immersive .estate-control{bottom:12px}.scene-route .estate-control .phase-pills{display:flex}.scene-route .estate-control .care-actions button{font-size:12px;min-height:44px}.scene-route .game-system-tabs button{font-size:12px;min-height:42px}.scene-route .game-header strong{font-size:15px}.scene-route .hotspot{font-size:11px;min-height:44px}.scene-route .game-fullscreen{font-size:11px;min-height:40px}.scene-route .hud-summary h3{font-size:18px}.scene-links{display:flex;gap:6px;margin-top:8px}.scene-links button{flex:1;border:0;background:transparent;padding:5px;font-size:10px;color:#82946a;min-height:30px}.scene-route #toast{z-index:130;bottom:calc(var(--dock-height) + 20px)}.mall-promo{padding:24px 30px;border-radius:18px;background:linear-gradient(110deg,#eef0dc,#fff9e8);display:flex;justify-content:space-between;align-items:center;margin:0 0 25px;border:1px solid #e3e7cf}.mall-promo h2{font:27px serif;letter-spacing:2px;margin:9px 0}.mall-promo small,.mall-promo p{font-size:11px;color:#879371}.world-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.world-menu-grid button{text-align:left;background:#f4f5e9;padding:17px}.world-menu-grid b{display:block;font:18px serif}.world-menu-grid small{display:block;font-size:10px;color:#8b967b;margin-top:9px}.growth-next{padding-bottom:28px;display:flex;justify-content:center;gap:15px}.product-showcase .purchase-actions{flex-wrap:wrap}.purchase-panel{min-width:0}.shop-filter{gap:12px}.shop-filter .tabs{margin-bottom:0}.game-dock~*{position:relative}dialog{max-height:calc(100dvh - 40px);padding-bottom:25px}.scene-route .estate-caption{pointer-events:none}
@keyframes estate-arrive{from{transform:scale(1.08);opacity:.7}to{transform:scale(1.025);opacity:1}}
@media(max-width:850px){.lobby-editorial{display:none}.lobby-desktop{padding:16px}.lobby-phone{height:calc(100dvh - 108px);min-height:600px}.wrap{padding-left:20px;padding-right:20px}}
@media(max-width:600px){:root{--dock-height:70px}.lobby-desktop{display:block;padding:0;min-height:0}.lobby-phone{width:100%;height:calc(100dvh - var(--dock-height) - env(safe-area-inset-bottom));min-height:570px;max-height:none;border:0;border-radius:0;box-shadow:none}.lobby-route #main{min-height:0}.lobby-top{top:max(18px,env(safe-area-inset-top))}.lobby-wallet{top:75px}.lobby-title{top:111px}.lobby-title h1{font-size:25px}.lobby-utilities{right:15px;top:29%}.lobby-bottom{bottom:12px}.world-portal{min-width:160px;padding:10px}.world-portal b{font-size:16px}.portal-farm{top:36%}.portal-ranch{top:49%;right:10%}.portal-pond{top:62%}.lobby-disclosure{font-size:8px}.scene-route .immersive .estate-canvas{width:100vw}.scene-route .estate-control .phase-pills{margin:8px 0 5px}.scene-route .estate-caption{top:143px}.scene-route .estate-control{padding:12px 12px 8px}.scene-route .estate-control .control-note{font-size:9px}.scene-route .estate-canvas .spot-0{top:32%;left:6%}.scene-route .estate-canvas .spot-1{top:43%;left:35%}.scene-route .estate-canvas .spot-2{top:29%;left:68%}.scene-route .estate-canvas .spot-3{top:50%;left:6%}.scene-route .estate-canvas .spot-4{top:39%;left:66%}.scene-route .estate-canvas .spot-5{top:52%;left:69%}.mall-promo{padding:19px;display:block}.mall-promo .primary{margin-top:10px}.app-topbar{padding:10px 16px}.shop-filter{display:block}.shop-filter .search{width:100%;margin-top:12px}.page-title h1{font-size:30px}.world-menu-grid{gap:8px}.world-menu-grid button{padding:15px 12px}.grid{grid-template-columns:1fr 1fr;gap:10px}.product-info{padding:12px}.product-info h3{font-size:14px;line-height:1.5}.product-info p{font-size:11px}.product-bottom{display:block}.product-bottom .primary{display:block;width:100%;margin-top:10px;font-size:11px}.product-tags{gap:3px;flex-wrap:wrap}.product-tags span{font-size:8px}.origin-row{font-size:9px;display:block}.availability{font-size:9px;line-height:1.6}.product .food-photo{height:175px}.price{font-size:21px}.premium-product{border-radius:13px}.growth-tabs button{min-height:42px}.growth-longstrip{grid-template-columns:1fr 1fr}.growth-longstrip button{min-width:0}.growth-mini{height:110px}.game-dock button{max-width:none}.toplinks{gap:6px}}
@media(max-height:700px) and (max-width:600px){.lobby-phone{min-height:540px}.lobby-title{top:103px}.lobby-title h1{font-size:22px;margin-bottom:8px}.lobby-title>p{display:none}.lobby-wallet{top:72px}.portal-farm{top:35%}.portal-ranch{top:48%}.portal-pond{top:60%}.world-portal{padding:8px;min-width:152px}.world-portal em{font-size:7px}.lobby-bottom{bottom:8px}.journey-summary{display:none}.enter-homeland{padding:12px 16px;min-height:61px}.enter-homeland>span{font-size:18px}.lobby-disclosure{margin-top:6px;font-size:7px}.scene-route .estate-control .phase-pills{display:none}.scene-route .scene-links{margin-top:3px}.scene-route .estate-caption{display:none}.scene-route .game-system-tabs{top:70px}.scene-route .estate-control .care-actions button{padding:9px 3px}.scene-route .estate-canvas .spot-5{top:49%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Solid hotspot surfaces avoid WebView blur artefacts around moving controls. */
.scene-route .hotspot{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fffde9;box-shadow:0 4px 12px #46612b25}.scene-route .hotspot.selected{background:#507447;color:#fffde8}.lobby-utilities button{min-width:44px;min-height:49px}.scene-route .estate-caption{color:#faffee;text-shadow:0 1px 6px #35512d}.scene-route .estate-caption>span{display:none}

.hud-summary .hud-environment{font-size:9px;letter-spacing:0;display:block;line-height:1.4;margin-top:4px;color:#81916f}.lobby-profile small,.lobby-title>p{color:#637951}.lobby-title>small{color:#748560}
@media(max-height:700px){.hud-summary .hud-environment{font-size:8px}.scene-route .estate-control{padding-top:8px}.scene-route .scene-links button{min-height:26px}}
@media(max-width:600px){.shop-section{padding-top:12px}.shop-section .page-title{padding:10px 0 14px}.shop-section .page-title .eyebrow{font-size:8px;letter-spacing:2px}.shop-section .page-title h1{font-size:28px;margin:9px 0}.shop-section .page-title p{font-size:11px;line-height:1.7;margin:0}.mall-promo{padding:14px 16px;display:flex;align-items:center;gap:12px;margin-bottom:12px;border-radius:15px}.mall-promo h2{font-size:20px;letter-spacing:1px;margin:6px 0}.mall-promo small{font-size:9px}.mall-promo p{font-size:9px;line-height:1.5;margin:5px 0}.mall-promo .primary{flex-shrink:0;width:84px;font-size:11px;padding:12px 7px;margin:0}.shop-filter{margin:8px 0 17px;padding-bottom:12px}.shop-filter .search{padding:10px 14px}.shop-filter .tabs button{min-height:39px;font-size:10px;padding:8px 11px}.shop-section .grid{gap:10px}.product .food-photo{height:auto;aspect-ratio:1/1}}
