:root{color-scheme:dark;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,sans-serif;font-synthesis:none;--ink: #112638;--cream: #fff9df;--mist: #dff8f3;--sky: #8fdbe5;--teal: #49e1c4;--deep-teal: #197d85;--copper: #cf8a4c;--panel: rgba(13, 39, 54, .72);--panel-border: rgba(218, 255, 246, .24);--shadow: 0 22px 60px rgba(3, 23, 35, .26)}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#77bfd1;overscroll-behavior:none}body{touch-action:none;-webkit-user-select:none;user-select:none}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #fff1a8;outline-offset:3px}#game-shell,#game-canvas{position:fixed;inset:0;display:block;width:100%;height:100%}#game-shell{isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#76c6dc,#d4f1e9 56%,#ecdfb1)}#game-canvas{z-index:0;cursor:grab;outline:none}#game-canvas:active{cursor:grabbing}.screen{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));visibility:hidden;opacity:0;pointer-events:none;transition:opacity .42s ease,visibility .42s ease}.screen--visible{visibility:visible;opacity:1;pointer-events:auto}.glass-panel{border:1px solid var(--panel-border);background:linear-gradient(150deg,rgba(255,255,255,.13),transparent 35%),var(--panel);box-shadow:var(--shadow),inset 0 1px #ffffff29;-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15)}#loading-screen{overflow:hidden;background:radial-gradient(circle at 50% 34%,rgba(255,247,186,.88),transparent 23%),linear-gradient(180deg,#71c1da,#a7dfe5,#f3eac6)}.loading-backdrop{position:absolute;inset:0;overflow:hidden;pointer-events:none}.loading-backdrop:before,.loading-backdrop:after{content:"";position:absolute;left:50%;border-radius:50%;transform:translate(-50%)}.loading-backdrop:before{bottom:-18vw;width:min(920px,92vw);height:min(460px,46vw);background:radial-gradient(circle at 48% 16%,#77a765 0 8%,transparent 8.6%),radial-gradient(ellipse at 50% 22%,#6b8754 0 28%,transparent 28.5%),linear-gradient(165deg,transparent 38%,#535a4d 39% 50%,#2f4950 74%);clip-path:polygon(5% 26%,25% 5%,74% 1%,96% 24%,78% 48%,63% 96%,37% 100%,23% 50%);filter:drop-shadow(0 35px 35px rgba(21,69,79,.26));opacity:.75;animation:island-float 7s ease-in-out infinite}.loading-backdrop:after{bottom:10%;width:44px;height:94px;border:3px solid rgba(242,251,224,.82);border-bottom:0;background:linear-gradient(90deg,transparent 43%,rgba(35,108,108,.8) 44% 56%,transparent 57%);clip-path:polygon(18% 100%,18% 35%,36% 35%,36% 0,64% 0,64% 35%,82% 35%,82% 100%);opacity:.72;animation:island-float 7s ease-in-out infinite}.cloud{position:absolute;width:360px;height:85px;border-radius:50%;background:#fffce1a8;filter:blur(12px)}.cloud:before,.cloud:after{content:"";position:absolute;border-radius:50%;background:inherit}.cloud:before{left:65px;bottom:8px;width:130px;height:130px}.cloud:after{right:55px;bottom:10px;width:105px;height:105px}.cloud--one{top:17%;left:-8%;animation:cloud-drift 22s linear infinite}.cloud--two{top:61%;right:-6%;transform:scale(.72);animation:cloud-drift-reverse 28s linear infinite}.cloud--three{top:36%;right:12%;transform:scale(.35);opacity:.6;animation:cloud-drift-reverse 34s linear infinite}.title-card{position:relative;z-index:1;width:min(520px,calc(100vw - 36px));padding:38px 42px 32px;border-color:#ffffeb73;border-radius:30px;background:linear-gradient(160deg,#ffffffad,#fffce26b),#daf1e270;color:var(--ink);text-align:center;box-shadow:0 28px 90px #24505c38,inset 0 1px #fff;-webkit-backdrop-filter:blur(22px) saturate(1.15);backdrop-filter:blur(22px) saturate(1.15)}.eyebrow{margin:0 0 14px;color:#397477;font-size:12px;font-weight:800;letter-spacing:.22em}.brand-mark{position:relative;width:54px;height:54px;margin:0 auto 12px}.brand-mark:before,.brand-mark:after,.brand-mark span{content:"";position:absolute;inset:7px;border:2px solid rgba(35,122,124,.58);border-radius:50%}.brand-mark:after{inset:15px;border-color:#d88a4a;transform:rotate(45deg);border-radius:5px}.brand-mark span{inset:1px 25px;border:0;border-left:2px solid rgba(35,122,124,.45)}.brand-mark i{position:absolute;inset:21px;border-radius:50%;background:#4adbc2;box-shadow:0 0 16px #65ffe1}.title-card h1{margin:0;font-family:"Noto Serif TC",serif;font-size:clamp(42px,8vw,66px);font-weight:900;letter-spacing:.11em;line-height:1.05;text-shadow:0 2px 0 rgba(255,255,255,.8)}.subtitle{margin:9px 0 20px;color:#ba7140;font-family:"Noto Serif TC",serif;font-size:19px;font-weight:700;letter-spacing:.45em;text-indent:.45em}.intro{max-width:380px;margin:0 auto 22px;color:#3e5760;font-size:14px;line-height:1.9}.loading-meter{width:min(320px,78vw);height:5px;margin:0 auto 10px;overflow:hidden;border-radius:999px;background:#30646929}#loading-bar{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2aa8a6,#62ddbc,#e5b45e);box-shadow:0 0 12px #4edcbfb8;transition:width .28s ease}#loading-status{min-height:22px;margin:0 0 18px;color:#4a6b71;font-size:12px}.primary-button,.secondary-button,.icon-button,.segmented-control button,.touch-actions button{border:0;color:#fff;cursor:pointer}.primary-button{min-width:190px;min-height:52px;padding:13px 28px;border-radius:999px;background:linear-gradient(135deg,#237f86,#3ab9a7);box-shadow:0 10px 24px #1e727547,inset 0 1px #ffffff59;font-size:15px;font-weight:800;letter-spacing:.08em;transition:transform .18s ease,filter .18s ease,opacity .18s ease}.primary-button:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.08)}.primary-button:active:not(:disabled){transform:translateY(0) scale(.98)}.primary-button:disabled{cursor:wait;opacity:.45}.legal-note{margin:18px 0 0;color:#375156b3;font-size:10px;line-height:1.55}.hud{position:fixed;inset:0;z-index:10;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .35s ease}.hud--visible{visibility:visible;opacity:1}.compact-panel{position:absolute;top:max(18px,env(safe-area-inset-top));min-width:248px;padding:13px 16px;border-radius:15px;color:var(--cream)}.top-left{left:max(18px,env(safe-area-inset-left))}.top-right{right:max(18px,env(safe-area-inset-right))}.panel-label{margin:0 0 4px;color:#78e6d3;font-size:10px;font-weight:800;letter-spacing:.16em}#quest-text{margin:0;font-size:14px;font-weight:700}.quest-progress{height:3px;margin-top:9px;overflow:hidden;border-radius:99px;background:#ffffff24}#quest-progress-bar{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#47dbc5,#ffe295);transition:width .6s ease}.stats-panel{display:flex;min-width:220px;gap:20px}.stats-panel>div{display:grid;grid-template-columns:27px auto;column-gap:8px;align-items:center}.stats-panel strong{color:#fff;font-size:14px}.stats-panel small{grid-column:2;color:#ebfff99e;font-size:9px}.stat-icon{grid-row:1 / span 2;display:block;width:22px;height:22px}.shard-icon{background:linear-gradient(135deg,#f5fff1 5%,#52e5cc 52%,#157e92);clip-path:polygon(50% 0,92% 38%,69% 100%,27% 89%,5% 33%);filter:drop-shadow(0 0 6px rgba(98,255,223,.68))}.core-icon{border:2px solid #ddb06b;border-radius:50%;box-shadow:inset 0 0 0 4px #3edcc32e,0 0 8px #ffe0915c}.core-icon:after{content:"";display:block;width:6px;height:6px;margin:6px;border-radius:50%;background:#54efd1;box-shadow:0 0 8px #65ffe2}.location-toast{position:absolute;top:max(24px,env(safe-area-inset-top));left:50%;display:flex;flex-direction:column;align-items:center;color:#fff;opacity:0;text-shadow:0 2px 12px rgba(9,35,49,.65);transform:translate(-50%,-12px);transition:opacity .5s ease,transform .5s ease}.location-toast--visible{opacity:1;transform:translate(-50%)}.location-toast span{font-size:9px;font-weight:700;letter-spacing:.2em}.location-toast strong{font-family:"Noto Serif TC",serif;font-size:24px;letter-spacing:.12em}.compass{position:absolute;top:98px;right:max(32px,calc(env(safe-area-inset-right) + 14px));width:48px;height:48px;color:#fffceb;text-align:center;filter:drop-shadow(0 3px 8px rgba(7,31,45,.42))}.compass-ring{position:absolute;inset:4px;border:1px solid rgba(255,255,240,.55);border-radius:50%}.compass-needle{position:absolute;top:6px;left:21px;width:6px;height:26px;background:linear-gradient(180deg,#f0b376 0 50%,#e9fff7 50%);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);transform-origin:50% 50%}.compass small{position:absolute;top:-5px;left:20px;font-size:8px;font-weight:800}.interaction-prompt,.glider-indicator{position:absolute;left:50%;bottom:112px;display:flex;align-items:center;min-height:42px;padding:8px 14px;border-radius:14px;color:#fff;font-size:13px;opacity:0;transform:translate(-50%,10px);transition:opacity .18s ease,transform .18s ease}.interaction-prompt--visible,.glider-indicator--visible{opacity:1;transform:translate(-50%)}kbd{display:inline-grid;place-items:center;min-width:27px;min-height:25px;margin-right:9px;padding:2px 6px;border:1px solid rgba(255,255,255,.38);border-radius:6px;background:#ffffff1f;color:#fff7c9;box-shadow:inset 0 -2px #00000029;font-family:inherit;font-size:10px;font-weight:800}.glider-indicator{bottom:60px;gap:8px;color:#dffff7}.wing-icon{color:#65f2d6;font-size:24px}.toast-stack{position:absolute;top:120px;left:max(18px,env(safe-area-inset-left));display:flex;width:min(330px,calc(100vw - 36px));flex-direction:column;gap:8px}.game-toast{padding:11px 14px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#0f303ad1;color:#f7fff5;box-shadow:0 12px 28px #09202b38;font-size:12px;line-height:1.55;opacity:0;transform:translate(-12px);animation:toast-in .35s ease forwards,toast-out .45s ease 3.6s forwards}.game-toast strong{color:#7ff0dc}.desktop-help{position:absolute;bottom:max(16px,env(safe-area-inset-bottom));left:max(18px,env(safe-area-inset-left));display:flex;padding:8px 11px;border-radius:12px;gap:12px;color:#f2fff9bd;font-size:9px}.desktop-help span{display:flex;align-items:center}.desktop-help kbd{min-width:20px;min-height:19px;margin-right:5px;padding:1px 4px;font-size:8px}.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:#0d2b379e;box-shadow:0 10px 25px #081f2a33,inset 0 1px #ffffff29;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.pause-button{position:absolute;right:max(20px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));font-weight:800;pointer-events:auto}#pause-screen{background:#071b274d;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}#reset-confirmation-screen{z-index:60;background:#05141f94;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.pause-card,.reset-confirmation-card,.message-card{width:min(430px,calc(100vw - 34px));padding:34px;border-radius:26px;color:var(--cream);text-align:center}.pause-card h2,.reset-confirmation-card h2,.message-card h2{margin:0 0 24px;font-family:"Noto Serif TC",serif;font-size:28px}.pause-card .primary-button{width:100%}.reset-confirmation-description{margin:-7px 0 24px;color:#ebfff9b8;font-size:13px;line-height:1.8}.reset-confirmation-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.reset-confirmation-actions button{min-height:44px}.danger-button{border:1px solid rgba(255,198,158,.3);border-radius:11px;background:#b75b3a61;color:#fff1df;font-size:12px;font-weight:700}.danger-button:disabled{cursor:wait;opacity:.58}.settings-group{margin-top:27px;text-align:left}.settings-group p{margin:0 0 9px;color:#ebfff9ab;font-size:11px;font-weight:700;letter-spacing:.08em}.segmented-control{display:grid;grid-template-columns:repeat(3,1fr);padding:4px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#00000029}.segmented-control button{min-height:38px;border-radius:9px;background:transparent;color:#f0fff9a3;font-size:12px}.segmented-control button.is-active{background:#55dac138;color:#eafff8;box-shadow:inset 0 0 0 1px #6bf3da40}.settings-row{display:grid;grid-template-columns:1fr 1fr;margin-top:14px;gap:10px}.secondary-button{min-height:42px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:#ffffff14;color:#e9fff7;font-size:12px}.text-button{margin-top:23px;border:0;background:transparent;color:#ffd8b1b3;cursor:pointer;font-size:11px;text-decoration:underline;text-underline-offset:4px}.pause-hint{margin:14px 0 0;color:#eefff86e;font-size:10px}#unsupported-screen,#context-lost-screen{background:linear-gradient(160deg,#5ba9bf,#16364d)}.message-card p:not(.eyebrow){margin:0 0 22px;color:#ebfff9b8;line-height:1.8}.touch-controls{position:fixed;inset:0;z-index:20;display:none;pointer-events:none}.touch-zone{position:absolute;bottom:max(18px,env(safe-area-inset-bottom));width:42vw;height:44vh;pointer-events:auto;touch-action:none}.move-zone{left:0}.look-zone{right:0;width:58vw;height:100%}.joystick-base,.joystick-knob{position:absolute;left:max(30px,calc(env(safe-area-inset-left) + 18px));bottom:24px;border-radius:50%}.joystick-base{width:112px;height:112px;border:1px solid rgba(255,255,255,.26);background:#0a27343b;box-shadow:inset 0 0 30px #ffffff14}.joystick-knob{width:52px;height:52px;margin:30px;background:#ebfff766;box-shadow:0 5px 16px #061d2838,inset 0 1px #ffffff80}.touch-actions{position:absolute;right:max(20px,env(safe-area-inset-right));bottom:max(28px,calc(env(safe-area-inset-bottom) + 10px));z-index:2;display:grid;grid-template-columns:repeat(2,58px);grid-template-rows:repeat(2,58px);gap:10px;pointer-events:auto}.touch-actions button{display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(255,255,255,.26);border-radius:50%;background:#0b303d75;box-shadow:0 8px 20px #07202a33,inset 0 1px #ffffff42;font-size:15px;font-weight:800;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.touch-actions button[data-touch-action=interact]{grid-column:1;grid-row:1;width:48px;height:48px;margin:12px 0 0 8px}.touch-actions button[data-touch-action=glide]{grid-column:1;grid-row:2;color:#75efdb}.touch-actions button[data-touch-action=jump]{grid-column:2;grid-row:1 / span 2;align-self:end;width:72px;height:72px;background:#2f8e8b8a}#vignette{position:fixed;inset:0;z-index:9;pointer-events:none;background:radial-gradient(circle at center,transparent 55%,rgba(18,57,68,.2) 112%);opacity:.6}@keyframes island-float{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-13px)}}@keyframes cloud-drift{0%{translate:-40px 0}to{translate:120px 0}}@keyframes cloud-drift-reverse{0%{translate:60px 0}to{translate:-100px 0}}@keyframes toast-in{to{opacity:1;transform:translate(0)}}@keyframes toast-out{to{opacity:0;transform:translate(-8px)}}@media(pointer:coarse),(max-width:820px){.touch-controls.touch-controls--visible{display:block}.desktop-help,.compass{display:none}.compact-panel{top:max(10px,env(safe-area-inset-top));min-width:auto;padding:10px 12px;border-radius:12px}.top-left{left:max(10px,env(safe-area-inset-left));max-width:calc(58vw - 12px)}.top-right{right:max(10px,env(safe-area-inset-right))}.stats-panel{min-width:auto;gap:10px}.stats-panel small,.panel-label,.quest-progress{display:none}.stats-panel>div{grid-template-columns:21px auto;column-gap:5px}.stat-icon{width:17px;height:17px}.core-icon:after{width:5px;height:5px;margin:4px}#quest-text,.stats-panel strong{font-size:11px}.pause-button{top:max(76px,calc(env(safe-area-inset-top) + 62px));right:max(12px,env(safe-area-inset-right));bottom:auto}.interaction-prompt{bottom:132px}.glider-indicator{bottom:72px}.toast-stack{top:74px;left:50%;transform:translate(-50%)}}@media(max-width:560px){.title-card{padding:28px 22px 23px;border-radius:24px}.title-card h1{font-size:42px}.subtitle{font-size:15px}.intro{font-size:13px}.legal-note{display:none}}@media(max-height:680px){.title-card{padding-top:23px;padding-bottom:20px}.brand-mark{width:42px;height:42px;margin-bottom:6px}.title-card h1{font-size:38px}.subtitle{margin-bottom:10px}.intro{margin-bottom:12px;line-height:1.6}.legal-note{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
