.moon-card{width:min(520px,94vw);max-width:520px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;border-radius:22px;background:var(--bg-1);color:var(--text-1);pointer-events:auto}.moon-card header,.moon-card footer{position:sticky;display:flex;align-items:center;justify-content:space-between;padding:16px 22px;background:var(--bg-1);flex:none;gap:12px}.moon-card header{top:0}.moon-card footer{bottom:0;justify-content:center}.moon-content{overflow-y:auto;padding:16px 22px 24px}.moon-content p{line-height:1.7}.moon-content input{display:block;width:100%;box-sizing:border-box;min-height:48px;margin:12px 0;padding:10px;background:var(--bg-2);color:var(--text-1);font:inherit;letter-spacing:.4em;border-radius:12px}.moon-code{display:block;font-size:42px;letter-spacing:.35em;text-align:center;color:var(--text-2);padding:18px}.moon-stars{text-align:center;font-size:32px;color:var(--text-2);background:var(--bg-2);border-radius:14px;padding:16px}@media (max-width: 600px){#moon-layer{align-items:flex-end}.moon-card{width:100%;max-width:100%;border-radius:22px 22px 0 0;padding-bottom:env(safe-area-inset-bottom)}}#moon-stats{margin:4px 0;font-size:.75rem;line-height:1.5;color:var(--text-1)}.world-active:has(.moon-active) .journey-hud{display:none}#moon-goal{margin:4px 0;font-size:.75rem;line-height:1.5;color:var(--text-2)}html,html[data-theme=light]{--bg-1: #fff6e6;--bg-2: #fffdf7;--bg-3: #ffe8b5;--bg-4: #ffd166;--bg-5: #e9f6ff;--bg-6: #2b211a;--text-1: #3a2d23;--text-2: #705f4f;--text-3: #a5927e;--text-4: #4a3206;--text-5: #c0392b;--text-6: #0f7b6c}html[data-theme=dark]{--bg-1: #14171f;--bg-2: #202633;--bg-3: #2b3445;--bg-4: #ffcf5c;--bg-5: #263c4a;--bg-6: #090b0f;--text-1: #f7f0e4;--text-2: #cbbfae;--text-3: #938879;--text-4: #2a1e03;--text-5: #ff8b78;--text-6: #6ee7b7}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0;overflow:hidden;background:var(--bg-1);color:var(--text-1);font-family:Nunito,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent}button,select,input{font:inherit;color:inherit}button{border:0;background:none;cursor:pointer}#app,#game-canvas,#ui{position:fixed;inset:0}#game-canvas{width:100%;height:100%;display:block;background:var(--bg-1);touch-action:none;user-select:none;-webkit-user-select:none}#ui{pointer-events:none;overflow:hidden;z-index:1}.theme-toggle{position:fixed;top:calc(env(safe-area-inset-top) + 14px);right:calc(env(safe-area-inset-right) + 14px);width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:800;color:var(--text-1);background:color-mix(in srgb,var(--bg-2) 88%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 14%,transparent);box-shadow:0 6px 18px color-mix(in srgb,var(--bg-6) 18%,transparent);pointer-events:auto;z-index:70;transition:transform .15s ease}.theme-toggle:active{transform:scale(.92)}.screen{position:absolute;inset:0;display:none}.menu-screen.is-active{display:flex;align-items:center;justify-content:center;padding:calc(env(safe-area-inset-top) + 24px) calc(env(safe-area-inset-right) + 20px) calc(env(safe-area-inset-bottom) + 24px) calc(env(safe-area-inset-left) + 20px)}.menu-card{width:min(92vw,540px);max-height:85vh;overflow-y:auto;scrollbar-width:none;padding:clamp(24px,5vw,44px) clamp(22px,5vw,46px);border-radius:34px;text-align:center;background:color-mix(in srgb,var(--bg-2) 92%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 10%,transparent);box-shadow:0 24px 60px color-mix(in srgb,var(--bg-6) 26%,transparent);animation:rise .45s cubic-bezier(.2,.9,.3,1.2)}.menu-card::-webkit-scrollbar{display:none}.logo-lockup{display:flex;flex-direction:column;align-items:center;gap:14px}.egg-mark{position:relative;display:block;width:72px;height:90px;border-radius:50% 50% 46% 46%/56% 56% 44% 44%;background:var(--bg-4);border:3px solid color-mix(in srgb,var(--text-1) 12%,transparent);box-shadow:inset -9px -12px color-mix(in srgb,var(--text-3) 16%,transparent),0 12px 24px color-mix(in srgb,var(--bg-6) 20%,transparent);animation:egg-bob 2.6s ease-in-out infinite}.egg-mark i{position:absolute;top:33px;width:9px;height:13px;border-radius:50%;background:var(--text-4)}.egg-mark i:nth-child(1){left:19px}.egg-mark i:nth-child(2){right:19px}.egg-mark:after{content:"";position:absolute;left:50%;top:52px;width:17px;height:9px;transform:translate(-50%);border-bottom:3px solid var(--text-4);border-radius:0 0 12px 12px}.game-title{margin:0;font-size:clamp(2.4rem,8vw,3.9rem);line-height:1.05;letter-spacing:.06em;font-weight:900;color:var(--text-1);text-shadow:3px 3px 0 color-mix(in srgb,var(--bg-3) 90%,transparent)}.game-subtitle{margin:10px 0 26px;font-size:clamp(.95rem,2.6vw,1.12rem);font-weight:700;color:var(--text-2);letter-spacing:.04em}.btn{pointer-events:auto;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 22px;border-radius:999px;font-weight:800;font-size:1rem;letter-spacing:.02em;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.btn:focus-visible,.icon-btn:focus-visible,.action-btn:focus-visible,.theme-toggle:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--text-6) 65%,transparent);outline-offset:2px}.btn.primary{background:var(--bg-4);color:var(--text-4);box-shadow:0 6px color-mix(in srgb,var(--text-1) 24%,transparent),0 14px 26px color-mix(in srgb,var(--bg-6) 20%,transparent)}.btn.primary:hover{filter:brightness(1.04)}.btn.primary:active{transform:translateY(4px);box-shadow:0 2px color-mix(in srgb,var(--text-1) 24%,transparent),0 6px 14px color-mix(in srgb,var(--bg-6) 16%,transparent)}.btn.ghost{background:color-mix(in srgb,var(--bg-2) 70%,transparent);color:var(--text-1);border:2px solid color-mix(in srgb,var(--text-1) 14%,transparent)}.btn.danger{background:color-mix(in srgb,var(--bg-2) 70%,transparent);color:var(--text-5);border:2px solid color-mix(in srgb,var(--text-5) 34%,transparent)}.btn.big{width:100%;min-height:62px;font-size:clamp(1.15rem,3.4vw,1.5rem);letter-spacing:.08em}.menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.menu-credits{margin:22px 0 0;font-size:.78rem;font-weight:600;color:var(--text-3);letter-spacing:.02em}.hud{position:absolute;inset:0;pointer-events:none;z-index:20}.hud-top{position:absolute;top:0;left:0;right:0;display:flex;align-items:flex-start;gap:10px;padding:calc(env(safe-area-inset-top) + 14px) calc(env(safe-area-inset-right) + 74px) 0 calc(env(safe-area-inset-left) + 14px)}.hud-pills{display:flex;gap:8px;flex-wrap:wrap;pointer-events:none}.hud-pill{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:7px 14px;border-radius:999px;font-weight:800;font-size:.92rem;color:var(--text-1);background:color-mix(in srgb,var(--bg-2) 84%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 10%,transparent);box-shadow:0 4px 14px color-mix(in srgb,var(--bg-6) 14%,transparent);white-space:nowrap}.hud-pill .dot{width:5px;height:5px;border-radius:50%;background:color-mix(in srgb,var(--text-2) 60%,transparent)}.timer-pill{font-variant-numeric:tabular-nums;letter-spacing:.04em;background:color-mix(in srgb,var(--bg-4) 88%,transparent);color:var(--text-4);border-color:color-mix(in srgb,var(--text-1) 12%,transparent);min-width:74px;justify-content:center}.hud-objective{flex:1;max-width:42vw;margin:0 auto;padding:8px 16px;border-radius:999px;text-align:center;font-weight:800;font-size:.86rem;color:var(--text-2);background:color-mix(in srgb,var(--bg-2) 62%,transparent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{pointer-events:auto;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font-size:.95rem;font-weight:900;color:var(--text-1);background:color-mix(in srgb,var(--bg-2) 88%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 14%,transparent);box-shadow:0 4px 14px color-mix(in srgb,var(--bg-6) 16%,transparent);transition:transform .12s ease}.icon-btn:active{transform:scale(.92)}.pause-btn{margin-left:auto}.hud-side{position:absolute;top:calc(env(safe-area-inset-top) + 74px);left:calc(env(safe-area-inset-left) + 14px);display:flex;flex-direction:column;align-items:flex-start;gap:7px;max-width:min(240px,38vw);pointer-events:none}.stat-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-weight:800;font-size:.82rem;color:var(--text-1);background:color-mix(in srgb,var(--bg-2) 78%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 8%,transparent);font-variant-numeric:tabular-nums}.stat-icon{color:var(--text-4)}.roster{margin-top:2px;display:flex;flex-direction:column;gap:3px;padding:7px 8px;border-radius:16px;background:color-mix(in srgb,var(--bg-2) 62%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 7%,transparent);max-height:36vh;overflow:hidden;min-width:150px}.roster-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:3px 7px;border-radius:9px;font-size:.78rem;font-weight:700;color:var(--text-2)}.roster-row.human{background:color-mix(in srgb,var(--bg-4) 30%,transparent);color:var(--text-1)}.roster-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:116px}.roster-state{font-size:.68rem;font-weight:800;color:var(--text-3);white-space:nowrap}.roster-state.state-qualified{color:var(--text-6)}.roster-state.state-out{color:var(--text-5)}.hud-notice{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom) + 118px);transform:translate(-50%);padding:10px 20px;border-radius:999px;font-weight:800;font-size:.9rem;text-align:center;color:var(--text-1);background:color-mix(in srgb,var(--bg-2) 90%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 12%,transparent);box-shadow:0 10px 26px color-mix(in srgb,var(--bg-6) 20%,transparent);max-width:90vw;animation:rise .25s ease-out}.hud-notice[data-kind=waiting]{color:var(--text-6)}.hud-notice[data-kind=out]{color:var(--text-5)}.mobile-controls{position:absolute;inset:0;pointer-events:none}.action-buttons{position:absolute;right:calc(env(safe-area-inset-right) + 18px);bottom:calc(env(safe-area-inset-bottom) + 26px);display:flex;align-items:flex-end;gap:14px;pointer-events:none}.action-btn{pointer-events:auto;position:relative;width:78px;height:78px;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:900;color:var(--text-1);background:color-mix(in srgb,var(--bg-2) 92%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 16%,transparent);box-shadow:0 8px 22px color-mix(in srgb,var(--bg-6) 22%,transparent);touch-action:none;user-select:none;-webkit-user-select:none}.action-btn.jump{width:88px;height:88px;background:var(--bg-4);color:var(--text-4);border-color:color-mix(in srgb,var(--text-1) 14%,transparent);font-size:34px}.action-btn:active{transform:scale(.94)}.action-btn.roll:after{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(transparent var(--cd, 360deg),color-mix(in srgb,var(--bg-6) 34%,transparent) 0);pointer-events:none}.action-btn.cooling{filter:saturate(.55)}.action-btn .glyph{position:relative;z-index:1}.joystick{position:fixed;width:128px;height:128px;transform:translate(-50%,-50%);pointer-events:none;z-index:5}.joystick-base{position:absolute;inset:0;border-radius:50%;background:color-mix(in srgb,var(--bg-2) 22%,transparent);border:3px solid color-mix(in srgb,var(--bg-2) 65%,transparent)}.joystick-knob{position:absolute;left:50%;top:50%;width:58px;height:58px;border-radius:50%;background:var(--bg-4);border:3px solid color-mix(in srgb,var(--text-1) 12%,transparent);box-shadow:0 6px 16px color-mix(in srgb,var(--bg-6) 25%,transparent);transform:translate(-50%,-50%)}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:30}.intro-overlay{background:color-mix(in srgb,var(--bg-6) 22%,transparent);transition:opacity .3s ease}.intro-overlay.leave{opacity:0}.intro-card{width:min(88vw,480px);padding:26px 30px;border-radius:28px;text-align:center;background:color-mix(in srgb,var(--bg-2) 94%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 12%,transparent);box-shadow:0 24px 60px color-mix(in srgb,var(--bg-6) 30%,transparent);animation:pop .35s cubic-bezier(.2,.9,.3,1.25)}.intro-round{display:inline-block;padding:5px 14px;border-radius:999px;background:var(--bg-4);color:var(--text-4);font-weight:900;font-size:.82rem;letter-spacing:.04em}.intro-card h2{margin:14px 0 6px;font-size:clamp(1.6rem,6vw,2.2rem);font-weight:900;letter-spacing:.04em}.intro-card p{margin:0;font-size:.94rem;font-weight:700;color:var(--text-2);line-height:1.5}.countdown-overlay{background:color-mix(in srgb,var(--bg-6) 12%,transparent)}.countdown-value{font-size:clamp(7rem,24vw,12rem);font-weight:900;line-height:1;color:var(--bg-4);text-shadow:7px 7px 0 color-mix(in srgb,var(--text-1) 18%,transparent),0 18px 40px color-mix(in srgb,var(--bg-6) 30%,transparent);letter-spacing:.04em}.countdown-value.go{font-size:clamp(5rem,18vw,9rem);color:var(--text-6)}.countdown-value.pulse{animation:countPulse .45s cubic-bezier(.2,.9,.3,1.4)}.toast{position:absolute;left:50%;top:calc(env(safe-area-inset-top) + 86px);transform:translate(-50%);padding:10px 20px;border-radius:999px;background:var(--bg-4);color:var(--text-4);font-weight:800;font-size:.9rem;box-shadow:0 10px 24px color-mix(in srgb,var(--bg-6) 24%,transparent);z-index:45;pointer-events:none;opacity:0}.toast.show{animation:toastIn .28s ease-out forwards}.modal-layer{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:calc(env(safe-area-inset-top) + 16px) calc(env(safe-area-inset-right) + 14px) calc(env(safe-area-inset-bottom) + 16px) calc(env(safe-area-inset-left) + 14px);background:color-mix(in srgb,var(--bg-6) 48%,transparent);z-index:60;pointer-events:auto}.modal-card{width:min(94vw,640px);max-height:85vh;display:flex;flex-direction:column;overflow:hidden;border-radius:26px;background:var(--bg-2);color:var(--text-1);border:2px solid color-mix(in srgb,var(--text-1) 12%,transparent);box-shadow:0 30px 80px color-mix(in srgb,var(--bg-6) 42%,transparent);animation:pop .3s cubic-bezier(.2,.9,.3,1.2)}.modal-head{flex-shrink:0;position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:var(--bg-2);border-bottom:2px solid color-mix(in srgb,var(--text-1) 8%,transparent)}.modal-head h2{margin:0;font-size:1.34rem;font-weight:900;letter-spacing:.03em}.modal-close{width:44px;height:44px;min-width:44px;min-height:44px;font-size:.9rem}.modal-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 20px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-3) 55%,transparent) transparent}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-thumb{border-radius:999px;background:color-mix(in srgb,var(--text-3) 55%,transparent)}.modal-foot{flex-shrink:0;position:sticky;bottom:0;z-index:2;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:14px 20px calc(14px + env(safe-area-inset-bottom)/5);background:var(--bg-2);border-top:2px solid color-mix(in srgb,var(--text-1) 8%,transparent)}.pause-body{display:flex;flex-direction:column;gap:12px;padding-top:24px;padding-bottom:26px}.quit-body{padding-top:22px;padding-bottom:22px}.quit-text{margin:0;font-size:.98rem;font-weight:700;line-height:1.6;color:var(--text-2);text-align:center}.pause-body .btn{width:100%;min-height:54px;font-size:1.05rem}.settings-body{display:flex;flex-direction:column;gap:4px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 2px;border-bottom:2px solid color-mix(in srgb,var(--text-1) 7%,transparent);font-weight:800;font-size:.92rem}.setting-row:last-child{border-bottom:0}.setting-row select{min-height:44px;pointer-events:auto;min-width:132px;padding:8px 12px;border-radius:12px;background:var(--bg-3);color:var(--text-1);border:2px solid color-mix(in srgb,var(--text-1) 12%,transparent);font-weight:700}.setting-value{display:flex;align-items:center;gap:10px}.setting-value input[type=range]{pointer-events:auto;width:min(180px,34vw);accent-color:var(--bg-4)}.setting-value span{min-width:52px;text-align:right;color:var(--text-2);font-variant-numeric:tabular-nums}.key-button{min-height:44px;pointer-events:auto;min-width:122px;padding:8px 14px;border-radius:12px;background:var(--bg-3);color:var(--text-1);border:2px solid color-mix(in srgb,var(--text-1) 12%,transparent);font-weight:800;font-size:.9rem;transition:background .15s ease,color .15s ease}.key-button.capturing{background:var(--bg-4);color:var(--text-4)}input[type=checkbox].toggle{pointer-events:auto;width:48px;height:28px;accent-color:var(--bg-4)}.help-body{display:flex;flex-direction:column;gap:10px}.help-row{display:flex;flex-direction:column;gap:3px;padding:11px 14px;border-radius:14px;background:color-mix(in srgb,var(--bg-3) 45%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 6%,transparent)}.help-title{font-weight:900;font-size:.9rem;color:var(--text-1)}.help-desc{font-weight:600;font-size:.82rem;color:var(--text-2);line-height:1.45}.results-body{display:flex;flex-direction:column;gap:14px}.results-subtitle{margin:0;text-align:center;font-weight:900;font-size:1.1rem;letter-spacing:.02em;color:var(--text-1)}.result-list{display:flex;flex-direction:column;gap:5px}.result-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto 56px;align-items:center;gap:10px;padding:8px 12px;border-radius:12px;background:color-mix(in srgb,var(--bg-3) 40%,transparent);font-weight:700;font-size:.86rem;color:var(--text-2)}.result-row.human{background:color-mix(in srgb,var(--bg-4) 26%,transparent);color:var(--text-1);font-weight:900}.result-row.champion{background:color-mix(in srgb,var(--bg-4) 46%,transparent)}.result-rank{font-weight:900;color:var(--text-3);font-variant-numeric:tabular-nums}.result-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-status{font-size:.7rem;font-weight:900;padding:3px 9px;border-radius:999px;background:color-mix(in srgb,var(--bg-2) 65%,transparent);color:var(--text-3);white-space:nowrap}.result-status.status-qualified{color:var(--text-6)}.result-status.status-eliminated{color:var(--text-5)}.result-status.status-winner{color:var(--text-4);background:var(--bg-4)}.result-score{text-align:right;font-weight:800;color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap}.champion-block{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 0 14px;text-align:center}.champion-badge{display:grid;place-items:center;width:74px;height:74px;border-radius:50%;background:var(--bg-4);color:var(--text-4);font-size:38px;box-shadow:0 10px 24px color-mix(in srgb,var(--bg-6) 22%,transparent);animation:egg-bob 2.2s ease-in-out infinite}.champion-block.out .champion-badge{background:var(--bg-5);color:var(--text-5)}.champion-label{margin-top:6px;font-size:.78rem;font-weight:900;letter-spacing:.18em;color:var(--text-3)}.champion-name{font-size:clamp(1.5rem,6vw,2rem);font-weight:900;color:var(--text-1)}.champion-sub{font-weight:800;font-size:.92rem;color:var(--text-6)}.champion-rank{font-weight:700;font-size:.84rem;color:var(--text-2)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes egg-bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(2deg)}}@keyframes countPulse{0%{opacity:0;transform:scale(1.6)}to{opacity:1;transform:scale(1)}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}@media (max-width: 760px){.hud-objective,.roster{display:none}.hud-side{max-width:60vw}.hud-top{padding-right:calc(env(safe-area-inset-right) + 68px)}.game-title{letter-spacing:.03em}.menu-card{border-radius:28px}.modal-card{max-height:85vh}.result-row{grid-template-columns:24px minmax(0,1fr) auto 46px;gap:8px;font-size:.8rem}}@media (max-width: 460px){.hud-pill{font-size:.8rem;padding:6px 11px;min-height:34px}.timer-pill{min-width:64px}.action-btn{width:70px;height:70px}.action-btn.jump{width:80px;height:80px}.hud-notice{bottom:calc(env(safe-area-inset-bottom) + 108px);font-size:.8rem}}@media (max-height: 520px){.menu-card{padding:18px 22px}.egg-mark{width:52px;height:66px}.egg-mark i{top:24px;width:7px;height:10px}.egg-mark i:nth-child(1){left:13px}.egg-mark i:nth-child(2){right:13px}.egg-mark:after{top:38px;width:13px;height:7px}.game-title{font-size:clamp(1.9rem,6vw,2.8rem)}.game-subtitle{margin-bottom:16px}.btn.big{min-height:52px}.menu-credits{margin-top:14px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.action-btn.item{font-size:16px;width:82px;height:82px;background:var(--bg-5);color:var(--text-1)}.action-btn.item:disabled{opacity:.55}.desktop-controls #jump-btn,.desktop-controls #roll-btn{display:none}.item-hint{position:absolute;bottom:calc(env(safe-area-inset-bottom) + 130px);right:calc(env(safe-area-inset-right) + 18px);max-width:min(310px,80vw);padding:10px 14px;border-radius:14px;background:var(--bg-2);color:var(--text-1);font-size:13px}@media (max-width: 640px){.action-btn.item{position:absolute;right:12px;bottom:108px;width:76px;height:76px}.item-hint{bottom:calc(env(safe-area-inset-bottom) + 225px);max-width:240px}}.lobby-bar{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 26px);transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 22px;border-radius:22px;background:color-mix(in srgb,var(--bg-2) 92%,transparent);border:2px solid color-mix(in srgb,var(--text-1) 12%,transparent);box-shadow:0 12px 30px color-mix(in srgb,var(--bg-6) 22%,transparent);pointer-events:auto;text-align:center;z-index:40}.lobby-hint{margin:0;font-size:14px;font-weight:700;color:var(--text-2)}.lobby-bar .btn{min-width:208px}@media (max-width: 520px){.lobby-bar{width:calc(100% - 32px);bottom:calc(env(safe-area-inset-bottom) + 16px);padding:12px 16px}}.world-active .hud-pills,.world-active .hud-objective,.world-active .hud-side{display:none}.world-active .lobby-bar{top:calc(env(safe-area-inset-top) + 10px);left:calc(env(safe-area-inset-left) + 10px);bottom:auto;transform:none;width:214px;max-width:calc(100vw - 110px);padding:6px 9px;align-items:stretch;gap:3px;text-align:left;border-width:1px;border-radius:12px}.world-mini-head{display:flex;align-items:center;justify-content:space-between;gap:5px}.world-heading{font-size:12px;font-weight:800;color:var(--text-1);white-space:nowrap}#world-stats,#farm-stats,#world-notice,#adventure-stats{margin:0;font-size:11px;color:var(--text-2);line-height:1.4}#world-notice{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}#world-map summary{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-1);cursor:pointer;border-radius:8px;background:var(--bg-3)}#world-map[open] summary{background:var(--bg-4);color:var(--text-4)}.world-map-content{position:absolute;top:calc(100% + 6px);left:0;width:min(320px,calc(100vw - 30px));max-height:min(55vh,420px);overflow-y:auto;padding:12px;display:grid;gap:9px;border-radius:14px;background:var(--bg-2);color:var(--text-1);border:1px solid var(--text-3)}.world-travel{display:grid;grid-template-columns:1fr 1fr;gap:6px}.world-active .lobby-bar .btn{min-width:0;min-height:44px;padding:7px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.world-active .lobby-hint{font-size:11px}.world-active #world-action{min-height:44px;font-size:12px;margin-top:3px}.world-active #lobby-start{background:var(--bg-3);color:var(--text-1)}@media (max-width: 600px){.world-active .lobby-bar{width:190px;padding:4px 7px}.world-heading{font-size:11px}}@media (max-height: 520px){.world-active .lobby-bar{width:200px}.world-map-content{max-height:48vh}}.online-play{width:100%;margin-top:10px;background:var(--bg-5);color:var(--text-1)}.party-summary{min-height:44px;border:0;border-radius:8px;padding:6px;font:inherit;font-size:11px;font-weight:800;background:var(--bg-3);color:var(--text-1);cursor:pointer;pointer-events:auto}.party-card{max-height:85dvh;width:min(94vw,540px)}.party-body{display:flex;flex-direction:column;gap:14px;min-height:0}.party-body p{margin:0;line-height:1.55;color:var(--text-2);font-size:14px;overflow-wrap:anywhere}.party-body label{display:grid;gap:7px;font-size:14px;font-weight:800}.party-body input{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--text-3);border-radius:10px;font:inherit;font-size:16px;background:var(--bg-3);color:var(--text-1);box-sizing:border-box}#party-form,#party-connected{display:grid;gap:14px}.party-form-actions{display:flex;flex-wrap:wrap;gap:10px}.party-form-actions .btn{flex:1;min-height:44px}#party-status{color:var(--text-6);font-weight:800}#party-error,#party-leave-warning{color:var(--text-5)}#party-members{margin:0;padding:0;list-style:none;display:grid;gap:6px}#party-members li{padding:10px;border-radius:10px;background:var(--bg-3);color:var(--text-1);overflow-wrap:anywhere}#party-close{min-width:44px;min-height:44px}#party-layer{z-index:70}#party-layer [hidden]{display:none!important}.party-card .modal-foot,.party-card .modal-head{flex-shrink:0}.party-card .btn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-height: 520px){.party-card{max-height:85dvh}.party-body{gap:8px;padding:12px 16px}}.journey-hud{position:fixed;top:calc(env(safe-area-inset-top) + 14px);left:calc(env(safe-area-inset-left) + 240px);width:260px;padding:9px 12px;border-radius:16px;background:var(--bg-2);color:var(--text-1);border:1px solid var(--text-3);pointer-events:auto;display:grid;gap:4px;font-size:11px}.journey-open{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:0;font-weight:800;text-align:left}.journey-open span:last-child{color:var(--text-6)}.journey-hud progress,.quest-card progress{width:100%;height:7px;border:0;accent-color:var(--text-6);background:var(--bg-3);border-radius:10px;overflow:hidden}progress::-webkit-progress-bar{background:var(--bg-3)}progress::-webkit-progress-value{background:var(--text-6);border-radius:10px}#journey-rewards{color:var(--text-6)}#journey-waypoint{margin:3px 0 0;color:var(--text-4)}.journey-card{width:min(94vw,820px)}.journey-card .modal-head small{color:var(--text-6)}.journey-card .modal-close{min-width:44px;min-height:44px}.journey-tabs{display:flex;gap:5px;padding:10px 15px;flex:0 0 auto;background:var(--bg-2);overflow-x:auto}.journey-tabs .btn{min-height:44px;flex:1 0 auto;padding:8px 12px;font-size:13px}.journey-body{min-height:0}.journey-body p{color:var(--text-2);line-height:1.65}.journey-card .modal-foot{flex-shrink:0;align-items:center}.journey-card .modal-foot small{color:var(--text-2);font-size:11px;max-width:65%}#journey-map-canvas{width:100%;max-height:360px;object-fit:contain;border-radius:16px;background:var(--bg-5)}.region-grid,.title-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.region-card,.title-card{padding:14px;min-height:70px;border-radius:16px;background:var(--bg-5);color:var(--text-1);border:1px solid var(--text-3);display:grid;gap:8px;text-align:left}.region-card small,.title-card small{color:var(--text-2);font-size:12px}.title-card{background:var(--bg-1)}.title-card.unlocked{background:var(--bg-3)}.title-glyph{color:var(--text-4);font-size:28px}.title-card .btn{min-height:44px;font-size:12px}.quest-list{display:grid;gap:10px}.quest-card{display:flex;gap:12px;align-items:center;padding:14px;background:var(--bg-5);border-radius:14px;border:1px solid var(--text-3)}.quest-card>div{flex:1;display:grid;gap:7px;min-width:0}.quest-card strong{font-size:14px}.quest-card small{color:var(--text-2)}.quest-card .btn{min-height:44px;font-size:12px;padding:8px 12px}.quest-card.is-complete{opacity:.65}@media (max-width: 700px){.journey-hud{left:calc(env(safe-area-inset-left) + 12px);top:calc(env(safe-area-inset-top) + 14px);width:210px;padding:5px 10px}.world-active .lobby-bar{top:calc(env(safe-area-inset-top) + 145px)}.journey-open{font-size:11px;gap:6px}.journey-body{padding:12px}.region-grid,.title-grid{gap:7px}.title-card,.region-card{padding:10px}.journey-tabs{padding:8px}.journey-card .modal-head{padding:12px}.journey-card h2{font-size:18px}}@media (max-height: 520px){.journey-hud{left:230px;top:calc(env(safe-area-inset-top) + 8px);width:220px}.world-active .lobby-bar{top:calc(env(safe-area-inset-top) + 10px)}.journey-hud #journey-location,.journey-hud #journey-rewards{display:none}.journey-card .modal-head{padding:8px 14px}.journey-tabs{padding:4px 10px}.journey-card .modal-foot{padding:8px 12px}}#adventure-job{margin:0;color:var(--text-2);font-size:11px}#adventure-controls{display:grid;gap:4px}#adventure-controls[hidden]{display:none}#adventure-controls label{display:flex;align-items:center;gap:4px;color:var(--text-2);font-size:11px}#adventure-role{min-width:0;width:100%;min-height:44px;color:var(--text-1);background:var(--bg-2)}.action-btn.dive{font-size:16px}.mobile-controls:not(.desktop-controls) .action-buttons{display:grid;grid-template-columns:70px 80px;gap:10px;align-items:center}.mobile-controls:not(.desktop-controls) #dive-btn{grid-column:1;grid-row:1;width:70px;height:70px}.mobile-controls:not(.desktop-controls) #roll-btn{grid-column:2;grid-row:1;width:70px;height:70px;justify-self:center}.mobile-controls:not(.desktop-controls) #jump-btn{grid-column:2;grid-row:2;width:80px;height:80px}.mobile-controls:not(.desktop-controls) #item-btn{grid-column:1;grid-row:2;width:70px;height:70px}.action-btn.grab{font-size:14px}.mobile-controls:not(.desktop-controls) #grab-btn{grid-column:1 / 3;grid-row:3;width:150px;height:44px;justify-self:center}.adventure-active #world-stats,.adventure-active #farm-stats,.adventure-active #lobby-start,.adventure-active .lobby-hint{display:none}.farm-shortcuts{display:flex;flex-wrap:wrap;gap:4px}.farm-shortcuts .btn{min-height:44px;padding:5px 8px;font-size:12px}#farm-wallet,#farm-weather{margin:3px 0;font-size:12px;color:var(--text-2)}.farm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.farm-card{padding:12px;border:1px solid var(--text-2);border-radius:14px;background:var(--bg-2);color:var(--text-1)}.farm-card p{font-size:13px;color:var(--text-2)}.farm-card .btn{min-height:44px;width:100%;margin-top:6px;padding:8px 6px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.farm-card [aria-pressed=true]{border:2px solid var(--text-6)}.farm-feedback{color:var(--text-6);min-height:24px}.farm-panel{max-height:85vh}.farm-panel .modal-head,.farm-panel .modal-foot,.farm-panel .journey-tabs{flex-shrink:0}.farm-panel .modal-body{min-height:0;overflow-y:auto}@media (max-width: 360px){.farm-grid{grid-template-columns:1fr}}#farm-layer{z-index:80}@media (max-width: 600px) and (min-height: 521px){.world-active .lobby-bar{top:calc(env(safe-area-inset-top) + 10px)}.world-active .journey-hud{top:calc(env(safe-area-inset-top) + 180px);width:180px}.world-active:has(.adventure-active) .journey-hud{display:none}}.fullscreen-prompt{position:fixed;top:max(16px,env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:24;display:grid;justify-items:center;gap:6px;max-width:min(280px,75vw);pointer-events:auto}.world-active .fullscreen-prompt:not(.is-fullscreen){top:50%;transform:translate(-50%,-50%)}.fullscreen-prompt button{min-width:104px;min-height:44px;color:var(--text-1);background:var(--bg-1);touch-action:none;user-select:none}.fullscreen-prompt.is-fullscreen{left:auto;right:max(120px,env(safe-area-inset-right));transform:none}.fullscreen-prompt span{padding:8px 12px;border-radius:12px;color:var(--text-1);background:var(--bg-1);font-size:12px}#ui:has(.modal-layer:not([hidden])) .fullscreen-prompt,#ui:has(.party-layer:not([hidden])) .fullscreen-prompt{visibility:hidden}@media (max-width: 640px){.fullscreen-prompt.is-fullscreen{top:auto;bottom:max(14px,env(safe-area-inset-bottom));right:auto;left:50%;transform:translate(-50%)}}
