/* The living playfield */
body{background:#092d28}body.game-home{overflow:hidden}header{position:relative;z-index:5;border:0;max-width:none;padding:22px 4vw}.edition{display:none}header:after{content:'THE ART OF GATHERING · 001';font-size:10px;letter-spacing:2px;color:#c7d2b4}#world{position:fixed;inset:0;z-index:0;background:radial-gradient(ellipse at 50% 65%,#487b5755,transparent 50%),radial-gradient(ellipse at 20% 10%,#6a806044,transparent 60%),#092b24;transition:filter .7s,opacity .7s}#world:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 65%,#031f1bb0)}#playfield{position:absolute;inset:0;overflow:hidden}.orb{position:absolute;left:0;top:0;width:var(--size);height:var(--size);border:1px solid #fff3bca0;border-radius:50%;touch-action:none;user-select:none;cursor:grab;color:#fff0ad;background:radial-gradient(circle at 28% 22%,#fffbe0e6 0%,#f9e8a660 5%,transparent 20%),radial-gradient(circle at 66% 76%,#ffd25688,transparent 35%),radial-gradient(circle at 45% 40%,#d6be6633,#bbaa4466 57%,#f6dda577 72%,#3d5e3766 83%);box-shadow:inset -9px -12px 19px #0b2c3077,inset 3px 3px 9px #fff5ca66,0 15px 28px #001e2355,0 0 25px #d4bb6f0d;display:grid;place-items:center;will-change:transform;transition:opacity .4s}.orb:before{content:'';position:absolute;inset:9%;border-radius:50%;border:1px solid #fae7a34d;transform:rotate(-25deg) scaleX(.83)}.orb:after{content:'';position:absolute;width:32%;height:9%;top:13%;left:17%;border-radius:50%;background:#ffffe070;filter:blur(2px);transform:rotate(-35deg)}.orb span{font-family:serif;font-size:calc(var(--size)*.25);text-shadow:0 2px 10px #243512;opacity:.85;letter-spacing:3px}.orb:active{cursor:grabbing}.orb.caught{pointer-events:none;opacity:0}.game-stage{position:relative;z-index:2;min-height:calc(100svh - 100px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 0 210px;pointer-events:none;text-align:center}.game-stage .eyebrow{margin-bottom:17px;font-size:11px;color:#ecd59b;letter-spacing:6px}.game-stage h1{font-size:clamp(43px,6vw,78px);letter-spacing:8px;line-height:1.25;margin:0 0 18px;text-shadow:0 5px 25px #09291c}.game-stage h1 em{font-style:normal;color:#eddb9e}.game-stage .game-sub{font-size:14px;letter-spacing:3px;color:#d0d5ba;line-height:1.9;margin:0 0 25px}.game-start{pointer-events:auto;padding:21px 35px;border:1px solid #fff6c690;border-radius:23px;box-shadow:inset 0 0 0 5px #ffffff0b,0 15px 50px #0002;background:linear-gradient(110deg,#dfd8a025,#fff2b730);backdrop-filter:blur(20px);color:#fff7d1;min-width:310px;font-size:19px;letter-spacing:2px;transition:.2s}.game-start:hover{box-shadow:inset 0 0 0 5px #ffffff15,0 0 50px #ead89722;transform:translateY(-3px)}.game-start span{margin-left:35px}.game-meta{font-size:10px;color:#bac8af;letter-spacing:2px;margin-top:17px}.bowl-wrap{position:fixed;z-index:2;width:260px;height:145px;bottom:33px;left:calc(50% - 130px);pointer-events:none;transition:transform .5s,opacity .5s}.bowl{position:absolute;inset:30px 0 0;background:linear-gradient(100deg,#3b402a,#ad9861 17%,#ede0ac 30%,#6f7046 46%,#d2bc7b 65%,#fff0b4 75%,#7b7044 90%);border-radius:12% 12% 47% 47% / 20% 20% 80% 80%;border:1px solid #eaddab;box-shadow:0 25px 22px #001c2477,inset 0 -12px 24px #1c382c80;display:grid;place-items:center}.bowl:before{content:'';position:absolute;left:-1%;top:-15px;width:102%;height:45px;border:4px solid #e3d097;border-radius:50%;background:radial-gradient(ellipse,#9eaa6299,#102f24 70%);box-shadow:inset 0 0 15px #0008,0 3px 5px #fff6}.bowl:after{content:'聚 心';font:24px serif;color:#173727;letter-spacing:9px;margin-top:15px;text-shadow:0 1px #fff7}.bowl-glow{position:absolute;inset:-35px -40px;background:radial-gradient(ellipse,#ead78233,transparent 65%);animation:breathe 5s infinite}.bowl-wrap.pop{animation:bowl-pop .6s}.play-tip{position:fixed;bottom:23px;left:4vw;font-size:11px;line-height:1.9;letter-spacing:2px;color:#b3c7b0;z-index:4}.play-tip strong{display:block;font-size:14px;color:var(--gold);font-weight:400;margin-bottom:6px}.toy-tools{position:fixed;right:4vw;bottom:27px;z-index:4;display:flex;gap:12px}.toy-tools button{border:1px solid #fff3;background:#ffffff0c;backdrop-filter:blur(8px);color:#dce2c7;padding:10px 16px;border-radius:30px;font-size:11px}.game-home footer{display:none}main{position:relative;z-index:3}.game-home main{pointer-events:none;max-width:none}.game-home .game-stage button{pointer-events:auto}.game-playing #world{opacity:.35;filter:blur(4px)}.game-playing .bowl-wrap,.game-playing .play-tip,.game-playing .toy-tools,.game-result .bowl-wrap,.game-result .play-tip,.game-result .toy-tools{display:none}.game-playing main{max-width:940px}.game-playing .quiz{margin:12px auto 25px;padding:28px 34px;border:1px solid #ddd7a738;border-radius:28px;background:linear-gradient(130deg,#537b5540,#102f29c9);backdrop-filter:blur(25px);box-shadow:0 30px 90px #00191055}.game-playing .mini-sky{display:none}.game-playing .options{grid-template-columns:1fr 1fr;gap:13px}.game-playing .option{min-height:115px;align-items:flex-start;padding:20px 17px;background:#e4eac00b;border-radius:18px}.game-playing .option.selected{background:#e6cb8230;box-shadow:inset 0 0 0 1px #e6d098,0 0 20px #ead58e0c}.game-playing .scene-icon{border-radius:50%;background:#e2d0801c}.game-playing .track{margin-bottom:20px}.collection{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 22px;min-height:26px}.collection i{width:13px;height:13px;border:1px solid #d8c88750;border-radius:50%;background:#b9a1590d;transition:.5s}.collection i.filled{background:radial-gradient(circle at 30% 25%,#fff5c7,#d6b65e 55%,#7d6c36);box-shadow:0 0 13px #e8c86555;transform:scale(1.1)}.collection span{font-size:10px;color:#dac997;margin-left:7px}.answer-feedback{min-height:26px;font-size:12px;line-height:1.8;color:#e9d998;text-align:center;padding-top:12px}.chapter-card,.reveal-card{text-align:center;max-width:680px;margin:35px auto;padding:50px 30px;border:1px solid #e4d59955;border-radius:30px;background:#244c38aa;backdrop-filter:blur(24px)}.chapter-card h2,.reveal-card h2{font:36px serif;color:var(--gold);line-height:1.5}.chapter-symbol{font:85px serif;display:grid;place-items:center;width:165px;height:165px;border:1px solid #f3d89080;box-shadow:0 0 65px #dac77b20,inset 0 0 45px #edd99212;border-radius:50%;margin:0 auto 25px;color:#f3dea1}.chapter-card p,.reveal-card p{line-height:2;color:#bfcdb7;font-size:14px}.chapter-card .primary{margin-top:20px}.reveal-card button{border:0;background:none;color:#f5e4b7;cursor:pointer}.reveal-card .chapter-symbol{font-size:70px;background:radial-gradient(#c9aa5744,transparent);transition:.3s}.reveal-card button:hover .chapter-symbol{transform:scale(1.07);box-shadow:0 0 90px #ddc27655}.game-result #world{opacity:.22;filter:blur(7px)}.game-result .result-top{border:1px solid #deca8f50;padding:30px;border-radius:28px;background:radial-gradient(ellipse at top,#b7a15822,#0a2b2422)}.burst{position:fixed;pointer-events:none;z-index:20;width:6px;height:6px;border-radius:50%;background:#f6dc8a;animation:burst .8s ease-out forwards}.game-feedback{position:fixed;bottom:190px;left:50%;transform:translateX(-50%);color:#f9e9b7;font-size:14px;letter-spacing:2px;pointer-events:none;text-align:center;z-index:5;animation:appear .4s}.game-result footer{position:relative;z-index:3}@keyframes burst{to{transform:translate(var(--dx),var(--dy)) scale(0);opacity:0}}@keyframes bowl-pop{50%{transform:scale(1.1) translateY(-7px)}}@media(max-width:700px){header{padding:15px 20px}header:after{content:'收 心 遊 樂 場';font-size:9px;letter-spacing:2px}.game-stage{padding:20px 0 195px;min-height:calc(100svh - 84px)}.game-stage h1{font-size:43px;letter-spacing:4px}.game-stage .eyebrow{font-size:9px;letter-spacing:4px}.game-stage .game-sub{font-size:12px;letter-spacing:2px}.game-start{min-width:265px;padding:19px 23px;font-size:16px}.bowl-wrap{width:190px;height:117px;left:calc(50% - 95px);bottom:50px}.bowl:after{font-size:21px}.bowl:before{height:32px;top:-11px}.play-tip{left:16px;bottom:12px;font-size:8px;letter-spacing:0;max-width:54%}.play-tip strong{font-size:10px;margin-bottom:1px}.toy-tools{right:16px;bottom:14px;gap:5px}.toy-tools button{font-size:9px;padding:8px 10px}.game-feedback{bottom:178px;width:90%;font-size:12px}.game-playing main{padding:0 13px}.game-playing .quiz{padding:22px 17px;border-radius:23px;margin:8px auto}.game-playing .options{grid-template-columns:1fr;gap:9px}.game-playing .option{min-height:64px;padding:13px;align-items:center;font-size:13px}.game-playing .scene{margin-bottom:13px}.game-playing .scene h2{font-size:21px}.game-playing .context{margin-bottom:17px}.game-playing .quiet-hint{margin-top:13px;font-size:10px}.game-playing .quiz-nav{margin-top:15px}.collection{gap:6px;margin-bottom:17px}.collection i{width:10px;height:10px}.collection span{font-size:9px}.chapter-card,.reveal-card{margin:25px auto;padding:35px 20px}.chapter-card h2,.reveal-card h2{font-size:29px}.game-result .result-top{padding:23px 16px}.game-result main{padding:0 18px}.game-result .result-body{margin-bottom:0}}@media(prefers-reduced-motion:reduce){.orb,.bowl-wrap,.burst,.chapter-symbol{animation:none!important;transition:none!important}}
