@import"https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@200;300;400;500&display=swap";:root{--cream: #F5F0E8;--bark: #5C4A3A;--sand: #D4C5A9;--light-sand: #E8DFD0;--tree-green: #4A6741;--tree-green-light: #6B8F71;--sage: #8CB369;--blossom: #E8C4C4;--gold: #C4A265;--earth: #8B7355;--night-bg: #2A2722;--night-text: #D4CCBC;--night-card: rgba(50, 46, 40, .7)}*{-webkit-tap-highlight-color:transparent}body{font-family:"Noto Serif SC",serif;margin:0;overscroll-behavior:none}body.night-mode{background:#2a2722}.app-shell{width:100%;max-width:430px;min-height:100vh;margin:0 auto;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;background:var(--cream);transition:background 1s ease}body.night-mode .app-shell{background:#2a2722}.atmosphere{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 40% 30%,rgba(107,143,113,.05) 0%,transparent 60%),radial-gradient(ellipse at 60% 70%,rgba(232,196,196,.04) 0%,transparent 50%);pointer-events:none;transition:background 1s ease}body.night-mode .atmosphere{background:radial-gradient(ellipse at 50% 40%,rgba(196,162,101,.04) 0%,transparent 50%),radial-gradient(ellipse at 50% 80%,rgba(60,55,45,.06) 0%,transparent 60%)}.ambient-particle{position:fixed;pointer-events:none;opacity:0}.ambient-particle.petal{width:7px;height:9px;background:var(--blossom);border-radius:50% 0 50% 50%;animation:petalDrift linear infinite}@keyframes petalDrift{0%{opacity:0;transform:translateY(-10px) rotate(0) translate(0)}8%{opacity:.5}85%{opacity:.3}to{opacity:0;transform:translateY(100vh) rotate(280deg) translate(60px)}}.ambient-particle.firefly{width:5px;height:5px;background:radial-gradient(circle,#dcd278,#c8be5066,#c8be5000);border-radius:50%;animation:fireflyFloat ease-in-out infinite;box-shadow:0 0 6px #dcd27880,0 0 12px #c8be5033}@keyframes fireflyFloat{0%{opacity:0;transform:translate(0)}20%{opacity:.8}50%{opacity:.3;transform:translate(var(--fx),var(--fy))}80%{opacity:.7}to{opacity:0;transform:translate(calc(var(--fx) * -.5),calc(var(--fy) + 40px))}}.ambient-particle.autumn-leaf{width:10px;height:8px;background:var(--gold);border-radius:0 50% 50%;animation:autumnDrift linear infinite}@keyframes autumnDrift{0%{opacity:0;transform:translateY(-10px) rotate(0) translate(0)}10%{opacity:.6}50%{transform:translateY(50vh) rotate(180deg) translate(40px)}85%{opacity:.3}to{opacity:0;transform:translateY(100vh) rotate(360deg) translate(-20px)}}.ambient-particle.snow{width:5px;height:5px;background:#ffffffb3;border-radius:50%;animation:snowFall linear infinite}@keyframes snowFall{0%{opacity:0;transform:translateY(-10px) translate(0)}10%{opacity:.7}50%{transform:translateY(50vh) translate(20px)}85%{opacity:.4}to{opacity:0;transform:translateY(100vh) translate(-10px)}}.moon-dust{position:fixed;width:3px;height:3px;background:radial-gradient(circle,#dcd2b999,#dcd2b900);border-radius:50%;pointer-events:none;animation:dustDrift ease-in-out infinite}@keyframes dustDrift{0%,to{opacity:.2;transform:translateY(0) translate(0)}50%{opacity:.6;transform:translateY(-10px) translate(5px)}}.tree-scene{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;width:100%;padding-bottom:60px}.tree-wrap{position:relative;width:240px;height:280px;cursor:pointer;transition:transform .8s cubic-bezier(.4,0,.2,1),opacity .8s ease;animation:gentleSway 8s ease-in-out infinite}@keyframes gentleSway{0%,to{transform:rotate(0)}30%{transform:rotate(.4deg)}70%{transform:rotate(-.4deg)}}.tree-trunk{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:16px;height:90px;background:linear-gradient(to right,#7a6b58,#8b7d6b,#7a6b58);border-radius:4px;transition:background 1s ease}body.night-mode .tree-trunk{background:linear-gradient(to right,#5a5245,#6b6255,#5a5245);box-shadow:0 0 8px #a08c641a}.tree-root{position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:50px;height:8px;border-bottom:2px solid rgba(139,125,107,.3);border-radius:0 0 50% 50%;transition:all .6s ease}.tree-root.full{width:70px;height:12px;bottom:-6px;border-bottom:2.5px solid rgba(139,125,107,.5)}body.night-mode .tree-root{border-bottom-color:#8c826433}body.night-mode .tree-root.full{border-bottom-color:#8c826459;box-shadow:0 4px 12px #786e5014}.canopy{position:absolute;left:50%;border-radius:50%;transition:all .6s cubic-bezier(.4,0,.2,1);cursor:pointer}.canopy:active{filter:brightness(1.15)}.canopy-bottom{width:160px;height:100px;bottom:80px;margin-left:-80px;background:radial-gradient(ellipse,#8bb36973,#6b8f7159 60%,#6b8f7126);z-index:1}.canopy-middle{width:130px;height:90px;bottom:120px;margin-left:-65px;background:radial-gradient(ellipse,#6b8f718c,#4a674166 60%,#4a674126);z-index:2}.canopy-top{width:90px;height:70px;bottom:165px;margin-left:-45px;background:radial-gradient(ellipse,#4a6741b3,#3a523480 60%,#3a523433);z-index:3}.canopy-top.flash{animation:canopy-flash 1.2s ease-out}@keyframes canopy-flash{0%{filter:brightness(1)}20%{filter:brightness(1.4)}50%{filter:brightness(1.15)}to{filter:brightness(1)}}body.night-mode .canopy-top.flash{animation:canopy-flash-night 1.2s ease-out}@keyframes canopy-flash-night{0%{box-shadow:0 0 15px #b4a06e26}20%{box-shadow:0 0 30px #c4af7859,0 0 60px #b4a06e1f}50%{box-shadow:0 0 22px #beaa7340,0 0 40px #aa966414}to{box-shadow:0 0 15px #b4a06e26}}.canopy-game{width:60px;height:50px;bottom:195px;margin-left:-30px;background:radial-gradient(ellipse,#c4a265b3,#a0804080,#a0804026);z-index:4;opacity:0;transform:scale(0);transition:all .6s cubic-bezier(.34,1.56,.64,1);pointer-events:none;cursor:default}.canopy-game.visible{opacity:1;transform:scale(1)}body.night-mode .canopy-bottom{background:radial-gradient(ellipse,#788c5f66,#5f734b47,#5564411a);box-shadow:0 0 20px #968c6414,0 0 40px #8278550a}body.night-mode .canopy-middle{background:radial-gradient(ellipse,#647d5080,#50694159,#465a371f);box-shadow:0 0 18px #8c825f1a,0 0 35px #786e500d}body.night-mode .canopy-top{background:radial-gradient(ellipse,#556e4499,#415a346b,#374b2c29);box-shadow:0 0 15px #968c641f,0 0 30px #8278550f}body.night-mode .canopy-game{background:radial-gradient(ellipse,#c4aa6480,#a08c5059,#8c78461f);box-shadow:0 0 12px #c4aa642e,0 0 25px #b49b5514}.tree-wrap.four-layer .canopy-top{bottom:155px}.tree-wrap.four-layer .canopy-middle{bottom:110px}.tree-wrap.four-layer .canopy-bottom{bottom:70px}.canopy.shimmer{animation:layerShimmer 2s ease-in-out}@keyframes layerShimmer{0%{filter:brightness(1)}30%{filter:brightness(1.3)}60%{filter:brightness(1)}80%{filter:brightness(1.15)}to{filter:brightness(1)}}.canopy-glow{position:absolute;left:50%;width:140px;height:80px;bottom:125px;margin-left:-70px;border-radius:50%;background:radial-gradient(ellipse,rgba(196,162,101,.15) 0%,transparent 70%);z-index:0;animation:glowPulse 4s ease-in-out infinite;pointer-events:none}body.night-mode .canopy-glow{background:radial-gradient(ellipse,rgba(196,175,120,.12) 0%,rgba(170,150,100,.05) 50%,transparent 75%)}@keyframes glowPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.8;transform:scale(1.08)}}.insight-flow{position:absolute;left:0;right:0;top:0;bottom:0;pointer-events:none;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:60px}.insight-flow.active{pointer-events:all}.flow-text-area{max-width:320px;padding:0 30px;opacity:0;transform:translateY(40px);transition:none}.flow-text-area.entering{animation:textRise 1.2s cubic-bezier(.16,1,.3,1) forwards}@keyframes textRise{0%{opacity:0;transform:translateY(40px);filter:blur(4px)}40%{opacity:.6;filter:blur(1px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.flow-text-area.leaving{animation:textFade .8s ease forwards}@keyframes textFade{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px) scale(.98);filter:blur(2px)}}.flow-char{display:inline;opacity:0;animation:charAppear .4s ease forwards}@keyframes charAppear{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur(0)}}.flow-type-label{font-size:10px;letter-spacing:4px;color:var(--gold);margin-bottom:20px;opacity:0;animation:charAppear .6s .2s ease forwards;text-align:center}body.night-mode .flow-type-label{color:#c4b48cb3}.flow-main-text{font-size:17px;line-height:2;color:var(--bark);font-weight:300;text-align:center;letter-spacing:.5px}body.night-mode .flow-main-text{color:#c8c0b0}.flow-evidence{margin-top:24px;font-size:12px;color:var(--sand);text-align:center;opacity:0;letter-spacing:.5px}.flow-evidence.show{animation:charAppear .6s ease forwards}.flow-actions{position:fixed;bottom:120px;left:50%;transform:translate(-50%);display:flex;gap:36px;opacity:0;justify-content:center;z-index:11}.flow-actions.show{animation:actionsFloat 1s .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes actionsFloat{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.flow-action{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .3s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.flow-action:active{transform:scale(.9)}.flow-action-icon{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;transition:all .4s}.flow-action.grow .flow-action-icon{background:#6b8f711a}.flow-action.drift .flow-action-icon{background:#d4c5a926}.flow-action.more .flow-action-icon{background:#c4a2651a}body.night-mode .flow-action-icon{background:#786e5033!important;box-shadow:0 0 6px #96875f14}.flow-action-text{font-size:11px;color:var(--sand);letter-spacing:1px}body.night-mode .flow-action-text{color:#b4afa099}@keyframes driftAway{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(120px) rotate(15deg) translateY(-30px);opacity:0}}.memory-stream{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;pointer-events:none;overflow:hidden}.memory-stream.active{pointer-events:all;overflow-y:auto;-webkit-overflow-scrolling:touch}.mem-back{position:fixed;top:16px;left:16px;width:36px;height:36px;border-radius:50%;border:none;background:#ffffff80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:20;opacity:0;transition:opacity .4s}body.night-mode .mem-back{background:#37322a99}.mem-back.show{opacity:1}.mem-fragment{position:absolute;width:62%;max-width:280px;padding:20px 24px;background:#ffffff8c;border-radius:16px;font-size:16px;line-height:1.9;color:var(--bark);font-weight:300;opacity:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);cursor:pointer;transition:all .4s ease;box-sizing:border-box}.mem-fragment .mem-text{word-break:break-all}body.night-mode .mem-fragment{background:#322e26b3;border-color:#8c826426;color:#d0c8b8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mem-fragment.float-in{animation:memFloat 1s cubic-bezier(.16,1,.3,1) forwards}@keyframes memFloat{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.mem-fragment.float-out{animation:memSink .6s ease forwards}@keyframes memSink{to{opacity:0;transform:translateY(20px) scale(.95)}}.mem-fragment .mem-date{font-size:11px;color:var(--sand);margin-bottom:10px;letter-spacing:1.5px}.mem-fragment .mem-source{font-size:11px;color:var(--sand);margin-top:12px;opacity:.6}.mem-page-indicator{position:fixed;bottom:90px;left:50%;transform:translate(-50%);font-size:11px;color:var(--sand);letter-spacing:1px;opacity:.5;z-index:9}.mem-page-hint{opacity:.7}.mem-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0003;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:25;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s}body.night-mode .mem-detail-overlay{background:#0006}.mem-detail-overlay.show{opacity:1;pointer-events:all}.mem-detail-card{width:320px;max-height:70vh;overflow-y:auto;background:var(--cream);border-radius:20px;padding:28px 24px;transform:translateY(20px) scale(.96);transition:transform .5s cubic-bezier(.4,0,.2,1)}body.night-mode .mem-detail-card{background:#352f28;border:1px solid rgba(140,130,100,.12)}.mem-detail-overlay.show .mem-detail-card{transform:translateY(0) scale(1)}.record-area{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:380px;z-index:20;padding:0 28px 44px;pointer-events:none}.record-trigger{width:100%;padding:16px 24px;background:#ffffff80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(212,197,169,.25);border-radius:28px;font-family:"Noto Serif SC",serif;font-size:14px;color:var(--sand);font-weight:300;text-align:left;cursor:pointer;pointer-events:all;transition:all .4s ease;letter-spacing:.5px}body.night-mode .record-trigger{background:#322e2680;border-color:#8c82642e;color:#beb4a080}.record-expanded{position:fixed;bottom:0;left:50%;transform:translate(-50%) translateY(100%);width:100%;max-width:380px;background:#f5f0e8fa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:28px 28px 0 0;padding:20px 24px 32px;z-index:30;transition:transform .5s cubic-bezier(.4,0,.2,1);box-shadow:0 -8px 40px #0000000f}body.night-mode .record-expanded{background:#2a2620fa}.record-expanded.open{transform:translate(-50%) translateY(0)}.record-expanded textarea{width:100%;height:90px;border:none;background:transparent;font-family:"Noto Serif SC",serif;font-size:15px;color:var(--bark);font-weight:300;resize:none;outline:none;line-height:1.8;letter-spacing:.5px}body.night-mode .record-expanded textarea{color:#c0b8a8}.record-bar{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.record-close{font-size:13px;color:var(--sand);background:none;border:none;cursor:pointer;font-family:"Noto Serif SC",serif;padding:8px 12px}.record-mic{width:36px;height:36px;border-radius:50%;border:1px solid var(--sand);background:transparent;color:var(--sand);display:flex;align-items:center;justify-content:center;cursor:not-allowed;opacity:.4;transition:all .3s}.record-mic:not(:disabled){opacity:.8;cursor:pointer}.record-mic:not(:disabled):hover{opacity:1;border-color:var(--tree-green);color:var(--tree-green)}body.night-mode .record-mic{border-color:#8c82644d;color:#b4aa8c66}.record-send{padding:8px 22px;background:var(--tree-green);color:var(--cream);border:none;border-radius:20px;font-family:"Noto Serif SC",serif;font-size:13px;cursor:pointer;letter-spacing:1px;transition:all .3s}.magic-key{position:fixed;bottom:116px;right:20px;width:42px;height:42px;border-radius:50%;background:#d4c5a926;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(212,197,169,.2);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:15;transition:all .3s;box-shadow:0 2px 8px #c4a26514;opacity:.5;animation:magicKeyPulse 4s ease-in-out infinite;color:var(--gold)}@keyframes magicKeyPulse{0%,to{box-shadow:0 2px 8px #c4a26514;transform:scale(1)}50%{box-shadow:0 2px 10px #c4a26526;transform:scale(1.02)}}.magic-key-icon{transition:transform .3s}.magic-key:active .magic-key-icon{transform:scale(.85)}.magic-key:active{transform:scale(.9)!important}.magic-key.hidden{opacity:0;pointer-events:none;transform:scale(0);animation:none}body.night-mode .magic-key{background:#37322a4d;border-color:#8c826426;color:#beb4a099;box-shadow:0 2px 8px #b49b5a0f}.flying-bean{position:fixed;width:28px;height:28px;background:radial-gradient(circle at 40% 35%,#fff8e0,#e8d5a0,#c4a265);border-radius:50%;z-index:100;pointer-events:none;box-shadow:0 0 20px #c4a26599,0 0 40px #c4a2654d}.game-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c2520f7;z-index:50;opacity:0;pointer-events:none;transition:opacity .5s ease;overflow:hidden}.game-overlay.active{opacity:1;pointer-events:auto}.game-overlay.day-mode .game-close{background:#ffffffb3;color:var(--bark);border-color:#d4c5a94d}.game-overlay.day-mode .game-header .g-title{color:var(--tree-green)}.game-overlay.day-mode .game-header .g-scene{color:#6b5c4a}.game-overlay.day-mode .child-bubble{background:#6b8f711f;border-color:#6b8f7133}.game-overlay.day-mode .child-bubble .cb-text{color:#3a3028}.game-overlay.day-mode .g-opt-btn{background:#fffc;border-color:#8b7d6b40;color:#3a3028}.game-overlay.day-mode .g-opt-btn:hover{background:#f5f0e8f2;border-color:var(--tree-green)}.game-overlay.day-mode .g-opt-btn.correct{background:#5eaa5e1f;color:#2d6a2d}.game-overlay.day-mode .g-opt-btn.wrong{background:#aa5e5e1f;color:#8a3a3a}.game-overlay.day-mode .g-reveal{color:var(--bark);border-left-color:var(--tree-green);background:#4a67410f}.game-overlay.day-mode .g-next-btn{color:var(--tree-green);border-color:#4a674140;background:#4a674114}.game-overlay.day-mode .g-catch-elem{background:#fffc;border-color:#8b7d6b40}.game-overlay.day-mode .g-catch-elem .catch-label{color:#5c4a3a}.game-overlay.day-mode .g-final .g-score-num{color:var(--tree-green)}.game-overlay.day-mode .g-final .g-score-label{color:#6b5c4a}.game-overlay.day-mode .g-final .g-final-text{background:#fffc;border-color:#8b7d6b26;color:#3a3028}.game-overlay.day-mode .g-dot{background:#4a67411a;border-color:#4a674140}.game-overlay.day-mode .g-dot.active{background:var(--tree-green)}.game-overlay.day-mode .g-dot.done{background:#4a8a4a;border-color:#4a8a4a}.game-container{max-width:420px;margin:0 auto;padding:20px 24px;height:100vh;height:100dvh;display:flex;flex-direction:column;box-sizing:border-box}.game-container.g-no-scroll{overflow:hidden}.g-single-screen{display:flex;flex-direction:column;flex:1;min-height:0;justify-content:center}.g-chat-area{display:flex;flex-direction:column;gap:10px;flex:1;min-height:0;overflow-y:auto;justify-content:center}.g-prompt-text{font-size:12px;color:#8a8478;margin-bottom:2px}.g-bottom-area{margin-top:4px;padding:8px 0 max(24px,env(safe-area-inset-bottom,24px));flex-shrink:0}.g-catch-grid{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;padding:12px 0}.g-catch-count{text-align:center;padding:4px;font-size:12px;color:var(--sage)}.game-close{position:fixed;top:20px;left:20px;width:44px;height:44px;border-radius:50%;background:#3c463ecc;border:1px solid rgba(90,120,80,.2);color:#c8c0b0;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:51;transition:all .3s}.game-header{text-align:center;padding:12px 0 8px;flex-shrink:0}.game-header .g-label{font-size:11px;color:var(--sage);letter-spacing:3px;margin-bottom:4px;opacity:.7;font-family:sans-serif}.game-header .g-title{font-size:22px;font-weight:500;color:#d4a76a;margin-bottom:4px}.game-header .g-scene{font-size:13px;color:#8a8478;line-height:1.6;max-width:320px;margin:0 auto}.g-progress{display:flex;justify-content:center;gap:8px;padding:8px 0 12px;flex-shrink:0}.g-dot{width:10px;height:10px;border-radius:50%;background:#7cb87c26;border:1px solid rgba(124,184,124,.3);transition:all .5s}.g-dot.active{background:var(--sage);box-shadow:0 0 10px #64aa5a4d;transform:scale(1.2)}.g-dot.done{background:#5eaa5e;border-color:#5eaa5e}.child-bubble{background:#64a05a26;border:1px solid rgba(100,160,90,.2);border-radius:16px 16px 16px 4px;padding:16px 20px;max-width:85%;animation:gSlideUp .6s ease forwards}.child-bubble .cb-speaker{font-size:11px;color:var(--sage);margin-bottom:6px;font-weight:500;font-family:sans-serif}.child-bubble .cb-text{font-size:16px;line-height:1.7;color:#c8c0b0}@keyframes gSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.g-options{display:flex;flex-direction:column;gap:8px;padding:4px 0;animation:gFadeIn .5s ease .4s both}@keyframes gFadeIn{0%{opacity:0}to{opacity:1}}.g-opt-btn{background:#28322ad9;border:1px solid rgba(90,120,80,.25);border-radius:12px;padding:14px 18px;min-height:52px;color:#c8c0b0;font-size:14px;line-height:1.5;text-align:left;cursor:pointer;transition:all .3s;font-family:"Noto Serif SC",serif}.g-opt-btn:hover{border-color:var(--sage);background:#323c34e6;transform:translate(4px)}.g-opt-btn.correct{border-color:#5eaa5e;background:#5eaa5e26;color:#b8deb8}.g-opt-btn.wrong{border-color:#aa5e5e;background:#aa5e5e26;color:#deb8b8}.g-opt-btn.show-correct{border-color:#5eaa5e;background:#5eaa5e1a}.g-opt-btn.dim{pointer-events:none;opacity:.5}.g-opt-btn .g-indicator{display:inline-block;width:20px;height:20px;border-radius:50%;border:1.5px solid rgba(124,184,124,.3);margin-right:10px;vertical-align:middle;text-align:center;line-height:18px;font-size:12px;transition:all .3s}.g-opt-btn.correct .g-indicator{background:#5eaa5e;border-color:#5eaa5e;color:#fff}.g-opt-btn.wrong .g-indicator{background:#aa5e5e;border-color:#aa5e5e;color:#fff}.g-reveal{background:#d4a76a14;border-left:3px solid #D4A76A;padding:10px 14px;margin:6px 0;border-radius:0 12px 12px 0;font-size:13px;line-height:1.7;color:#d4a76a;animation:gSlideUp .5s ease forwards;max-height:120px;overflow-y:auto;-webkit-overflow-scrolling:touch}.g-next-btn{display:block;margin:10px auto 24px;padding:10px 36px;background:#7cb87c26;border:1px solid rgba(124,184,124,.3);border-radius:24px;color:var(--sage);font-size:14px;cursor:pointer;transition:all .3s;font-family:"Noto Serif SC",serif;animation:gFadeIn .5s ease .3s both}.g-next-btn:hover{background:#7cb87c40;box-shadow:0 0 20px #64aa5a4d}.g-final{text-align:center;padding:20px 20px 32px;animation:gFadeIn .8s ease forwards;justify-content:center;align-items:center}.g-final .g-tree-icon{font-size:48px;margin:16px 0;filter:drop-shadow(0 0 20px rgba(100,170,90,.3))}.g-final .g-score-num{font-size:52px;font-weight:700;color:#d4a76a;line-height:1}.g-final .g-score-label{font-size:14px;color:#8a8478;margin-top:10px}.g-final .g-final-text{font-size:14px;line-height:1.8;color:#c8c0b0;max-width:340px;margin:24px auto;text-align:center;background:#322e26d9;border-radius:16px;padding:20px 24px;border:1px solid rgba(140,130,100,.15);max-height:160px;overflow-y:auto;-webkit-overflow-scrolling:touch}.g-final .g-grow-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:12px;font-size:12px;background:#7cb87c1a;color:var(--sage);border:1px solid rgba(124,184,124,.2);margin-top:20px}.g-final .g-actions{display:flex;gap:16px;justify-content:center;margin-top:24px}.g-final .g-action-btn{padding:12px 28px;border-radius:24px;font-size:14px;cursor:pointer;transition:all .3s;border:1px solid;font-family:"Noto Serif SC",serif}.g-final .g-action-btn.primary{background:#7cb87c26;border-color:#7cb87c4d;color:var(--sage)}.g-collect-hint{font-size:11px;color:var(--sand);text-align:center;margin-top:10px;opacity:.6;letter-spacing:.5px}.g-final .g-action-btn.secondary{background:transparent;border-color:#c8c0b033;color:#8a8478}.g-catch-elem{display:flex;flex-direction:column;align-items:center;width:84px;height:84px;border-radius:14px;background:#28322ad9;border:1px solid rgba(90,120,80,.25);cursor:pointer;transition:all .3s;position:relative;justify-content:center;font-family:sans-serif}.g-catch-elem:hover{border-color:var(--sage);transform:scale(1.05)}.g-catch-elem.selected{border-color:#d4a76a;background:#d4a76a26}.g-catch-elem.correct-elem{border-color:#5eaa5e;background:#5eaa5e26}.g-catch-elem.wrong-elem{border-color:#aa5e5e;background:#aa5e5e26}.catch-order{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:#d4a76a;color:#1c2520;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.correction-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#141914d9;display:flex;align-items:center;justify-content:center;padding:20px}.correction-card{background:var(--cream);border-radius:20px;padding:24px;max-width:360px;width:100%}.correction-title{font-size:14px;color:var(--tree-green);font-weight:500;margin-bottom:12px;letter-spacing:1px}.correction-original{font-size:13px;color:var(--bark);line-height:1.8;padding:12px;background:#d4c5a926;border-radius:10px;margin-bottom:12px}.correction-input{width:100%;min-height:80px;padding:12px;border:1px solid rgba(212,197,169,.3);border-radius:10px;font-size:14px;line-height:1.6;color:var(--bark);background:#fff;resize:none;font-family:"Noto Serif SC",serif}.correction-input:focus{outline:none;border-color:var(--tree-green)}.correction-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:12px}.correction-btn{padding:8px 20px;border-radius:16px;font-size:13px;cursor:pointer;font-family:"Noto Serif SC",serif;border:1px solid}.correction-btn.cancel{background:transparent;border-color:#d4c5a94d;color:var(--sand)}.correction-btn.save{background:var(--tree-green);border-color:var(--tree-green);color:#fff}.season-label{position:absolute;bottom:40px;left:50%;transform:translate(-50%);font-size:11px;color:var(--sand);letter-spacing:3px;font-weight:300;opacity:.5}body.night-mode .season-label{color:#96918266}.hint{position:fixed;top:50px;left:50%;transform:translate(-50%);font-size:11px;color:var(--sand);letter-spacing:2px;opacity:0;transition:opacity .8s;pointer-events:none;text-align:center;z-index:5}.hint.show{opacity:.6}.identity-text{position:absolute;top:60px;left:0;right:0;text-align:center;font-size:15px;font-weight:300;color:var(--tree-green);letter-spacing:2px;line-height:2;opacity:0;pointer-events:none;z-index:10;padding:0 40px}body.night-mode .identity-text{color:#c8b991b3}.identity-text.show{animation:identityReveal 2s cubic-bezier(.16,1,.3,1) forwards}.identity-text.fading{animation:identityFadeOut .7s ease forwards}@keyframes identityReveal{0%{opacity:0;transform:translateY(10px);filter:blur(4px)}50%{opacity:.8;filter:blur(0)}to{opacity:1;transform:translateY(0)}}@keyframes identityFadeOut{0%{opacity:1}to{opacity:0;transform:translateY(-6px);filter:blur(2px)}}.mood-label{position:fixed;top:16px;right:16px;font-size:10px;color:var(--sand);letter-spacing:1px;opacity:.4;z-index:5;height:36px;line-height:36px}body.night-mode .mood-label{color:#a09b8c80}.login-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--cream);gap:32px}body.night-mode .login-screen{background:#2a2722}.login-tree{display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 24px rgba(45,74,34,.15))}body.night-mode .login-tree svg g{fill:#6b8a60}body.night-mode .login-tree svg path{stroke:#6b8a60}.login-title{font-size:28px;color:var(--tree-green);letter-spacing:1px;font-weight:600;font-family:"Noto Serif SC",Georgia,serif}body.night-mode .login-title{color:#c8c0b0}.login-subtitle{font-size:13px;color:var(--sand);letter-spacing:1px;margin-top:-16px}.login-btn{padding:14px 48px;border-radius:28px;background:#4a67411a;border:1px solid rgba(74,103,65,.2);color:var(--tree-green);font-size:15px;font-family:"Noto Serif SC",serif;cursor:pointer;transition:all .3s;letter-spacing:2px}body.night-mode .login-btn{background:#8c82641f;border-color:#8c826433;color:#c0b8a0}.login-btn:hover{background:#4a674133;transform:translateY(-2px)}.login-error{font-size:12px;color:#aa5e5e;margin-top:-8px}.login-loading{font-size:12px;color:var(--sand);margin-top:-8px;letter-spacing:1px}.login-form{display:flex;flex-direction:column;gap:12px;width:100%;max-width:280px}.login-input{padding:12px 16px;border-radius:14px;border:1px solid rgba(74,103,65,.15);background:#fff9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:"Noto Serif SC",serif;font-size:14px;color:var(--bark);outline:none;transition:border-color .3s}.login-input:focus{border-color:var(--tree-green)}body.night-mode .login-input{background:#322e2699;border-color:#8c826426;color:#d0c8b8}.login-toggle{font-size:12px;color:var(--tree-green);cursor:pointer;opacity:.7;letter-spacing:.5px}.login-toggle:hover{opacity:1}.login-guest{font-size:12px;color:var(--sand);cursor:pointer;opacity:.5;letter-spacing:1px;margin-top:-8px}.login-guest:hover{opacity:.8}.login-reset-msg{font-size:13px;color:var(--tree-green);text-align:center;padding:12px 20px;letter-spacing:.5px;line-height:1.6}.login-toast{position:fixed;top:60px;left:50%;transform:translate(-50%);padding:10px 28px;border-radius:20px;background:var(--tree-green);color:var(--cream);font-size:13px;font-family:"Noto Serif SC",serif;letter-spacing:1px;z-index:100;animation:toastIn .4s ease,toastOut .4s 1.6s ease forwards;box-shadow:0 4px 16px #4a674140}body.night-mode .login-toast{background:#8c826480;color:#f0eae0}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(-10px)}}.login-agreement{width:100%;max-width:280px;margin-top:-12px}.login-agreement-label{display:flex;align-items:flex-start;gap:8px;font-size:11px;color:var(--sand);line-height:1.6;cursor:pointer}.login-agreement-checkbox{margin-top:2px;width:14px;height:14px;flex-shrink:0;accent-color:var(--tree-green);cursor:pointer}.login-policy-link{background:none;border:none;padding:0;margin:0 2px;font-size:11px;color:var(--tree-green);text-decoration:underline;text-underline-offset:2px;cursor:pointer;font-family:"Noto Serif SC",serif}body.night-mode .login-policy-link{color:#c0b8a0}.login-btn:disabled{opacity:.4;cursor:not-allowed}.policy-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px}.policy-card{background:var(--cream);border-radius:20px;max-width:360px;width:100%;max-height:70vh;overflow-y:auto;padding:24px;-webkit-overflow-scrolling:touch}body.night-mode .policy-card{background:#352f28;border:1px solid rgba(140,130,100,.15)}.policy-title{font-size:17px;font-weight:500;color:var(--tree-green);margin-bottom:16px;letter-spacing:1px}body.night-mode .policy-title{color:#c8c0b0}.policy-body{font-size:13px;line-height:1.9;color:var(--bark)}.policy-body p{margin-bottom:10px}body.night-mode .policy-body{color:#c0b8a8}.policy-close-btn{width:100%;margin-top:20px;padding:12px;border-radius:24px;background:var(--tree-green);color:var(--cream);border:none;font-size:14px;font-family:"Noto Serif SC",serif;cursor:pointer;letter-spacing:1px;transition:all .3s}body.night-mode .policy-close-btn{background:#8c82644d;color:#c0b8a0}.collection-btn{position:fixed;bottom:100px;left:20px;width:36px;height:36px;border-radius:50%;background:#d4c5a926;border:1px solid rgba(212,197,169,.2);color:var(--sand);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:15;transition:all .3s;opacity:.5}.collection-btn:hover{opacity:.8;background:#d4c5a940}body.night-mode .collection-btn{background:#37322a4d;border-color:#8c826426;color:#beb4a080}.collection-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#141914d9;display:flex;align-items:flex-end;justify-content:center;animation:gFadeIn .3s ease}.collection-panel{background:var(--cream);border-radius:24px 24px 0 0;width:100%;max-width:430px;max-height:75vh;padding:20px 24px 32px;display:flex;flex-direction:column;animation:gSlideUp .4s ease}.collection-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.collection-title{font-size:16px;color:var(--bark);font-weight:500;letter-spacing:1px}.collection-close{background:none;border:none;font-size:22px;color:var(--sand);cursor:pointer;padding:4px 8px}.collection-empty{text-align:center;padding:40px 0;color:var(--bark);font-size:14px}.collection-list{overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1;display:flex;flex-direction:column;gap:12px}.collection-item{background:#4a67410f;border:1px solid rgba(74,103,65,.1);border-radius:14px;padding:14px 16px}.collection-item-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.collection-item-title{font-size:14px;color:var(--bark);font-weight:500}.collection-item-score{font-size:14px;color:var(--tree-green);font-weight:600}.collection-item-text{font-size:13px;line-height:1.7;color:var(--bark);opacity:.8;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.collection-item-meta{font-size:11px;color:var(--sand)}.collection-swipe-wrapper{position:relative;overflow:hidden;border-radius:14px;margin-bottom:0}.collection-swipe-content{position:relative;z-index:1;background:var(--cream);transition:transform .2s ease}body.night-mode .collection-swipe-content{background:#2a2722}.collection-swipe-delete{position:absolute;right:0;top:0;bottom:0;width:72px;background:#c45c5c;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-family:"Noto Serif SC",serif;cursor:pointer;letter-spacing:1px}.collection-item{cursor:pointer}.settings-trigger{position:fixed;top:16px;left:16px;width:36px;height:36px;border-radius:50%;background:#ffffff4d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:none;color:var(--sand);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:18;transition:all .3s;opacity:.6}.settings-trigger:hover{opacity:.9;background:#ffffff80}body.night-mode .settings-trigger{background:#37322a66;color:#beb4a099}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:#0003;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:gFadeIn .2s ease}.settings-panel{position:fixed;top:60px;left:16px;width:220px;background:var(--cream);border-radius:16px;padding:8px 0;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;animation:settingsSlide .25s cubic-bezier(.16,1,.3,1)}body.night-mode .settings-panel{background:#352f28;border:1px solid rgba(140,130,100,.12);box-shadow:0 8px 32px #0000004d}@keyframes settingsSlide{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.settings-item{display:flex;align-items:center;gap:12px;padding:12px 16px;transition:background .2s}.settings-item.clickable{cursor:pointer}.settings-item.clickable:hover{background:#4a67410f}body.night-mode .settings-item.clickable:hover{background:#8c82641a}.settings-item.danger .settings-item-label,.settings-item.danger .settings-item-icon{color:#aa5e5e}.settings-item-icon{color:var(--sand);flex-shrink:0;display:flex}body.night-mode .settings-item-icon{color:#beb4a080}.settings-item-content{flex:1;min-width:0}.settings-item-label{font-size:13px;color:var(--bark);font-weight:400}body.night-mode .settings-item-label{color:#c8c0b0}.settings-item-sub{font-size:11px;color:var(--sand);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-subpanel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:320px;max-width:90vw;max-height:80vh;overflow-y:auto;background:var(--cream);border-radius:20px;padding:20px 24px 28px;box-shadow:0 12px 40px #00000026;animation:settingsSlide .3s cubic-bezier(.16,1,.3,1)}body.night-mode .settings-subpanel{background:#352f28;border:1px solid rgba(140,130,100,.12)}.settings-subpanel-header{display:flex;align-items:center;gap:12px;font-size:15px;font-weight:500;color:var(--bark);margin-bottom:20px}body.night-mode .settings-subpanel-header{color:#c8c0b0}.settings-subpanel-back{background:none;border:none;color:var(--sand);cursor:pointer;display:flex;align-items:center;padding:4px}.settings-field{margin-bottom:16px}.settings-field-label{font-size:11px;color:var(--sand);letter-spacing:1px;margin-bottom:6px;display:block}.settings-field-input{width:100%;padding:10px 14px;border-radius:12px;border:1px solid rgba(74,103,65,.15);background:#fff9;font-family:"Noto Serif SC",serif;font-size:13px;color:var(--bark);outline:none;transition:border-color .3s;box-sizing:border-box}.settings-field-input:focus{border-color:var(--tree-green)}body.night-mode .settings-field-input{background:#322e2699;border-color:#8c826426;color:#d0c8b8}.settings-field-btn{margin-top:8px;padding:8px 16px;border-radius:16px;font-size:12px;background:#4a67411a;border:1px solid rgba(74,103,65,.2);color:var(--tree-green);cursor:pointer;font-family:"Noto Serif SC",serif;transition:all .3s}.settings-field-btn:disabled{opacity:.4;cursor:not-allowed}body.night-mode .settings-field-btn{background:#8c82641f;border-color:#8c826433;color:#c0b8a0}.settings-msg{font-size:12px;color:var(--tree-green);margin-top:12px;text-align:center}body.night-mode .settings-msg{color:#c0b8a0}.settings-data-section{padding:14px 0;border-bottom:1px solid rgba(212,197,169,.15)}.settings-data-section:last-of-type{border-bottom:none}.settings-data-label{font-size:13px;color:var(--bark);font-weight:500;margin-bottom:4px}body.night-mode .settings-data-label{color:#c8c0b0}.settings-data-stat{font-size:12px;color:var(--sand);margin-bottom:10px}.settings-data-btn{padding:8px 16px;border-radius:16px;font-size:12px;background:#4a674114;border:1px solid rgba(74,103,65,.15);color:var(--tree-green);cursor:pointer;font-family:"Noto Serif SC",serif;transition:all .3s}.settings-data-btn.danger{background:#aa5e5e14;border-color:#aa5e5e33;color:#aa5e5e}.settings-data-btn:disabled{opacity:.4;cursor:not-allowed}::-webkit-scrollbar{width:0}
