:root{color-scheme:dark;font-family:Microsoft YaHei UI,PingFang SC,system-ui,sans-serif;color:#f2efd9;background:#142e35;--gold: #ead49a;--muted: #b1c7b8;--border: #d7d7a62e}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100dvh;overflow:hidden;overscroll-behavior:none}#app{position:fixed;inset:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}button,input{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.5}button:focus-visible,input:focus-visible{outline:2px solid #b5ffe0;outline-offset:3px}button:active:not(:disabled){transform:translateY(1px);filter:brightness(1.12)}button small{display:block;font-size:10px;margin-top:4px;line-height:1.4;font-weight:400}.hidden{display:none!important}#game-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.world-vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 150px #12272b55}.glass-panel{background:linear-gradient(145deg,#163b34f5,#102927f5);border:1px solid var(--border);box-shadow:0 14px 45px #001e2355,inset 0 1px #fff1;border-radius:20px}.eyebrow{font-size:10px;letter-spacing:.19em;color:var(--gold);margin:0 0 6px}h1,h2,h3{font-family:STKaiti,KaiTi,Songti SC,serif}.primary-button,.action-button,.text-button,.danger-button{border-radius:11px;padding:11px 16px;border:1px solid #d2dbad33;background:#31564a;min-height:46px}.primary-button,.action-button.accent{color:#263b2e;background:linear-gradient(120deg,#eee1af,#bcca84);border-color:#e5d992;font-weight:700}.text-button{background:transparent}.danger-button{background:#6a4142}.landing{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(460px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;text-align:center;padding:36px;background:linear-gradient(145deg,#153c37ec,#12252fee);backdrop-filter:blur(16px)}.landing__seal{margin:0 auto 14px;color:#fff0bc;font:30px serif;width:54px;height:54px;border:1px solid #e5dca673;border-radius:18px 4px;display:grid;place-items:center}.landing h1{font-size:clamp(38px,6vw,60px);letter-spacing:.1em;margin:4px 0 10px;color:#fff1c4}.landing__subtitle{font-size:13px;line-height:1.8}.landing__features{display:flex;justify-content:center;gap:12px;color:#c9d9b3;font-size:11px;margin:24px 0}.landing__features i{width:3px;height:3px;background:var(--gold);align-self:center}.landing__story{font-size:13px;color:var(--muted);line-height:1.9}.landing .primary-button,.landing .text-button{display:block;margin:12px auto;min-width:210px}.landing__hint{font-size:10px;color:#93b2a4;line-height:1.8}.filing-links{font-size:9px;display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin-top:18px;opacity:.7}.filing-links a{color:#bac9b5;text-decoration:none}.filing-links img{width:12px;vertical-align:middle}.hud{position:absolute;inset:0;pointer-events:none;--world-bottom: 150px}.hud button,.farm-panel,.companion-panel,.joystick{pointer-events:auto}.topbar{position:absolute;top:calc(12px + env(safe-area-inset-top));left:20px;right:20px;display:flex;justify-content:space-between;align-items:center;gap:10px}.brand-chip{display:flex;align-items:center;gap:10px}.brand-chip__mark{font:24px serif;color:var(--gold);border:1px solid var(--border);border-radius:12px;padding:6px}.brand-chip strong,.brand-chip small{display:block}.brand-chip strong{font-size:15px}.brand-chip small{color:var(--muted);font-size:10px;margin-top:4px}.resource-strip{display:flex;gap:6px}.resource-pill{background:#142e29e8;border:1px solid var(--border);padding:8px 12px;border-radius:12px;display:flex;gap:8px;align-items:center}.resource-pill span{font-size:11px;color:#c8d8bd}.resource-pill strong{font-size:14px;color:#fff0c6}.top-actions{display:flex;gap:5px}.icon-button{border:1px solid var(--border);border-radius:12px;width:44px;height:44px;background:#183a31ee}.player-status{position:absolute;left:20px;top:calc(68px + env(safe-area-inset-top));width:188px;padding:7px 11px;font-size:10px;display:grid;grid-template-columns:1fr auto;gap:4px;border-radius:12px}.player-status .health-track{grid-row:2;grid-column:1/-1}.health-track,.quest-progress,.boss-meter__track,.stat-track{height:5px;background:#fff2;border-radius:5px;overflow:hidden}.health-track span,.quest-progress span,.boss-meter__track span,.stat-track span{display:block;height:100%;background:#b8e29b;border-radius:inherit}.utility-bar{position:absolute;top:calc(66px + env(safe-area-inset-top));right:20px;display:flex;gap:6px}.utility-bar button{border:1px solid var(--border);background:#12352bed;border-radius:12px;min-height:44px;padding:8px 19px;font-size:12px}.utility-bar .awakening-entry{color:#f9e5a1;border-color:#e9d5957a;background:#3c5138ee}.left-stack{display:none}.farm-panel,.companion-panel{position:absolute;left:var(--panel-x);top:var(--panel-y);width:var(--panel-width);height:var(--panel-height);padding:13px;overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:7px}.panel-heading{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.panel-heading h2{font-size:20px;margin:0}.panel-heading .eyebrow{display:none}.close-button{width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:#254a3c;font-size:22px;flex-shrink:0}.panel-description{color:#c3d2b7;font-size:11px;line-height:1.5;margin:0}.stat-list{display:grid;grid-template-columns:1fr 1fr;gap:5px 12px}.stat-row{display:flex;gap:5px;align-items:center;font-size:10px}.stat-row label{color:#bfd2b8}.stat-track{flex:1}.stat-row em{font-size:10px;font-style:normal;min-width:28px;text-align:right}.seed-bar{display:flex;gap:4px;flex-shrink:0;overflow-x:auto}.seed-card{flex:1 0 50px;padding:7px 3px;background:#173b32;border:1px solid var(--border);border-radius:8px;min-height:46px}.seed-card strong{font-size:10px;white-space:nowrap}.seed-card small{font-size:9px}.seed-card__icon,.seed-card kbd{display:none}.seed-card.active{border-color:#e6d997;background:#476040}.farm-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:auto;flex-shrink:0}.action-button{font-size:12px;padding:8px 9px}.farm-actions [data-action=farm-awaken]{grid-column:1/-1;min-height:58px;font-size:16px}.farm-actions [data-action=farm-awaken]:disabled{opacity:.78;background:#53664a;color:#e2e3c6;border-color:#a3ab7877}.farm-actions [data-action=farm-harvest]{grid-column:1/-1}.farm-actions [data-action=farm-harvest] small{display:inline;margin-left:8px}.companion-panel{padding-top:20px}.companion-close{position:absolute;top:8px;right:8px}.companion-info{padding-right:43px}.companion-info small,.companion-info strong{display:block}.companion-info small{font-size:11px;color:var(--muted)}.companion-info strong{font-size:21px;margin:8px 0}.companion-portrait{display:none}.command-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.command-button,.companion-roster button{border:1px solid var(--border);background:#2b5243;border-radius:9px;min-height:44px;font-size:12px;padding:8px}.command-button.active,.companion-roster .active{border-color:var(--gold);color:#ffe7a6}.all-command{grid-column:1/-1;font-size:12px;min-height:36px;display:flex;align-items:center;gap:8px}.all-command input{width:20px;height:20px;accent-color:#c8db8b}.companion-roster{display:flex;gap:6px;flex-wrap:wrap}.play-actions{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(3,56px);gap:6px}.play-actions button{border:1px solid #d1ddb35e;background:linear-gradient(140deg,#305546f5,#173a32f5);border-radius:15px;min-height:46px;font-size:12px;box-shadow:0 5px 18px #071c2866}.play-actions .attack-button{background:linear-gradient(135deg,#f2db9b,#be975a);border:1px solid #fff1be;color:#2d3522;font-weight:800;grid-row:span 2;touch-action:none}.hud:not(.compact) .play-actions{grid-template-columns:repeat(6,62px)}.hud:not(.compact) .play-actions .attack-button{grid-row:auto}#skill-button{color:#b7ffe0;border-color:#87dcc697}.joystick{display:none;position:absolute;left:max(22px,env(safe-area-inset-left));bottom:calc(18px + env(safe-area-inset-bottom));width:112px;height:112px;border:1px solid #e7e6b449;border-radius:50%;background:radial-gradient(circle,#5077657a,#112f2966);touch-action:none;box-shadow:inset 0 0 18px #e0efab16}.touch-mode .joystick{display:block}.joystick span{position:absolute;left:33px;top:33px;width:46px;height:46px;background:#b6d4a894;border:1px solid #e3edbd;border-radius:50%;pointer-events:none}.hud:not([data-mode=play]) .play-actions,.hud:not([data-mode=play]) .joystick,.hud:not([data-mode=play]) .controls-hint{display:none}.controls-hint{position:absolute;left:20px;bottom:20px;display:flex;gap:12px;padding:13px;font-size:10px}kbd{border:1px solid #fff3;border-radius:4px;padding:3px;font-size:10px}.touch-mode .controls-hint,.compact .controls-hint{display:none}.action-status{position:absolute;bottom:calc(var(--world-bottom) + 10px);left:50%;transform:translate(-50%);max-width:75%;text-align:center;font-size:10px;padding:4px 8px;border-radius:9px;background:#163a2bbb;color:#f3e5b2}.action-status:empty{display:none}.hud:not([data-mode=play]) .action-status{display:none}.boss-meter{position:absolute;top:calc(114px + env(safe-area-inset-top));left:50%;transform:translate(-50%);width:220px;background:#392937df;padding:7px 10px;border:1px solid #f49e9a66;border-radius:10px}.boss-meter>div:first-child{display:flex;justify-content:space-between;font-size:10px;margin-bottom:5px}.boss-meter small{color:#ffb9a4}.boss-meter__track span{background:#ed947f}.possession-banner{position:absolute;bottom:calc(var(--world-bottom) + 34px);left:20px;padding:8px 13px;background:#4c435dd9;border:1px solid #e4dba6a8;border-radius:11px;font-size:11px;display:flex;gap:10px}.toast-stack{position:absolute;left:50%;top:calc(155px + env(safe-area-inset-top));transform:translate(-50%);width:min(340px,82vw);pointer-events:none;z-index:12;display:flex;flex-direction:column;gap:5px}.toast{padding:9px 14px;background:#163629ee;border:1px solid #f0e4ae4d;border-radius:12px;font-size:12px;text-align:center;box-shadow:0 5px 18px #09222244}.modal-layer{position:absolute;inset:0;z-index:20;display:grid;place-items:center;background:#0a1f2888;backdrop-filter:blur(7px)}.modal-card{padding:32px;text-align:center;display:grid;gap:12px}.modal-card h2{margin:0 0 15px;font-size:30px}.game-dialog{width:min(600px,calc(100vw - 24px));max-height:calc(100dvh - 28px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;padding:25px;color:#f0ecd4;overscroll-behavior:contain}.game-dialog::backdrop{background:#081c25b5;backdrop-filter:blur(7px)}.game-dialog>.close-button{float:right;margin-left:8px}.game-dialog h2{font-size:29px;margin:8px 0 20px}.game-dialog h3{font-size:19px;margin:10px 0}.game-dialog p{font-size:12px;line-height:1.8;color:#bccfbd}.shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.shop-grid article,.journal-card{background:#b4dfaf07;padding:12px;border:1px solid var(--border);border-radius:12px;margin-bottom:8px}.shop-grid article strong{font-size:12px}.shop-grid article button{width:100%}.inventory-summary{padding:12px;border:1px solid var(--border);border-radius:10px}.manual-grid{display:grid;gap:15px}.manual-grid strong{color:var(--gold)}.dialog-actions{display:flex;gap:10px;margin-top:20px}.game-dialog input{width:100%;border-radius:10px;border:1px solid var(--border);background:#1d3e32;padding:14px;font-size:16px}.expedition-stats{display:flex;flex-wrap:wrap;gap:14px;color:#eddea4;font-size:12px}.spoil-note{color:#e7b58e!important}.enemy-card{display:flex;gap:15px;padding:14px 0;border-bottom:1px solid var(--border);align-items:center}.enemy-card p{margin:5px 0}.enemy-card small{color:#e8d49c;font-size:11px}.atlas-portrait{display:block;flex:0 0 100px;height:100px;background:url(../art/characters-v3.png) no-repeat;background-size:800% 700%}.region-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.region-map article{padding:14px;border:1px solid var(--biome);border-radius:18px;background:linear-gradient(160deg,var(--biome),#193631)}.region-map p{font-size:12px;min-height:48px}@media(max-width:600px){.region-map{grid-template-columns:1fr}.region-map p{min-height:0}}.enemy-mite{background-position:0 100%}.enemy-brute{background-position:50% 100%}.enemy-spitter{background-position:100% 100%}.compact .brand-chip{display:none}.compact .topbar{left:10px;right:10px;top:calc(8px + env(safe-area-inset-top));gap:4px}.compact .resource-strip{gap:3px}.compact .resource-pill{padding:6px;gap:3px}.compact .resource-pill span{font-size:9px}.compact .resource-pill strong{font-size:11px}.compact .top-actions{gap:4px}.compact #save-button,.compact #audio-button,.compact #help-button{display:none}.compact .icon-button{width:44px;height:44px}.compact .player-status{left:10px;top:calc(61px + env(safe-area-inset-top));width:128px;font-size:9px;padding:5px 8px;border-radius:9px}.compact .utility-bar{right:10px;top:calc(56px + env(safe-area-inset-top));gap:4px}.compact .utility-bar button{padding:6px 9px;font-size:11px;min-width:44px}.compact .boss-meter{top:calc(109px + env(safe-area-inset-top));width:210px}.portrait .farm-panel,.portrait .companion-panel{border-radius:20px 20px 12px 12px}.portrait .panel-heading h2{font-size:18px}.portrait .companion-panel{gap:8px}.portrait .companion-info strong{font-size:17px;margin:5px 0}@media(max-width:380px){.compact .resource-pill{padding:5px 4px}.compact .player-status{width:111px}.compact .utility-bar button{padding:6px 7px}.play-actions{grid-template-columns:repeat(3,51px);gap:5px;right:12px}.game-dialog{padding:19px 14px}.enemy-card{gap:8px}.atlas-portrait{flex-basis:78px;height:78px}}@media(max-height:500px){.farm-panel .panel-description,.farm-panel .stat-list{display:none}.landing{padding:18px}.landing__seal,.landing__story{display:none}.landing h1{font-size:34px}.landing__features{margin:10px 0}.game-dialog{padding:18px}.toast-stack{top:150px}}:root{--gold: #ecd49c;--muted: #b8cbbd;--border: #dbc99438;--ease-out: cubic-bezier(.16, 1, .3, 1)}button{transition:background-color .18s,border-color .18s,box-shadow .18s,transform .16s var(--ease-out),opacity .16s}button:active:not(:disabled){transform:scale(.96)}@media(hover:hover){button:hover:not(:disabled){border-color:#f0dbacb5;box-shadow:0 0 20px #eed6a51a,inset 0 1px #fff2}}.glass-panel{background:radial-gradient(ellipse at 0 0,#73956a20,transparent 65%),linear-gradient(145deg,#213d36fa,#102c2cfa);border-color:#dac59052;box-shadow:0 18px 50px #04191c66,inset 0 0 0 3px #142c2826,inset 0 1px #f1dfb329}.landing{border-radius:34px 8px;border:1px solid #d9c48c99;padding-top:44px;background:radial-gradient(ellipse at 50% -10%,#b4bd7050,transparent 65%),linear-gradient(160deg,#173e39f2,#11282ef5);box-shadow:0 30px 100px #001d24bb,inset 0 0 0 7px #e9db9620,inset 0 0 0 8px #e9db961a}.landing__seal{border-radius:50%;box-shadow:0 0 30px #e9d89922,inset 0 0 20px #e9d89912}.landing h1{text-shadow:0 3px 0 #001a19,0 0 38px #f1d69a28}.landing__features{letter-spacing:.08em}.landing .primary-button{min-width:240px;min-height:52px}.primary-button,.action-button.accent{background:linear-gradient(145deg,#f7e6ba,#d1bf82 65%,#c3ab6e);box-shadow:inset 0 1px #fff9,0 3px #0d242545,0 5px 16px #efd69713}.topbar{padding:5px 7px;border-radius:16px;background:linear-gradient(90deg,#0d2b2ca6,#19362c6e,#0d2b2ca6);border:1px solid #ecd7a31a}.resource-pill{background:#142e2da8;border-radius:9px;box-shadow:inset 0 1px #dcdcb312}.resource-pill strong,.player-health-text{font-variant-numeric:tabular-nums}.brand-chip__mark{width:38px;text-align:center;border-radius:50%;background:#d6c08412}.health-track span,.quest-progress span,.boss-meter__track span,.stat-track span{transition:width .18s linear}.health-track span{background:linear-gradient(90deg,#72ae91,#d5e4a4);box-shadow:0 0 10px #b6e3af77}.utility-bar button{box-shadow:inset 0 1px #fff1,0 3px 8px #021a1b44}.utility-bar .awakening-entry{background:linear-gradient(140deg,#675b37f5,#3a523aef)}.journey-ribbon{position:absolute;top:calc(115px + env(safe-area-inset-top));left:20px;right:20px;display:flex;align-items:center;gap:9px;height:27px;color:#deead6;font-size:11px;background:linear-gradient(90deg,#0e2d2edf,#143832bf,#10302d22);border-left:2px solid #cdbc7e;padding-left:9px;border-radius:0 8px 8px 0}.journey-ribbon>span:nth-child(2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.ribbon-mark{color:#f1dfa6;font-size:18px}.journey-ribbon .action-button{min-height:27px;padding:3px 12px;border-radius:7px;font-size:10px;border-color:#d5c48b4a}.farm-panel,.companion-panel{animation:panel-unfold .26s var(--ease-out);border-radius:21px 6px}.panel-heading{padding-bottom:7px;border-bottom:1px solid #e1cf9627}.panel-heading h2{color:#f1e6bb;letter-spacing:.035em}.growth-stages{display:flex;justify-content:space-between;gap:0;padding:5px 0 3px;flex-shrink:0}.growth-stages>span{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;color:#91aa9c;font-size:9px}.growth-stages>span:not(:last-child):after{content:"";position:absolute;width:calc(100% - 14px);height:1px;left:calc(50% + 7px);top:4px;background:#e0d5a726}.growth-stages i{width:8px;height:8px;border:1px solid #789888;border-radius:50%;background:#213f33}.growth-stages .reached{color:#d0dfb5}.growth-stages .reached i{background:#adc68c;border-color:#d4d9a4}.growth-stages .current i{box-shadow:0 0 0 3px #eadb9930,0 0 10px #eadb9955;background:#f0dc9d}.stat-list{background:#091e1d38;padding:8px;border:1px solid #e8dfad13;border-radius:9px}.seed-bar{gap:7px;padding:4px 0 7px;scrollbar-width:thin;scrollbar-color:#a8b78055 transparent}.seed-card{flex-basis:70px;display:grid;justify-items:center;gap:4px;border-radius:12px 5px;padding:7px 6px}.seed-card__icon{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;color:#183c2b;font-family:serif;box-shadow:0 2px 7px #021d1a66}.seed-card.active{background:linear-gradient(155deg,#6e7650,#3c5941);box-shadow:inset 0 0 0 2px #dfd69320}.farm-actions [data-action=farm-awaken]:not(:disabled){position:relative;overflow:hidden}.farm-actions [data-action=farm-awaken]:not(:disabled):after{content:"";position:absolute;inset:-100% 0;background:linear-gradient(105deg,transparent 30%,#fff7 48%,transparent 65%);transform:translate(-110%);animation:awaken-sheen 4.8s ease-in-out infinite;pointer-events:none}.companion-info{border-bottom:1px solid #e4d29d25;padding-bottom:12px}.command-button.active{background:linear-gradient(145deg,#7a7650,#405d43)}.all-command{background:#132f2a70;padding:7px;border-radius:9px;min-height:44px}.companion-roster{margin-top:auto;padding-top:8px;border-top:1px solid #e2d09922}.play-actions{gap:7px;grid-template-columns:repeat(3,56px)}.play-actions button{position:relative;isolation:isolate;overflow:hidden;border-radius:13px;min-height:47px;box-shadow:inset 0 1px #e9dcaa33,0 5px 18px #071c2866}.play-actions button:before{content:"";position:absolute;bottom:0;left:0;right:0;height:var(--cooldown, 0%);background:#071e2f80;z-index:-1;transition:height .12s linear}.play-actions button.cooling{color:#afcabd;opacity:.8}.play-actions .attack-button{border-radius:28px 12px;font-family:serif;font-size:17px;text-shadow:0 1px #fff6}#skill-button{background:radial-gradient(ellipse at 50% 0,#648b7166,transparent 70%),#204d43f5}#attack-mode-button{font-size:11px;color:#d0c2f4;border-color:#d6c3fa70}#attack-mode-button[data-mode=crescent]{color:#ffe1ab;border-color:#f0bb7490;background:#58462eea}.hud:not(.compact) .play-actions{grid-template-columns:repeat(7,58px)}.hud:not(.compact) .controls-hint{bottom:20px;max-width:calc(100% - 510px);flex-wrap:wrap;gap:6px 12px;border:0;background:#0e302540;padding:6px 10px}.compact:not(.portrait) .play-actions{grid-template-columns:repeat(4,50px)}.joystick{box-shadow:inset 0 0 0 8px #dae1bc08,inset 0 0 0 9px #dae1bc1b,inset 0 0 22px #d0dda41a;background:radial-gradient(circle,#7090794d,#0c2d2866)}.joystick span{box-shadow:0 4px 12px #001f2466,inset 0 1px #fff7;background:radial-gradient(circle at 35% 25%,#d8e3b4d9,#819a78b3)}.boss-meter{top:calc(149px + env(safe-area-inset-top));width:min(480px,calc(100% - 40px));border-radius:10px 3px;background:linear-gradient(100deg,#2d2a32f5,#513731ec,#2d2a32f5);border-color:#e6b08b77;box-shadow:0 5px 15px #04172144}.boss-meter__track{height:6px;background:#110f1b70}.boss-meter__track span{background:linear-gradient(90deg,#ba765a,#f4c99f)}.boss-meter p{margin:5px 0 0;color:#e7ccb5;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toast-stack{top:auto;bottom:calc(190px + env(safe-area-inset-bottom));width:min(380px,88vw)}.toast{background:linear-gradient(105deg,#193b32f2,#304935f2);border-radius:8px 16px;border-left:3px solid #ddcd8e;text-align:left;font-size:11px;line-height:1.5;animation:notice-enter .22s var(--ease-out)}.game-dialog{width:min(740px,calc(100vw - 24px));border-radius:26px 7px;background:radial-gradient(ellipse at 90% 0,#acc78918,transparent 55%),#15342ffa}.game-dialog[open]{animation:journal-open .28s var(--ease-out)}.game-dialog h2{color:#f2e2b8;letter-spacing:.045em;margin-bottom:15px}.game-dialog>.close-button{position:sticky;top:0;z-index:2}.activity-tabs{display:flex;gap:6px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #d8c99130}.activity-tabs button{flex:1;min-height:44px;border:1px solid transparent;border-radius:8px;background:#112d2780;font-size:12px;color:#b9cbb8}.activity-tabs button.active{color:#f3dda1;border-color:#dccc8950;background:#6b704233;box-shadow:inset 0 -2px #dcc784}.shop-grid>.action-button{text-align:left;padding:12px}.shop-grid article,.journal-card{border-radius:15px 5px;background:linear-gradient(145deg,#a4c18e0c,#061d191c)}.shop-grid article .action-button{margin-top:5px}.field-grid{gap:10px}.field-grid>.action-button{position:relative;min-height:102px;padding:14px 12px 12px;border-radius:14px 5px;overflow:hidden}.field-grid strong{display:block;padding-right:18px;font-size:12px}.field-number{position:absolute;right:10px;top:8px;font:italic 24px Georgia,serif;opacity:.3}.field-grid small{margin:9px 0;line-height:1.6}.field-progress{display:block;height:3px;width:100%;border-radius:3px;background:#10362940;overflow:hidden}.field-progress i{display:block;height:100%;background:#bbd48e;border-radius:inherit}.field-grid .accent .field-progress i{background:#54734a}.expedition-intro{padding:8px 0 4px}.expedition-intro h3{font-size:22px;color:#efe1b8}.expedition-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0 20px}.expedition-stats>span{background:#0c292577;border:1px solid #dfc98d26;border-radius:12px 3px;padding:12px}.expedition-stats small{display:block;font-size:10px;color:#a7c0ac;margin-bottom:5px}.expedition-stats strong{font:20px Georgia,serif;color:#efe0af}.destination-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.destination-card{overflow:hidden;border:1px solid #c9b77b59;border-radius:23px 6px 18px;background:#0d292799;box-shadow:0 8px 20px #08231d44}.destination-art{position:relative;isolation:isolate;height:152px;overflow:hidden;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 60%,#dce6a738,transparent 58%),linear-gradient(150deg,#305d4d,#5f7650 60%,#203c3b)}.destination-art:before,.destination-art:after{content:"";position:absolute;width:180px;height:90px;border-radius:50%;background:#173e3a;transform:rotate(-25deg);left:-70px;bottom:-25px;z-index:-1;box-shadow:0 -2px #aac08a55,12px -15px #72906533}.destination-art:after{left:auto;right:-70px;transform:rotate(25deg)}.destination-ember-quarry .destination-art{background:radial-gradient(ellipse at 50% 60%,#ffe0a140,transparent 60%),linear-gradient(140deg,#493b3e,#a1764b 70%,#593d36)}.destination-ember-quarry .destination-art:before,.destination-ember-quarry .destination-art:after{background:#463630;border-radius:4px;transform:rotate(-35deg)}.destination-art>strong{color:#f5e0a9;font:54px KaiTi,serif;text-shadow:0 0 28px #f7db9977;transform:rotate(-6deg)}.destination-number{position:absolute;left:16px;top:12px;color:#e8ddb799;font:italic 18px Georgia,serif}.destination-orbit{position:absolute;width:108px;height:108px;border:1px solid #e5d09b66;border-radius:50%;box-shadow:0 0 0 8px #ebd49a0d,0 0 0 9px #ebd49a26,0 0 45px #dacba02b}.destination-orbit:after{content:"✦";position:absolute;top:-9px;left:46px;color:#ead8a3}.destination-copy{padding:17px}.destination-copy>p{min-height:64px;margin-bottom:14px}.destination-copy .eyebrow{font-size:9px;min-height:auto;color:#d5c995}.destination-copy h3{color:#f1dfb0;font-size:25px}.destination-copy>.action-button{width:100%;min-height:48px}.destination-boss{border-top:1px solid #e0cd9130;padding:12px 0 2px;margin-bottom:12px}.destination-boss>small{color:#a9bba5;font-size:10px}.destination-boss>strong{display:block;color:#e0cba5;margin-top:5px;font-size:13px}.destination-boss p{font-size:11px;min-height:58px}.preparation-note{padding:15px;margin-top:18px;border-left:2px solid #cebf83;background:#96b58e0a}.preparation-note>strong{font-size:12px;color:#dacb96}.preparation-note p{margin-bottom:0}.journey-active{border:1px solid #dec99545;padding:17px;border-radius:18px 5px;background:#0b25244d}.objective-list{margin:16px 0}.objective-list>div{display:flex;align-items:center;gap:10px;min-height:54px;border-bottom:1px solid #d6cd9520}.objective-list>div>span{font:italic 18px Georgia,serif;color:#dccd95}.objective-list strong{font-size:12px;flex:1}.objective-list button{min-height:38px}.result-message{color:#eddfac!important;padding:14px;border:1px solid #dfd5a26b;background:#dac88812;border-radius:12px}.travel-transition{position:absolute;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:radial-gradient(ellipse at center,#244e43f2,#091e28fa);pointer-events:auto;animation:travel-veil 1.25s ease-in-out both}.travel-transition strong{font:34px KaiTi,serif;color:#f1dfaf;letter-spacing:.08em}.travel-transition>span{font-size:12px;color:#b2c8b6;padding:0 20px;text-align:center}.travel-sigil{width:86px;height:86px;display:grid;place-items:center;border:1px solid #d3c79588;border-radius:50%;color:#f2dda3;font-size:32px;box-shadow:0 0 0 9px #d8d29a13,0 0 45px #e6dd8b28;animation:sigil-unfold 1.25s var(--ease-out)}.compact .topbar{padding:0;background:transparent;border:0}.compact .journey-ribbon{top:calc(105px + env(safe-area-inset-top));left:10px;right:10px;font-size:10px;height:26px;gap:5px}.compact .boss-meter{top:calc(136px + env(safe-area-inset-top));width:calc(100% - 24px)}.compact:not(.portrait).in-battle .journey-ribbon{display:none}.compact:not(.portrait).in-battle .boss-meter{top:calc(106px + env(safe-area-inset-top))}.hud:not([data-mode=play]) .journey-ribbon,.hud:not([data-mode=play]) .boss-meter{display:none}.compact:not(.portrait) .play-actions .attack-button{grid-row:span 2}.compact:not(.portrait) .play-actions button{min-height:44px}.compact:not(.portrait) .joystick{bottom:calc(9px + env(safe-area-inset-bottom));width:104px;height:104px}.compact:not(.portrait) .joystick span{left:29px;top:29px}.portrait .growth-stages{padding-top:1px}.portrait .farm-panel{gap:5px}.portrait .seed-card__icon{width:23px;height:23px}@media(max-width:600px){.destination-grid{grid-template-columns:1fr}.destination-card{display:grid;grid-template-columns:86px 1fr;border-radius:16px 5px}.destination-art{height:100%;min-height:260px}.destination-art>strong{font-size:39px}.destination-orbit{width:74px;height:74px}.destination-orbit:after{left:28px}.destination-copy{padding:13px}.destination-copy h3{font-size:22px}.destination-copy>p,.destination-boss p{min-height:0}.expedition-stats>span{padding:10px}.expedition-stats strong{font-size:18px}.game-dialog{padding:19px 15px}.field-grid>.action-button{min-height:108px}}@media(max-width:360px){.play-actions{grid-template-columns:repeat(3,48px);gap:5px;right:9px}.joystick{left:12px;width:104px;height:104px}.joystick span{left:29px;top:29px}.destination-card{grid-template-columns:65px 1fr}.destination-orbit{width:57px;height:57px}.destination-orbit:after{left:20px}.journey-ribbon .action-button{padding:3px 6px}}@media(max-height:500px){.growth-stages{display:none}.toast-stack{top:auto;bottom:125px}.game-dialog{padding-top:16px}}@keyframes panel-unfold{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}@keyframes journal-open{0%{opacity:0;translate:0 16px;scale:.985}to{opacity:1;translate:0 0;scale:1}}@keyframes notice-enter{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes awaken-sheen{0%,65%{transform:translate(-110%)}90%,to{transform:translate(110%)}}@keyframes travel-veil{0%{opacity:0}16%,73%{opacity:1}to{opacity:0}}@keyframes sigil-unfold{0%{transform:rotate(-40deg) scale(.65);opacity:0}35%,to{transform:rotate(0) scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
