:root{--paper: #fbf5e6;--paper-2: #f3e8cc;--bark: #5a3d22;--bark-soft: #8a6a48;--leaf: #6f9a3e;--leaf-deep: #2f5a2a;--moss: #a9c46a;--sun: #f5c843;--berry: #c9452f;--f-zh: "Iansui", "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", sans-serif;--f-en: "Mali", "Iansui", ui-rounded, "Comic Sans MS", sans-serif;--shadow-soft: 0 3px 0 rgba(90, 61, 34, .25), 0 6px 14px rgba(32, 52, 20, .25);color-scheme:light;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:border-box;height:100%}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--leaf-deep);color:var(--bark);font-family:var(--f-zh);-webkit-tap-highlight-color:transparent;overscroll-behavior:none}img{max-width:100%;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:pointer;touch-action:manipulation}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--sun);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.zy{display:inline-flex;align-items:center;flex-wrap:wrap;line-height:1;font-family:var(--f-zh)}.zy-c{display:inline-flex;align-items:center;margin-right:.1em}.zy-han{font-size:1em;line-height:1.15}.zy-col{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;font-size:.34em;line-height:1.02;width:1.05em;margin-left:.1em;margin-right:.35em;font-family:"PingFang TC","Noto Sans TC","Microsoft JhengHei",var(--f-zh);font-weight:500}.zy-sym{display:block;position:relative}.zy-tone{position:absolute;left:100%;top:-.12em;margin-left:.04em}.zy-light{display:block;height:.6em;line-height:.5}.en{font-family:var(--f-en);font-weight:700;letter-spacing:.01em}.app{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-width:1100px;margin:0 auto;background:var(--leaf-deep)}.main{min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;position:relative}.route-home .main{overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px max(12px,env(safe-area-inset-right,0px)) 8px max(12px,env(safe-area-inset-left,0px));background:linear-gradient(180deg,#24481f,var(--leaf-deep));position:relative;z-index:3}.star-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 16px 3px 4px;background:var(--paper);border-radius:999px;box-shadow:inset 0 0 0 3px var(--sun),var(--shadow-soft);min-height:48px}.star-pill-img{width:44px;height:44px;object-fit:contain;margin:-6px 0 -4px -2px}.star-pill-num{font-family:var(--f-en);font-weight:700;font-size:26px;color:var(--bark);font-variant-numeric:tabular-nums;min-width:1ch}.topbar-right{display:flex;gap:8px;align-items:center}.chip{min-height:44px;min-width:44px;border-radius:999px;background:#fbf5e624;color:var(--paper);display:inline-flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 2px #fbf5e659}.chip:active{transform:scale(.94)}.lang-chip{padding:4px;gap:2px;font-size:14px}.lang-chip span{padding:6px 9px;border-radius:999px;opacity:.7;line-height:1}.lang-chip span:last-child{font-family:var(--f-en);font-weight:700}.lang-chip span.on{background:var(--paper);color:var(--leaf-deep);opacity:1}.icon-chip.muted{opacity:.6}.parent-chip{min-width:40px;min-height:40px;opacity:.75}.map-stage{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow:hidden;isolation:isolate}.map-area{flex:1;min-height:0;container-type:size;display:grid;place-items:center}.map-stage:before{content:"";position:absolute;top:-40px;right:-40px;bottom:-40px;left:-40px;background:var(--blur) center / cover no-repeat;filter:blur(18px) saturate(1.1) brightness(.8);z-index:-1}.map{position:relative;width:min(100cqw,75cqh);aspect-ratio:1086 / 1448;container-type:inline-size;box-shadow:0 10px 30px #0a190873}.map-img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.hotspot{position:absolute;border-radius:42%;z-index:1}.hotspot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;opacity:0;background:radial-gradient(closest-side,rgba(255,246,200,.75),rgba(255,236,150,.25) 70%,transparent);transition:opacity .15s}.hotspot:active:after,.hotspot.pressed:after{opacity:1;animation:glow .45s ease-out}@keyframes glow{0%{transform:scale(.85)}to{transform:scale(1.03)}}.show-areas .hotspot{outline:3px dashed rgba(255,255,255,.95);outline-offset:-3px;background:color-mix(in srgb,var(--zone, #fff) 30%,transparent)}.zone-label{--s: clamp(14px, 4.3cqw, 30px);position:absolute;z-index:2;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:.15em;font-size:var(--s);padding:.18em .55em .18em .2em;background:var(--paper);color:var(--bark);border-radius:999px;box-shadow:inset 0 0 0 .14em var(--zone),0 .12em #5a3d2259,0 .3em .8em #14280a59;white-space:nowrap;width:max-content;animation:bob 3.2s ease-in-out var(--delay) infinite}.zone-label .zy,.nav-label.zy{flex-wrap:nowrap}.zone-label-badge{width:2em;height:2em;object-fit:contain;margin:-.35em 0 -.35em -.3em}.zone-label-text.en{font-size:.82em}.zone-label.pressed{animation:pop .42s ease-out}@keyframes bob{0%,to{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - .18em))}}@keyframes pop{40%{transform:translate(-50%,-50%) scale(1.15)}}.bottomnav{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:6px max(8px,env(safe-area-inset-right,0px)) 8px max(8px,env(safe-area-inset-left,0px));background:var(--paper);border-top:4px solid var(--moss);position:relative;z-index:3}.nav-btn{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;padding:4px 2px 6px;border-radius:18px;min-height:72px;transition:background .15s,transform .15s}.nav-btn:active{transform:scale(.95)}.nav-btn.active{background:var(--paper-2);box-shadow:inset 0 -4px 0 var(--sun)}.nav-icon{width:46px;height:40px;object-fit:contain}.nav-btn.active .nav-icon{transform:translateY(-2px) scale(1.08)}.nav-label{font-size:13px;white-space:nowrap}.nav-label.en{font-size:12px;text-align:center;line-height:1.1}.page{min-height:100%;background:var(--paper);padding:16px max(16px,env(safe-area-inset-right,0px)) 28px max(16px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:16px}.parent-note{margin:0;font-size:14px;line-height:1.6;color:var(--bark-soft);background:var(--paper-2);padding:10px 14px;border-radius:12px;max-width:62ch}.soft-btn{align-self:center;font-size:22px;padding:10px 22px;border-radius:999px;background:var(--leaf);color:var(--paper);box-shadow:var(--shadow-soft)}.soft-btn .zy-col{color:var(--paper)}.back-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;padding:4px 16px 4px 8px;min-height:52px;border-radius:999px;background:var(--paper);color:var(--leaf-deep);box-shadow:inset 0 0 0 3px var(--moss),var(--shadow-soft);font-size:20px}.back-btn-icon{width:36px;height:36px;object-fit:contain}.back-btn:active{transform:scale(.95)}.zone-page{padding-top:0}.zone-hero{position:relative;margin:0 calc(-1*max(16px,env(safe-area-inset-right,0px))) 0 calc(-1*max(16px,env(safe-area-inset-left,0px)))}.zone-hero-img{display:block;width:100%;max-height:44vh;object-fit:cover;object-position:center 35%;border-radius:0 0 28px 28px;box-shadow:inset 0 0 0 4px var(--zone)}.zone-back{position:absolute;left:14px;top:14px}.zone-title{margin:0;display:flex;align-items:center;gap:10px;font-size:34px;font-weight:400;color:var(--zone)}.zone-title-badge{width:72px;height:72px;object-fit:contain}.zone-title-text{text-align:left}.task-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(150px,42vw),1fr));gap:14px}.task-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 10px 14px;background:#fffaf0;border-radius:22px;box-shadow:inset 0 0 0 3px var(--paper-2),0 3px #5a3d2226;transition:transform .12s}.task-card:active{transform:scale(.96)}.task-card-img{width:100%;aspect-ratio:1.08;object-fit:contain;border-radius:16px}.task-card-name{font-size:22px}.task-card-name.en{font-size:17px;text-align:center}.soon-page{align-items:center;text-align:center;padding-top:28px}.soon-art{width:min(220px,56vw);filter:drop-shadow(0 8px 10px rgba(90,61,34,.2))}.soon-art-btn:active{transform:scale(.96)}.soon-title{margin:0;font-size:36px;font-weight:400}.soon-tag{font-size:20px;background:var(--sun);padding:6px 18px;border-radius:999px;box-shadow:var(--shadow-soft)}.soon-gallery{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.soon-gallery img{width:72px;height:72px;object-fit:contain}.parent-page{font-family:var(--f-zh)}.parent-h1{margin:0;font-size:28px;font-weight:400}.gate{display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:24px}.gate-q{font-size:26px;margin:0}.gate-opts{display:flex;gap:12px}.gate-opt{width:76px;height:64px;font-size:28px;font-family:var(--f-en);font-weight:700;border-radius:16px;background:#fffaf0;box-shadow:inset 0 0 0 3px var(--paper-2),var(--shadow-soft)}.gate-wrong{color:var(--berry);margin:0}.parent-msg{margin:0;background:#e8f1d6;color:var(--leaf-deep);padding:10px 14px;border-radius:12px}.panel{background:#fffaf0;border-radius:18px;padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px;box-shadow:inset 0 0 0 2px var(--paper-2)}.panel h2{margin:0;font-size:19px;font-weight:400}.panel.danger h2{color:var(--berry)}.row{display:flex;align-items:center;gap:12px}.row.wrap{flex-wrap:wrap}.big-num{font-family:var(--f-en);font-weight:700;font-size:30px;min-width:2ch;text-align:center;font-variant-numeric:tabular-nums}.pbtn{min-height:44px;padding:8px 16px;border-radius:12px;background:var(--paper-2);font-size:16px}.pbtn.primary{background:var(--leaf);color:#fff}.pbtn.danger-btn{background:var(--berry);color:#fff}.pbtn:disabled{opacity:.45}.hint{margin:0;font-size:14px;color:var(--bark-soft);line-height:1.5}.switch-row,.field{display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:16px}.field{flex-direction:column;align-items:stretch}.switch-row input{width:26px;height:26px;accent-color:var(--leaf)}.field input,.code{font:15px/1.4 ui-monospace,Menlo,monospace;padding:10px;border-radius:10px;border:2px solid var(--paper-2);background:#fff;color:var(--bark);width:100%}.field input{font-family:var(--f-zh);font-size:17px}@media(min-width:700px){.nav-icon{width:58px;height:50px}.nav-label{font-size:19px}.star-pill-num{font-size:30px}.zone-hero-img{max-height:48vh}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.chip-badge{position:absolute;top:-2px;right:-2px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--berry);color:#fff;font:700 12px/20px var(--f-en)}.parent-chip{position:relative}.zone-left,.zone-done{margin-left:.25em;flex:none}.zone-left{min-width:1.3em;height:1.3em;border-radius:999px;background:var(--berry);color:#fff;font:700 .72em/1.3em var(--f-en);text-align:center;padding:0 .3em}.zone-done{width:1.3em;height:1.3em;object-fit:contain}.dry-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 14px;border-radius:999px;background:#fbf5e6f2;box-shadow:inset 0 0 0 3px #3b4f8f,var(--shadow-soft);color:#3b4f8f;white-space:nowrap;max-width:calc(100% - 20px)}.dry-chip-label{font-size:15px;flex-wrap:nowrap}.dry-chip-label.en{font-size:13px}.dry-chip:active{transform:scale(.96)}.prints{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.print{width:46px;height:46px;border-radius:50%;background:#efe2c2;box-shadow:inset 0 -3px #5a3d222e;display:grid;place-items:center}.print img{width:34px;height:34px;object-fit:contain;opacity:.55}.print.on{background:#fff4c7}.print.on img{opacity:1}.prints-goal{width:54px;height:46px;object-fit:contain;filter:grayscale(.7) opacity(.6)}.prints-goal.on{filter:none;animation:pop-in .8s ease-out}.prints.compact{gap:3px;flex-wrap:nowrap}.prints.compact .print{width:24px;height:24px}.prints.compact .print img{width:18px;height:18px}.prints.compact .prints-goal{width:30px;height:26px}.zone-hero .zone-title{padding:14px max(16px,env(safe-area-inset-left,0px)) 0}.night-card{background:linear-gradient(180deg,#2c3d73,#3b4f8f);color:var(--paper);border-radius:24px;padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-soft)}.night-head{display:flex;align-items:center;gap:8px}.night-badge{width:52px;height:52px;object-fit:contain}.night-title{font-size:28px;color:var(--sun);text-align:left}.night-prints-label{display:flex;align-items:center;gap:10px;font-size:18px;text-align:left}.night-count{font:700 20px var(--f-en);color:var(--sun)}.night-card .print{background:#ffffff24;box-shadow:inset 0 0 0 2px #fff3}.night-card .print.on{background:#f5c8434d}.night-goal{background:var(--paper);color:var(--bark);border-radius:16px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.night-goal p{margin:0}.morning-check{background:#ffffff1a;border-radius:16px;padding:10px 12px 12px;display:flex;flex-direction:column;gap:10px}.morning-check h3{margin:0;font-size:15px;font-weight:400;opacity:.85}.mc-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.mc-q{font-size:16px;min-width:0;flex:1 1 180px}.mc-btns{display:flex;gap:8px}.mc-btn{min-height:44px;min-width:72px;padding:6px 14px;border-radius:999px;background:#ffffff29;color:var(--paper);font-size:16px}.mc-btn.sel.yes{background:var(--sun);color:var(--bark)}.mc-btn.sel.no{background:var(--paper);color:var(--bark)}.mc-note{margin:0;font-size:13px;line-height:1.5;opacity:.8}.task-section{display:flex;flex-direction:column;gap:10px}.section-title{margin:0;font-size:22px;font-weight:400;color:var(--bark);display:flex;align-items:center;gap:8px}.section-title.fixed:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--berry)}.task-card{position:relative}.task-card-imgwrap{position:relative;width:100%;display:block}.when-chip{position:absolute;top:4px;left:4px;z-index:1;background:#3b4f8f;color:var(--paper);font:700 14px/1 var(--f-en);padding:5px 9px;border-radius:999px}.when-chip .zy{font-family:var(--f-zh);font-weight:400;font-size:15px}.task-card.pending{box-shadow:inset 0 0 0 4px var(--sun),0 3px #5a3d2226;animation:wait-glow 1.6s ease-in-out infinite}.task-card.done .task-card-img{filter:saturate(.6) brightness(1.05);opacity:.75}.task-stamp{position:absolute;right:-4px;bottom:-6px;width:44%;filter:drop-shadow(0 3px 4px rgba(90,61,34,.3));animation:pop-in .5s ease-out}.task-wait{position:absolute;left:50%;bottom:8px;transform:translate(-50%);background:var(--sun);color:var(--bark);padding:4px 12px;border-radius:999px;font-size:17px;white-space:nowrap;box-shadow:var(--shadow-soft)}.task-wait .zy{flex-wrap:nowrap}.task-dots{display:flex;gap:2px}@keyframes wait-glow{50%{box-shadow:inset 0 0 0 4px var(--sun),0 0 0 6px #f5c84359}}@keyframes pop-in{0%{transform:scale(.2) rotate(-20deg);opacity:0}70%{transform:scale(1.15) rotate(6deg);opacity:1}to{transform:scale(1)}}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#14230f8c;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s ease-out}.sheet{width:min(560px,100%);max-height:92%;overflow-y:auto;background:var(--paper);border-radius:28px 28px 0 0;padding:18px max(18px,env(safe-area-inset-right,0px)) calc(18px + env(safe-area-inset-bottom,0px)) max(18px,env(safe-area-inset-left,0px));animation:slide-up .25s ease-out}@keyframes fade{0%{opacity:0}}@keyframes slide-up{0%{transform:translateY(40px);opacity:0}}.confirm{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.confirm-img{width:min(220px,60vw);border-radius:20px}.confirm-name{font-size:32px}.confirm-hint{margin:0;color:var(--bark-soft);font-size:15px}.confirm-actions{display:flex;flex-direction:column;gap:8px;width:100%}.big-btn{font-size:20px;min-height:56px}.pbtn.ghost{background:transparent;color:var(--bark-soft)}.gate-title{margin:0;font-size:24px;font-weight:400}.celebrate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;align-content:center;gap:6px;background:radial-gradient(circle,#fff4c7d9,#2f5a2a8c 70%);animation:fade .2s ease-out}.celebrate.soft{background:radial-gradient(circle,#fbf5e6e6,#2f5a2a73 70%)}.celebrate-art{width:min(46vw,220px);animation:pop-in .6s ease-out;filter:drop-shadow(0 10px 16px rgba(90,61,34,.35))}.celebrate.big .celebrate-art{width:min(60vw,300px)}.celebrate-text{font:700 56px/1 var(--f-en);color:var(--bark);text-shadow:0 3px 0 #fff;animation:pop-in .6s .1s ease-out both}.celebrate.goal .celebrate-text{font-family:var(--f-zh);font-weight:400;font-size:40px;background:var(--paper);padding:8px 20px;border-radius:999px;text-shadow:none}.celebrate-burst{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.celebrate-burst img{position:absolute;left:50%;top:45%;width:44px;animation:burst 1.2s ease-out forwards;--a: calc(var(--i) * 360deg / var(--n, 10))}@keyframes burst{0%{transform:translate(-50%,-50%) rotate(var(--a)) translateY(0) scale(.3);opacity:1}to{transform:translate(-50%,-50%) rotate(var(--a)) translateY(-38vmin) scale(1);opacity:0}}.plist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.prow{display:flex;align-items:center;gap:8px}.prow-name{flex:1;min-width:0;display:flex;flex-direction:column;font-size:17px}.prow-name small{font-size:12px;color:var(--bark-soft)}.field-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:16px}.field-row input{font:17px var(--f-en);padding:8px 10px;border-radius:10px;border:2px solid var(--paper-2);background:#fff;color:var(--bark);width:150px}.morning-log{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:14px}.morning-log li{display:grid;grid-template-columns:4em 1fr 1fr;gap:8px;padding:4px 8px;background:var(--paper);border-radius:8px}.morning-log .ok{color:var(--leaf-deep)}.morning-log .no{color:var(--bark-soft)}.tset-zone{display:flex;flex-direction:column;gap:6px}.tset-zone h3{margin:8px 0 0;font-size:16px;font-weight:400;color:var(--bark-soft)}.tset-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 0;border-bottom:1px dashed var(--paper-2)}.tset-name{flex:1 1 5em;font-size:16px}.seg{display:inline-flex;background:var(--paper-2);border-radius:10px;padding:2px}.seg button{padding:6px 10px;border-radius:8px;font-size:14px;min-height:36px}.seg button.on{background:var(--leaf);color:#fff}.tset-num{display:inline-flex;align-items:center;gap:4px;font-size:14px}.tset-num select{font:15px var(--f-en);padding:4px;border-radius:8px;border:2px solid var(--paper-2);background:#fff;color:var(--bark)}.vlist{list-style:none;margin:0;padding:0;display:grid;gap:4px}.vrow{width:100%;display:grid;grid-template-columns:2.2em minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:var(--paper);text-align:left;font-size:15px;min-height:44px}.vrow:disabled{opacity:.55;cursor:default}.vnum{font:700 13px var(--f-en);color:var(--bark-soft)}.vtext{min-width:0}.vstate{font-size:13px;color:var(--bark-soft);white-space:nowrap}.vstate.ok{color:var(--leaf-deep);font-weight:700}.bar{display:block;width:100%;height:10px;border-radius:999px;background:var(--paper-2);overflow:hidden}.bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--sun),#f0a92c)}.bar.big{height:16px}.stamp-card{display:grid;grid-template-columns:repeat(var(--cols, 5),minmax(0,1fr));gap:clamp(6px,2.4vw,14px);width:100%;padding:clamp(12px,3.5vw,20px);background:radial-gradient(circle at 12% 18%,rgba(169,196,106,.25),transparent 40%),radial-gradient(circle at 88% 85%,rgba(245,200,67,.22),transparent 45%),#fffaf0;border-radius:22px;box-shadow:inset 0 0 0 3px #e9d9b2,inset 0 0 0 7px #fffaf0,inset 0 0 0 9px #efe2c2,0 4px #5a3d2226}.slot{position:relative;min-width:0;aspect-ratio:1;border-radius:50%;background:#f3e8cc;box-shadow:inset 0 3px #5a3d221f;display:grid;place-items:center;border:2px dashed #d9c497}.slot.on{background:#fff4c7;border:2px solid var(--sun)}.slot.last:not(.on){border-color:var(--berry);border-style:dashed}.slot-num{font:700 clamp(13px,3.6vw,20px) var(--f-en);color:#c9b48a}.slot-goal{width:78%;opacity:.6}.slot-star{width:88%;height:88%;object-fit:contain;filter:drop-shadow(0 2px 2px rgba(90,61,34,.25))}.slot-task{position:absolute;right:-8%;bottom:-8%;width:46%;height:46%;object-fit:cover;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 3px #00000040}.slot.fresh .slot-star,.slot.fresh .slot-task{animation:stamp-in .55s cubic-bezier(.2,1.6,.4,1) both;animation-delay:var(--d, 0s)}.slot.fresh{animation:slot-flash .9s ease-out both;animation-delay:var(--d, 0s)}@keyframes stamp-in{0%{transform:scale(2.6) rotate(-25deg);opacity:0}60%{transform:scale(.85) rotate(4deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes slot-flash{0%{box-shadow:0 0 #f5c843e6}to{box-shadow:0 0 0 16px #f5c84300}}.stamp-card.mini{gap:3px;padding:0;background:none;box-shadow:none;grid-template-columns:repeat(10,minmax(0,1fr))}.stamp-card.mini .slot{border-width:1.5px;box-shadow:none}.stamp-card.mini .slot-num{display:none}.stamp-card.mini .slot-goal{display:block}.stamp-card.mini .slot.last .slot-num{display:grid}.home-dock{position:relative;z-index:4;align-self:center;margin:6px 0 8px;width:min(440px,calc(100% - 16px));display:flex;flex-direction:column;align-items:center;gap:6px}.card-chip{width:100%;display:flex;flex-direction:column;gap:4px;padding:8px 12px 10px;border-radius:20px;background:#fffaf0f5;box-shadow:inset 0 0 0 3px var(--sun),var(--shadow-soft)}.card-chip.ready{animation:wait-glow 1.6s ease-in-out infinite}.card-chip:active{transform:scale(.97)}.card-chip-top{display:flex;align-items:center;justify-content:space-between}.card-chip-label{font-size:17px;flex-wrap:nowrap}.card-chip-num{font:700 17px var(--f-en);color:var(--bark)}.card-chip .stamp-card.mini .slot{max-height:34px}.card-page{gap:14px}.cp-head{display:flex;align-items:baseline;justify-content:space-between}.cp-title{font-size:32px}.cp-no{font-size:16px;color:var(--bark-soft)}.cp-card{display:flex;flex-direction:column;gap:8px;max-width:560px;width:100%;align-self:center}.cp-count{align-self:center;display:flex;align-items:center;gap:6px;font:700 24px var(--f-en)}.cp-count img{width:30px}.cp-picked{align-self:center;display:flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;background:#fffaf0;border-radius:999px;box-shadow:inset 0 0 0 2px var(--paper-2);font-size:18px}.cp-picked img{width:48px;height:48px;border-radius:50%;object-fit:cover}.cp-picked small{display:block;font-size:12px;color:var(--bark-soft)}.cp-reward{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:20px;background:#fffaf0;box-shadow:inset 0 0 0 2px var(--paper-2)}.cp-reward.ready{box-shadow:inset 0 0 0 4px var(--sun);background:#fff4c7}.cp-reward-img{width:64px}.cp-reward-text{flex:1 1 140px;display:flex;flex-direction:column;gap:2px;font-size:16px}.cp-reward-text strong{font-size:22px;font-weight:400}.cp-wish{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:20px;background:#fffaf0;box-shadow:inset 0 0 0 3px #e9a8c8,var(--shadow-soft);text-align:left}.cp-wish>img{width:76px;height:76px;object-fit:cover;border-radius:16px}.cp-wish-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.cp-wish-label{font-size:15px;color:#b0507e}.cp-wish-name{font-size:19px}.cp-wish-num{display:flex;align-items:center;gap:4px;font:700 15px var(--f-en)}.cp-wish-num img{width:18px}.cp-today h2,.cp-history h2{margin:0 0 8px;font-size:18px;font-weight:400;display:flex;align-items:center;gap:8px}.cp-today-n{font:700 18px var(--f-en);color:var(--leaf-deep)}.cp-today-list{display:flex;flex-wrap:wrap;gap:6px}.cp-today-list img{width:48px;height:48px;border-radius:12px;object-fit:cover;box-shadow:0 2px #5a3d2226}.cp-history-list{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px}.cp-mini{flex:none;width:200px;display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:16px;background:#fffaf0;box-shadow:inset 0 0 0 2px var(--paper-2);font-size:14px}.cp-mini.on{box-shadow:inset 0 0 0 3px var(--sun)}.stamp-celebrate{padding:16px;gap:10px}.sc-head{display:flex;align-items:center;gap:4px}.sc-star{width:80px;animation:pop-in .5s ease-out}.sc-plus{font:700 52px var(--f-en);color:var(--bark);text-shadow:0 3px 0 #fff;animation:pop-in .5s .1s ease-out both}.sc-cardwrap{width:min(520px,100%);display:flex;flex-direction:column;gap:8px;background:#fffaf0b3;padding:10px;border-radius:26px}.sc-title{display:flex;align-items:center;justify-content:space-between;font-size:22px;padding:0 6px}.sc-count{font:700 22px var(--f-en)}.sc-full{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:30px;animation:pop-in .7s 1.2s ease-out both}.sc-full img{width:110px}.sc-full-reward{font-size:18px;background:var(--paper);padding:4px 14px;border-radius:999px}.sc-note{display:flex;align-items:center;gap:8px;background:var(--paper);padding:6px 12px;border-radius:999px;font-size:16px;color:#3b4f8f}.rp-head{display:flex;align-items:center;justify-content:space-between}.rp-head h1{margin:0;font-size:32px;font-weight:400}.rp-balance{display:flex;align-items:center;gap:4px;font:700 28px var(--f-en);background:#fffaf0;padding:2px 14px 2px 4px;border-radius:999px;box-shadow:inset 0 0 0 3px var(--sun)}.rp-balance img{width:42px}.rp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(160px,42vw),1fr));gap:14px}.rp-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 10px 14px;border-radius:22px;background:#fffaf0;box-shadow:inset 0 0 0 3px var(--paper-2),0 3px #5a3d2226}.rp-item.ok{box-shadow:inset 0 0 0 3px var(--sun),0 3px #5a3d2226}.rp-item.wish{grid-column:1 / -1;flex-direction:row;text-align:left;flex-wrap:wrap;padding:26px 14px 14px;box-shadow:inset 0 0 0 3px #e9a8c8,0 3px #5a3d2226}.rp-item.wish .rp-img{width:110px}.rp-item.wish .rp-name{flex:1;font-size:22px}.rp-item.wish .bar{flex-basis:100%}.rp-item.locked .rp-img{filter:saturate(.7)}.rp-item:active{transform:scale(.97)}.rp-wish-tag{position:absolute;top:-10px;left:14px;background:#e9a8c8;color:#fff;padding:4px 12px;border-radius:999px;font-size:15px}.rp-wish-tag .zy-col{color:#fff}.rp-img{width:88px;height:88px;object-fit:contain}.rp-img.photo{object-fit:cover;border-radius:16px}.rp-name{font-size:18px;text-align:center;line-height:1.3}.rp-cost{display:flex;align-items:center;gap:4px;font:700 20px var(--f-en)}.rp-cost img{width:24px}.confirm-img.photo{object-fit:cover;aspect-ratio:1}.rp-sheet-name{font-size:26px}.rp-need{padding:4px 0 8px}.reward-art{border-radius:24px}.goal-text{font-family:var(--f-zh)!important;font-weight:400!important;font-size:34px!important;background:var(--paper);padding:8px 20px;border-radius:999px;text-shadow:none!important}.ra-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ra-item{background:var(--paper);border-radius:14px;padding:8px 10px}.ra-row{display:flex;align-items:center;gap:10px;cursor:pointer}.ra-img{width:44px;height:44px;object-fit:cover;border-radius:10px}.ra-name{flex:1;min-width:0;font-size:16px}.ra-name em{font-style:normal;font-size:12px;background:#e9a8c8;color:#fff;padding:1px 8px;border-radius:999px;margin-left:6px}.ra-cost{font:700 15px var(--f-en)}.ra-edit{display:flex;flex-direction:column;gap:10px;padding-top:10px}.ra-icons{display:flex;flex-wrap:wrap;gap:6px}.ra-icons button{width:48px;height:48px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 2px var(--paper-2);padding:4px}.ra-icons button.on{box-shadow:inset 0 0 0 3px var(--leaf)}.ra-icons img{width:100%;height:100%;object-fit:contain}.ra-sub{margin:8px 0 0;font-size:15px;font-weight:400;color:var(--bark-soft)}.morning-log li.ra-log{grid-template-columns:4em 1fr auto}.field-row select{font:16px var(--f-zh);padding:8px;border-radius:10px;border:2px solid var(--paper-2);background:#fff;color:var(--bark)}.money{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}.money-pocket,.money-jar{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:8px;padding:12px 10px;border-radius:22px;background:#fffaf0;box-shadow:inset 0 0 0 3px var(--paper-2),0 3px #5a3d221f}.money-jar{box-shadow:inset 0 0 0 3px #9cc7dd,0 3px #5a3d221f}.money-label{font-size:20px}.money-num{display:flex;align-items:center;gap:4px;font:700 40px var(--f-en)}.money-num img{width:54px}.save-btn{font-size:18px;min-height:52px;width:100%}.save-btn .zy-col{color:#fff}.jar{--s: 150px;position:relative;width:calc(var(--s) * .78);display:flex;flex-direction:column;align-items:center}.jar-lid{width:70%;height:calc(var(--s) * .1);background:linear-gradient(180deg,#a9774b,#7c5131);border-radius:8px 8px 4px 4px;box-shadow:0 2px #00000026}.jar-body{position:relative;width:100%;height:var(--s);margin-top:-2px;border-radius:22% 22% 26% 26%/14% 14% 20% 20%;background:linear-gradient(90deg,#bee1f08c,#ebf8fc59 40%,#bee1f099);box-shadow:inset 0 0 0 3px #78aac3bf,inset 8px 0 #ffffff80;overflow:hidden}.jar-stars{position:absolute;inset:auto 8% 6% 8%;display:flex;flex-wrap:wrap-reverse;justify-content:center;align-content:flex-start;gap:0}.jar-stars img{width:26%;margin:-3% -1%;transform:rotate(var(--r))}.jar-goal-line{position:absolute;left:6%;right:6%;top:8%;border-top:3px dashed #e9a8c8}.jar-drop{position:absolute;left:38%;top:-20%;width:26%;animation:jar-drop .9s cubic-bezier(.5,0,.8,.6) both}@keyframes jar-drop{0%{transform:translateY(0) rotate(0);opacity:1}85%{opacity:1}to{transform:translateY(calc(var(--s) * .9)) rotate(200deg);opacity:0}}.jar-count{margin-top:4px;font:700 28px var(--f-en);color:#3d6f88}.rp-item.wish .jar-cost{color:#3d6f88}.rp-wish-hint{flex-basis:100%;font-size:13px;color:var(--bark-soft)}.cp-wish-num small{font-family:var(--f-zh);font-weight:400;font-size:12px;color:var(--bark-soft)}.confirm-img.small{width:min(140px,40vw)}.think{width:100%;display:flex;flex-direction:column;gap:6px;background:#fffaf0;border-radius:18px;padding:10px 12px}.think-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}.think-row b{font:700 24px var(--f-en)}.think-label{font-size:17px}.think-arrow{font-size:14px;color:var(--berry);text-align:center}.think-wish{margin:4px 0 0;font-size:14px;color:#3d6f88;line-height:1.5}.star-row{display:flex;flex-wrap:wrap;gap:1px}.star-row img{width:22px;height:22px;object-fit:contain}.star-row img.dim{opacity:.35;filter:grayscale(.6)}.star-row-zero{font:700 18px var(--f-en);color:var(--bark-soft)}.think-btn{position:relative;overflow:hidden}.think-btn:disabled{opacity:1;background:#b9cf96}.think-btn:disabled:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--p, 0%);background:var(--leaf);transition:width 1s linear;z-index:0}.think-btn>*{position:relative;z-index:1}.think-btn .zy-col{color:#fff}.save-instead{background:#dcecf4;color:#2f5f77;min-height:50px;font-size:16px}.think-jar{display:flex;align-items:center;gap:14px}.sync-form{display:flex;flex-direction:column;gap:10px}.sync-status{margin:0;display:flex;align-items:center;gap:8px;font-size:17px}.sync-status small{color:var(--bark-soft)}.sync-dot{width:12px;height:12px;border-radius:50%;background:#b9b9b9}.sync-dot.synced{background:var(--leaf)}.sync-dot.syncing{background:var(--sun);animation:wait-glow 1s infinite}.sync-dot.offline,.sync-dot.choose{background:#e3a33b}.sync-dot.error{background:var(--berry)}.sync-choose{display:flex;flex-direction:column;gap:8px;background:#fff4c7;padding:10px 12px;border-radius:14px}.sync-choose p{margin:0;line-height:1.5}.sync-badge{position:absolute;bottom:-2px;right:-2px;width:12px;height:12px;border-radius:50%;border:2px solid var(--leaf-deep);background:var(--leaf)}.sync-badge.syncing{background:var(--sun)}.sync-badge.offline,.sync-badge.choose{background:#e3a33b}.sync-badge.error{background:var(--berry)}.section-title.main:before,.section-title.special:before{content:"";width:12px;height:12px;border-radius:50%;background:var(--sun);box-shadow:0 0 0 2px #e3a33b}.section-title.habit:before{content:"";width:12px;height:12px;border-radius:50% 0;background:var(--leaf)}.section-title.explore:before{content:"";width:12px;height:12px;border-radius:50%;background:#9cc7dd}.s-habit .task-grid,.s-explore .task-grid{grid-template-columns:repeat(auto-fill,minmax(min(120px,28vw),1fr));gap:10px}.task-card.t-main,.task-card.t-special{box-shadow:inset 0 0 0 3px #f3dc8c,0 3px #5a3d2226}.task-card.t-habit,.task-card.t-explore{padding:8px 8px 10px;border-radius:18px}.task-card.t-habit .task-card-name,.task-card.t-explore .task-card-name{font-size:17px}.task-card.t-habit .task-card-name .zy,.task-card .task-card-name.zy{justify-content:center}.task-card.t-habit.done,.task-card.t-explore.done{background:#f1f7e6;box-shadow:inset 0 0 0 3px #b9d38c,0 3px #5a3d221f}.task-card.t-habit.done .task-card-img,.task-card.t-explore.done .task-card-img{opacity:.8;filter:none}.task-stamp.habit,.task-stamp.explore{width:52%;right:-6px;bottom:-6px}.task-card.focus{box-shadow:inset 0 0 0 4px var(--berry),0 3px #5a3d2226}.focus-tag{font-size:14px;color:#fff;background:var(--berry);padding:3px 10px;border-radius:999px;margin-top:-2px}.focus-tag .zy-col{color:#fff}.star-chip{position:absolute;top:4px;right:4px;z-index:1;display:inline-flex;align-items:center;gap:1px;background:#fff8db;color:var(--bark);font:700 15px var(--f-en);padding:2px 8px 2px 3px;border-radius:999px;box-shadow:inset 0 0 0 2px var(--sun)}.star-chip img{width:22px;height:22px}.task-dots img.on{opacity:1}.paused-note{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:18px;color:var(--bark-soft)}.paused-note span{font-size:14px}.notice{position:fixed;left:50%;bottom:calc(100px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:25;width:min(460px,calc(100% - 24px));display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:16px;background:#fff4c7;color:var(--bark);box-shadow:0 8px 24px #14280a4d;font-size:15px;line-height:1.5}.celebrate.mini-pop{background:transparent;pointer-events:none}.celebrate.mini-pop .celebrate-art{width:min(36vw,160px)}.focus-pick{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.focus-pick .pick{padding:8px 12px;border-radius:999px;background:var(--paper);box-shadow:inset 0 0 0 2px var(--paper-2);font-size:15px;min-height:40px}.focus-pick .pick.on{background:var(--berry);color:#fff;box-shadow:none}.focus-pick .pick:disabled{opacity:.45}.tset-name small{display:block;font-size:12px;color:var(--bark-soft);line-height:1.4}.tset-type{font:14px var(--f-zh);padding:6px;border-radius:8px;border:2px solid var(--paper-2);background:#fff;color:var(--bark)}.tset-row.off .tset-name{opacity:.5}.bp-chip{position:relative;width:64px;height:56px;border-radius:16px;background:#fffaf0;box-shadow:inset 0 0 0 3px var(--paper-2),var(--shadow-soft);padding:4px}.bp-chip img{width:100%;height:100%;object-fit:contain}.rp-item.wish{align-items:center}.rp-wish-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;align-items:flex-start}.rp-item.wish .rp-name{font-size:20px;text-align:left}.rp-need{display:flex;align-items:center;gap:4px;font-size:16px;color:var(--berry)}.rp-need b{font:700 20px var(--f-en)}.rp-wait{position:absolute;top:8px;right:8px;left:auto;bottom:auto;transform:none;font-size:14px}.rp-desc{margin:0;font-size:14px;line-height:1.6;color:var(--bark-soft);text-align:left;background:var(--paper-2);padding:8px 12px;border-radius:12px}.rp-requested{font-size:24px;background:var(--sun);padding:8px 18px;border-radius:999px}.make-wish{background:#fbe3ef;color:#a2466f}.make-wish .zy-col{color:#a2466f}.rp-img[src*=night_market]{width:100%;height:auto;max-height:120px;object-fit:cover;border-radius:14px}.rp-item.wish .rp-img[src*=night_market]{width:150px}.bp-head{display:flex;align-items:center;gap:12px}.bp-art{width:110px;border-radius:18px}.bp-title{font-size:26px;text-align:left}.bp-section{display:flex;flex-direction:column;gap:10px}.bp-n{font:700 20px var(--f-en);color:var(--leaf-deep)}.coupon{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;border-radius:18px;background:#fffaf0;box-shadow:inset 0 0 0 3px var(--sun),0 3px #5a3d221f;border-left:8px dashed #f3dc8c}.coupon>img{width:72px;height:72px;object-fit:cover;border-radius:14px}.coupon-body{flex:1 1 140px;min-width:0;display:flex;flex-direction:column;gap:2px}.coupon-body strong{font-size:19px;font-weight:400}.coupon-body span{font-size:13px;color:var(--bark-soft)}.coupon-actions{display:flex;gap:6px}.coupon.pending{box-shadow:inset 0 0 0 3px #e9a8c8;border-left-color:#f5c9dd}.coupon.used{opacity:.6;box-shadow:inset 0 0 0 2px var(--paper-2);border-left-color:var(--paper-2)}.used-stamp{font-size:15px;color:var(--berry);border:2px solid var(--berry);border-radius:8px;padding:2px 8px;transform:rotate(-8deg)}.surprise-panel{box-shadow:inset 0 0 0 3px var(--sun);background:#fffbe8}.seg.big button{font-size:17px;padding:10px 16px;min-height:48px}.sc-note.surprise{background:var(--sun);color:var(--bark);font-size:20px}.ledger-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ledger-sum>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;background:var(--paper);border-radius:14px;padding:10px 6px}.ledger-sum b{font:700 28px var(--f-en)}.ledger-sum span{font-size:14px}.ledger-sum small{font-size:11px;color:var(--bark-soft);line-height:1.4}.ledger{list-style:none;margin:0;padding:0;display:grid;gap:3px;font-size:14px}.ledger li{display:grid;grid-template-columns:3.4em minmax(0,1fr) auto;gap:8px;padding:5px 8px;border-radius:8px;background:var(--paper)}.ledger .l-amt{font:700 14px var(--f-en)}.ledger .earn .l-amt{color:var(--leaf-deep)}.ledger .spend .l-amt,.ledger .fix .l-amt{color:var(--berry)}.ledger .jar .l-amt{color:#3d6f88}.ra-name em.off{background:#b9b9b9}.habit-confirm .pbtn.ghost{border:2px dashed #c9b48a;background:#fffaf0;min-height:52px;font-size:1.05rem}.heart-leaf .hl-body{fill:#6fae4a;stroke:#3f7a2c;stroke-width:2.2}.heart-leaf .hl-vein{stroke:#d8efc0;stroke-width:1.8;fill:none;stroke-linecap:round}.heart-leaf .hl-stem{stroke:#6b4a2b;stroke-width:2.4;fill:none;stroke-linecap:round}.heart-leaf.empty .hl-body{fill:none;stroke:#cdbf9f;stroke-dasharray:4 3}.heart-leaf.empty .hl-vein,.heart-leaf.empty .hl-stem{stroke:#e2d8c2}.dock-row{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;width:100%}.dad-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px 4px 4px;border-radius:999px;background:#fbf5e6f2;box-shadow:inset 0 0 0 3px #4f8a3a,var(--shadow-soft);color:#3f6f2e;white-space:nowrap}.dad-chip:active{transform:scale(.96)}.dad-chip-img{width:40px;height:40px;border-radius:50%;object-fit:cover;object-position:40% 35%}.dad-chip-label{font-size:15px;flex-wrap:nowrap}.dad-chip.done{box-shadow:inset 0 0 0 3px #4f8a3a,0 0 0 4px #6fae4a40,var(--shadow-soft)}.dad-page{padding-bottom:24px}.dad-hero{position:relative;margin:8px 0 12px}.dad-cover{width:100%;border-radius:22px;display:block;box-shadow:var(--shadow-soft)}.dad-title{position:absolute;left:50%;bottom:-14px;transform:translate(-50%);margin:0;padding:6px 18px;border-radius:999px;white-space:nowrap;background:#fffaf0;box-shadow:inset 0 0 0 3px #4f8a3a,var(--shadow-soft);font-size:22px;color:#3f6f2e;cursor:pointer}.dad-today{margin-top:26px;text-align:center}.dad-deck{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;padding:6px 0 4px}.dad-deck-cards{position:relative;width:180px;height:210px}.dad-back{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;background:repeating-linear-gradient(45deg,#5f9a45 0,#5f9a45 10px,#6fae4a 10px,#6fae4a 20px);box-shadow:inset 0 0 0 5px #fff6e0,0 6px 14px #46321e40;display:grid;place-items:center}.dad-back.b3{transform:rotate(-9deg) translate(-14px,6px);opacity:.8}.dad-back.b2{transform:rotate(6deg) translate(12px,4px);opacity:.9}.dad-back.b1 .heart-leaf .hl-body{fill:#fff6e0;stroke:#fff6e0}.dad-back.b1 .heart-leaf .hl-vein{stroke:#6fae4a}.dad-back.b1 .heart-leaf .hl-stem{stroke:#fff6e0}.dad-draw{min-width:200px}.dad-card{display:flex;flex-direction:column;align-items:center;gap:10px}.dad-card-face{position:relative;width:min(100%,340px);padding:0;border-radius:20px;overflow:visible}.dad-card-face img{width:100%;border-radius:20px;display:block;box-shadow:inset 0 0 0 4px #fff,0 8px 18px #46321e40}.dad-card.shuffling .dad-card-face{animation:dad-shake .11s linear infinite}.dad-card.reveal .dad-card-face{animation:pop-in .5s ease-out}.dad-card-stamp{position:absolute;right:-10px;bottom:-14px;filter:drop-shadow(0 4px 6px rgba(40,80,20,.35));animation:pop-in .5s ease-out}.dad-card-name{font-size:26px;color:var(--bark)}.dad-tip{margin:0;max-width:360px;padding:10px 14px;border-radius:14px;background:#f1f6e8;color:#4b5a3a;font-size:14px;text-align:left;line-height:1.6}.dad-done-msg{display:inline-flex;align-items:center;gap:6px;font-size:20px;color:#3f6f2e}@keyframes dad-shake{0%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}to{transform:rotate(-2deg)}}.dad-week{margin-top:22px}.dad-week-num{font:700 26px/1 var(--f-en);color:#3f6f2e;margin-left:4px}.dad-week-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:10px 6px;border-radius:18px;background:#fffaf0;box-shadow:var(--shadow-soft)}.dad-day{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.dad-day.today{background:#f1f6e8;border-radius:12px}.dad-day-label{font-size:15px}.dad-log{margin-top:18px}.dad-log ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.dad-log li{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:12px;background:#fffaf0;font-size:15px}.dad-log li img{width:44px;height:34px;object-fit:cover;border-radius:8px}.heart-celebrate .heart-card{width:min(64vw,300px);border-radius:20px}.heart-fall{animation:heart-fall 1.2s ease-out both;filter:drop-shadow(0 6px 10px rgba(40,80,20,.35));margin-top:-40px}@keyframes heart-fall{0%{transform:translateY(-160px) rotate(-30deg) scale(.5);opacity:0}70%{transform:translateY(8px) rotate(6deg) scale(1.05);opacity:1}to{transform:none}}.dad-admin-img{width:48px;height:36px;object-fit:cover;border-radius:8px;flex:none}.row-field{flex-direction:row!important;align-items:center;gap:8px}@media(prefers-reduced-motion:reduce){.dad-card.shuffling .dad-card-face,.heart-fall,.dad-card-stamp{animation:none}}.dad-title{width:max-content;max-width:calc(100% - 16px);font-size:20px}.dad-title>*{flex-wrap:nowrap}.dad-card-face{width:min(100%,300px)}.hall-page{padding-bottom:24px}.hall-title{margin:6px 0 10px;text-align:center;font-size:24px;color:var(--bark)}.hall-title>*{flex-wrap:nowrap;justify-content:center}.tower-wrap{position:relative;width:100%;max-width:520px;margin:0 auto;border-radius:22px;overflow:hidden;box-shadow:var(--shadow-soft)}.tower-img{width:100%;display:block}.floor-dot{position:absolute;width:9%;aspect-ratio:1;transform:translate(-50%,-50%);padding:0;border-radius:50%;background:#fffaeb8c;box-shadow:0 0 0 2px #ffffffb3;display:grid;place-items:center}.floor-dot img{width:78%;opacity:.7}.floor-dot.on{background:#ffeca0d9;box-shadow:0 0 0 2px #f2c14e,0 0 12px 3px #ffd65ab3}.floor-dot.on img{opacity:1}.floor-dot.cur{display:none}.tower-kid{position:absolute;width:13%;transform:translate(-50%,-100%);transition:left 1.2s ease,top 1.2s ease;filter:drop-shadow(0 4px 6px rgba(60,40,20,.45));pointer-events:none;animation:kid-bob 2.4s ease-in-out infinite}.tower-kid.summit{filter:drop-shadow(0 0 10px rgba(255,220,90,.95))}@keyframes kid-bob{0%,to{translate:0 0}50%{translate:0 -4px}}.tower-info{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;margin:10px 0 4px;font-size:17px}.tower-total{display:inline-flex;align-items:center;gap:4px}.tower-total img{width:26px}.tower-total b,.tower-next b{font:700 24px/1 var(--f-en);color:#c47a12}.tower-next{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px}.badge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.badge-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px 12px;border-radius:18px;background:#fbf1df;box-shadow:var(--shadow-soft);min-width:0}.badge-card.big{grid-column:1 / -1;background:linear-gradient(180deg,#fff3c8,#fbe7b4);box-shadow:0 0 0 3px #f2c14e,var(--shadow-soft)}.badge-img{width:78%;max-width:150px;filter:drop-shadow(0 3px 4px rgba(120,80,20,.25))}.badge-card.big .badge-img{max-width:200px}.badge-card.locked .badge-img{filter:grayscale(.9) opacity(.45)}.badge-card.got .badge-img{animation:none}.badge-name{font-size:17px}.badge-card.big .badge-name{font-size:22px}.badge-date{font:700 14px/1 var(--f-en);color:#8a6a3a}.badge-prog{display:flex;align-items:center;gap:6px;width:86%}.badge-prog .bar{flex:1}.badge-prog b{font:700 14px/1 var(--f-en);color:#8a6a3a;white-space:nowrap}.badge-prog.wide{width:min(100%,280px)}.hall-sheet-img{width:min(56vw,220px)}.hall-sheet-img.locked{filter:grayscale(.9) opacity(.45)}.hall-cond{font-size:17px;color:#6b5a40}.hall-cheer{font-size:20px;color:#b4620e}.gold-rays{position:absolute;left:50%;top:42%;width:140vmax;height:140vmax;transform:translate(-50%,-50%);background:radial-gradient(circle,#ffecaabf 0,#ffecaabf 18%,#ffecaa00 46%),repeating-conic-gradient(from 0deg,#ffdc6e29,#ffdc6e29 8deg,#ffdc6e00 8deg,#ffdc6e00 24deg);animation:rays-spin 40s linear infinite;pointer-events:none;z-index:-1}@keyframes rays-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.badge-celebrate,.floor-celebrate{isolation:isolate}.medal-art{width:min(62vw,260px)!important;filter:drop-shadow(0 0 18px rgba(255,210,80,.8))!important;animation:medal-in .9s cubic-bezier(.2,1.4,.4,1) both!important}@keyframes medal-in{0%{transform:scale(.2) rotate(-25deg);opacity:0}to{transform:none;opacity:1}}.climb-art{width:min(40vw,170px)!important;animation:climb-up 1.1s ease-out both!important}@keyframes climb-up{0%{transform:translateY(120px);opacity:0}to{transform:none;opacity:1}}.celebrate-badge-name{font-size:30px;color:var(--bark);background:#fffaf0;padding:6px 18px;border-radius:999px;box-shadow:0 0 0 3px #f2c14e;animation:pop-in .6s .4s ease-out both}.celebrate-badge-cheer{font-size:20px;color:#7a4a10;animation:pop-in .6s .7s ease-out both}@media(prefers-reduced-motion:reduce){.gold-rays,.tower-kid,.medal-art,.climb-art{animation:none!important}.tower-kid{transition:none}}.charge-chip{display:flex;align-items:center;gap:6px;width:100%;padding:4px 10px 4px 6px;border-radius:999px;background:#fbf5e6f5;box-shadow:inset 0 0 0 3px #3b6ea8,var(--shadow-soft);color:#2f5a8a;white-space:nowrap}.charge-chip:active{transform:scale(.97)}.charge-chip.ready{box-shadow:inset 0 0 0 3px #e0a524,0 0 0 4px #ffd25059,var(--shadow-soft);animation:chip-glow 2.4s ease-in-out infinite}@keyframes chip-glow{50%{box-shadow:inset 0 0 0 3px #e0a524,0 0 14px 6px #ffd2508c,var(--shadow-soft)}}.charge-chip-top{width:38px}.charge-chip-label{font-size:15px;flex-wrap:nowrap}.charge-chip-lamps{display:flex;gap:1px;margin-left:auto}.charge-chip-lamps img{height:26px}.charge-chip-hint{margin-left:auto;font-size:13px;color:#8a7a60}.charge-chip-chest{height:32px}.charge-page{padding-bottom:24px}.station{position:relative;width:100%;max-width:460px;margin:0 auto}.station-arena{position:relative}.arena-img{width:100%;display:block}.station-top{position:absolute;left:50%;top:30%;width:38%;transform:translate(-50%,-50%);filter:drop-shadow(0 8px 6px rgba(40,30,20,.35))}.station-top.spin{animation:top-spin .35s linear infinite}@keyframes top-spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.lamp-row{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:4px;max-width:360px;margin:-4px auto 0;align-items:end}.lamp{display:flex;justify-content:center;align-items:flex-end}.lamp img{height:62px;max-width:100%;object-fit:contain}.lamp.pop img{animation:lamp-pop .6s 1s ease-out both}@keyframes lamp-pop{0%{transform:scale(.6);filter:brightness(1.6)}70%{transform:scale(1.18)}to{transform:none}}.charge-orb{position:absolute;left:50%;bottom:-40px;width:22px;height:22px;margin-left:-11px;border-radius:50%;background:radial-gradient(circle,#fff 0,#fff 25%,#ffe27a 40%,#ffc83c00 70%);box-shadow:0 0 18px 8px #ffdc64cc;animation:orb-fly .9s ease-in both}@keyframes orb-fly{0%{transform:translateY(80px) scale(.6);opacity:0}20%{opacity:1}to{transform:translateY(-150px) scale(1.2);opacity:0}}.charge-celebrate{background:#283c2859}.charge-card{width:min(92vw,420px);padding:14px 12px 16px;border-radius:24px;background:#fffaf0;box-shadow:0 10px 30px #281e1459;display:flex;flex-direction:column;align-items:center;gap:8px;animation:pop-in .4s ease-out}.charge-cheer{font-size:22px;color:#2f5a8a;display:flex;align-items:center;gap:8px}.charge-cheer b,.charge-count b{font:700 26px/1 var(--f-en);color:#c47a12}.charge-full{display:flex;flex-direction:column;align-items:center;gap:6px}.charge-chest{width:150px;animation:chest-pulse 1.6s ease-in-out infinite}@keyframes chest-pulse{50%{transform:scale(1.06);filter:drop-shadow(0 0 16px rgba(255,210,80,.9))}}.charge-count{text-align:center;font-size:19px;margin:8px 0 4px;display:flex;justify-content:center;align-items:center;gap:8px}.charge-setup{text-align:center}.charge-msg{font-size:19px;margin:12px 0 4px}.chest-btn{display:flex;flex-direction:column;align-items:center;gap:4px;margin:6px auto 10px;padding:0}.chest-btn img{width:170px;height:160px;object-fit:contain;object-position:bottom}.chest-btn.glow img{animation:chest-pulse 1.6s ease-in-out infinite}.chest-btn.opening img{animation:chest-shake .15s linear infinite}@keyframes chest-shake{0%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}to{transform:rotate(-4deg)}}.chest-label{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:21px;color:#b4620e}.chest-label.dim{color:#8a7a60;font-size:17px}.chest-label small{font-size:15px}.charge-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:6px}.charge-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:16px;background:#fbf1df;box-shadow:var(--shadow-soft);min-width:0}.charge-item img{width:60px;height:52px;object-fit:cover;border-radius:10px}.charge-item.ok{background:#fff3c8;box-shadow:0 0 0 2px #f2c14e,var(--shadow-soft)}.charge-item-name{font-size:13px}.charge-item-mark{position:absolute;top:2px;right:6px;font-size:18px}.charge-picks{display:flex;flex-wrap:wrap;gap:6px}.charge-picks .pick{padding:8px 12px;border-radius:999px;background:#f3ead6;font-size:15px}.charge-picks .pick.on{background:#3b6ea8;color:#fff}.warn{color:#c0462e}.surprise-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;background:#28322873;animation:fade-in .3s ease-out}@keyframes fade-in{0%{opacity:0}}.surprise-card{position:relative;z-index:2;width:min(88vw,380px);padding:18px 16px;border-radius:26px;background:#fffaf0;box-shadow:0 0 0 4px #f2c14e,0 14px 30px #281e1466;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;animation:medal-in .7s cubic-bezier(.2,1.4,.4,1) both}.surprise-title{font-size:26px;color:#b4620e}.surprise-animal{font-size:110px;line-height:1;animation:animal-hop .9s ease-in-out infinite}@keyframes animal-hop{50%{transform:translateY(-14px)}}.surprise-line{font-size:20px}.surprise-move{position:relative;width:200px;height:200px;display:grid;place-items:center}.move-top{width:150px;animation:top-spin-c .18s linear infinite;filter:drop-shadow(0 0 16px rgba(120,180,255,.9))}@keyframes top-spin-c{to{transform:rotate(360deg)}}.move-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:6px solid rgba(110,170,255,.55);animation:ring-out 1.2s ease-out infinite}.move-ring.r2{animation-delay:.6s;border-color:#ffc85099}@keyframes ring-out{0%{transform:scale(.5);opacity:1}to{transform:scale(1.4);opacity:0}}.secret-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px;border-radius:18px;background:#f1f6e8;box-shadow:inset 0 0 0 3px #b8d49a;font-size:20px;line-height:1.8}.secret-card img{width:90px}.surprise-party-star{width:150px;animation:medal-in .8s cubic-bezier(.2,1.4,.4,1) both,kid-bob 1.6s .8s ease-in-out infinite}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:1}.confetti span{position:absolute;top:-20px;left:calc(var(--i) * 3.6%);width:10px;height:16px;border-radius:3px;background:hsl(calc(var(--i) * 47),80%,62%);animation:confetti-fall calc(2.2s + var(--i) * .04s) calc(var(--i) * .05s) ease-in both}@keyframes confetti-fall{to{transform:translateY(110vh) rotate(calc(var(--i) * 40deg))}}@media(prefers-reduced-motion:reduce){.station-top.spin,.move-top,.move-ring,.charge-orb,.confetti span,.surprise-animal,.chest-btn.glow img,.charge-chest,.charge-chip.ready,.lamp.pop img{animation:none!important}}.charge-chip{width:auto}.charge-chip-lamps{margin-left:2px}.lamp.on img{height:72px}.charge-chip-lamps img[src*=lamp_on]{height:30px}.home-dock.slim{margin:4px 0 6px;gap:0}.card-bar{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px 6px 14px;border-radius:999px;background:#fffaeef7;box-shadow:inset 0 0 0 3px #e3b341,var(--shadow-soft)}.card-bar:active{transform:scale(.98)}.card-bar.ready{animation:chip-glow 2.4s ease-in-out infinite}.card-bar-label{font-size:15px;flex-wrap:nowrap;flex:none}.card-bar-track{position:relative;flex:1;height:14px;border-radius:999px;background:#efe3c6;box-shadow:inset 0 1px 2px #5a3c1433}.card-bar-fill{position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,#f6cf55,#eaa61f);transition:width .6s ease}.card-bar-star{position:absolute;top:50%;width:26px;transform:translate(-50%,-50%);filter:drop-shadow(0 1px 2px rgba(90,60,20,.35))}.card-bar-num{font:700 17px/1 var(--f-en);color:#8a5a10;flex:none}.card-bar-chest{height:30px;flex:none}.map-btn{position:absolute;right:1.5%;width:17%;z-index:3;display:flex;flex-direction:column;align-items:center;gap:2px;padding:0;transform:translateY(-50%)}.map-btn:active{transform:translateY(-50%) scale(.94)}.mb-charge{top:49%}.mb-dad{top:63%}.mb-night{top:77%}.map-btn-circle{width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#fffaf0;box-shadow:0 0 0 3px #fff,0 3px 8px #281e1459}.map-btn-circle img{width:86%;height:86%;object-fit:contain}.map-btn-circle img.mb-photo{width:100%;height:100%;object-fit:cover;object-position:42% 30%}.mb-charge .map-btn-circle{box-shadow:0 0 0 3px #3b6ea8,0 3px 8px #281e1459}.mb-dad .map-btn-circle{box-shadow:0 0 0 3px #4f8a3a,0 3px 8px #281e1459}.mb-night .map-btn-circle{box-shadow:0 0 0 3px #3b4f8f,0 3px 8px #281e1459}.mb-charge.ready .map-btn-circle{box-shadow:0 0 0 3px #e0a524,0 0 14px 5px #ffd250cc;animation:chest-pulse 1.6s ease-in-out infinite}.mb-dad.done .map-btn-circle{box-shadow:0 0 0 3px #6fae4a,0 0 10px 3px #6fae4a99}.map-btn-tag{display:inline-flex;align-items:center;gap:2px;white-space:nowrap;padding:1px 7px;border-radius:999px;background:#fffaeef2;box-shadow:0 1px 3px #281e144d;font:700 13px/1.3 var(--f-en);color:#4b3a20}.map-btn-tag .zy{font-size:12px}.mb-lamp{height:16px}@media(prefers-reduced-motion:reduce){.mb-charge.ready .map-btn-circle,.card-bar.ready{animation:none}}.map-btn{width:13.5%;right:2%}.mb-charge{top:50%}.mb-dad{top:64%}.mb-night{top:73%}.map-btn-tag{font-size:12px;padding:0 6px}.map-btn-tag>.zy{flex-wrap:nowrap}.bottomnav.six{grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;padding-left:max(4px,env(safe-area-inset-left,0px));padding-right:max(4px,env(safe-area-inset-right,0px))}.bottomnav.six .nav-btn{min-width:0;padding:4px 0 6px;border-radius:14px}.bottomnav.six .nav-icon{width:40px;height:36px}.bottomnav.six .nav-icon.round{width:36px;height:36px;border-radius:50%;object-fit:cover;object-position:42% 30%;box-shadow:0 0 0 2px #fff,0 1px 3px #281e144d}.bottomnav.six .nav-label{font-size:12px}.nav-icon-wrap{position:relative;display:inline-flex}.nav-badge{position:absolute;right:-10px;top:-4px;padding:0 4px;border-radius:999px;background:#3b6ea8;color:#fff;font:700 11px/1.4 var(--f-en);box-shadow:0 0 0 2px var(--paper)}.nav-badge.leaf{background:#fff;padding:0;right:-8px}.nav-btn.glow .nav-icon-wrap{animation:chest-pulse 1.6s ease-in-out infinite}.nav-btn.glow .nav-badge{background:#e0a524}.mb-night{top:66%}@media(min-width:700px){.bottomnav.six .nav-icon{width:54px;height:48px}.bottomnav.six .nav-icon.round{width:48px;height:48px}.bottomnav.six .nav-label{font-size:17px}}@media(prefers-reduced-motion:reduce){.nav-btn.glow .nav-icon-wrap{animation:none}}.charge-full .celebrate-badge-name{font-size:24px;padding:6px 14px;max-width:100%}.charge-full .celebrate-badge-name>.zy{flex-wrap:nowrap}.tower-where{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 6px;margin:0 auto 10px;padding:8px 18px;border-radius:999px;background:#fff3c8;box-shadow:0 0 0 3px #f2c14e,var(--shadow-soft)}.tower-where-text{font-size:22px;flex-wrap:nowrap}.tower-where-num{font:700 38px/1 var(--f-en);color:#c47a12}.tower-where-name{font-size:18px;color:#7a4a10;flex-basis:100%;display:flex;justify-content:center}.floor-dot{overflow:visible}.floor-num{position:absolute;right:-6px;top:-6px;min-width:20px;height:20px;border-radius:999px;display:grid;place-items:center;background:#fff;color:#8a6a3a;font:700 12px/1 var(--f-en);box-shadow:0 1px 3px #281e1459}.floor-dot.on .floor-num{background:#e0a524;color:#fff}.nav-badge.floor{background:#c47a12}.surprise-animal-img{width:min(48vw,190px);animation:animal-hop .9s ease-in-out infinite;filter:drop-shadow(0 6px 8px rgba(80,50,20,.25))}@media(prefers-reduced-motion:reduce){.surprise-animal-img{animation:none}}.pop-out{animation:pop-out .9s cubic-bezier(.2,1.5,.4,1) both}@keyframes pop-out{0%{transform:translateY(160px) scale(.2) rotate(-200deg);opacity:0}60%{opacity:1}to{transform:none;opacity:1}}.s-animal .surprise-animal-img{animation:pop-out .9s cubic-bezier(.2,1.5,.4,1) both,animal-wave 1.1s 1s ease-in-out infinite;transform-origin:50% 90%}@keyframes animal-wave{0%,to{transform:rotate(0)}25%{transform:rotate(-6deg) translateY(-8px)}75%{transform:rotate(6deg) translateY(-8px)}}.move-ring.r3{animation-delay:.3s;border-color:#ff787880}.sparkle-burst{position:absolute;left:50%;top:45%;width:0;height:0;pointer-events:none;z-index:1}.sparkle-burst img{position:absolute;width:28px;left:-14px;top:-14px;animation:sparkle-fly 1.1s ease-out both;--a: calc(var(--i) * 25.7deg)}@keyframes sparkle-fly{0%{transform:rotate(var(--a)) translateY(0) scale(.3);opacity:1}to{transform:rotate(var(--a)) translateY(-46vmin) scale(1);opacity:0}}.new-tag{position:absolute;top:-12px;right:-8px;padding:4px 10px;border-radius:999px;background:#e0473a;color:#fff;font:700 15px/1 var(--f-en);box-shadow:0 2px 6px #00000040;transform:rotate(8deg);animation:pop-in .5s .9s ease-out both}.gift-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 14px;border-radius:18px;background:#fff3c8;box-shadow:inset 0 0 0 3px #f2c14e}.gift-card img{width:90px}.gift-card b{font-size:22px;color:#7a4a10;line-height:1.5}.gift-card small{font-size:14px;color:#8a6a3a}.collection{margin-top:18px}.collection-num{font:700 22px/1 var(--f-en);color:#c47a12;margin-left:6px}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;padding:10px;border-radius:18px;background:#fffaf0;box-shadow:var(--shadow-soft)}.collection-item{position:relative;aspect-ratio:1;border-radius:16px;background:#f3ead6;display:grid;place-items:center;overflow:hidden}.collection-item img{width:78%;height:78%;object-fit:contain;filter:brightness(0) opacity(.18)}.collection-item.got{background:#fff3c8;box-shadow:inset 0 0 0 2px #f2c14e}.collection-item.got img{filter:none}.collection-q{position:absolute;font:700 24px/1 var(--f-en);color:#b9a985}.gift-row input{flex:1;min-width:0;padding:8px 10px;border-radius:10px;border:1px solid #d9cba9;font-size:16px}@media(prefers-reduced-motion:reduce){.pop-out,.s-animal .surprise-animal-img,.sparkle-burst img,.new-tag{animation:none!important}}.water-sheet{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.water-title{font-size:24px;color:#2f5a8a}.cup-gauge{filter:drop-shadow(0 6px 10px rgba(40,70,110,.2))}.cup-water{transition:y .8s cubic-bezier(.3,1.3,.5,1),height .8s cubic-bezier(.3,1.3,.5,1)}.cup-wave{animation:wave 2.4s ease-in-out infinite;transition:transform .8s}@keyframes wave{50%{transform:translate(-20px)}}.water-num{font:700 20px/1 var(--f-en);color:#4b6a8a}.water-num b{font-size:34px;color:#2f7ac0}.water-full{font-size:22px;color:#c47a12;animation:pop-in .5s ease-out}.water-add{min-width:240px;font-size:20px}.water-add small,.water-school small{font:700 14px/1 var(--f-en);opacity:.85}.water-school{min-width:240px}.water-row{justify-content:center;gap:10px}.task-water{display:flex;align-items:center;gap:6px;width:86%;margin-top:2px}.task-water .bar{flex:1}.task-water .bar span{background:linear-gradient(90deg,#7cc8f0,#3b8fd0)}.task-water b{font:700 13px/1 var(--f-en);color:#2f7ac0}@media(prefers-reduced-motion:reduce){.cup-wave{animation:none}}.dad-hero{max-width:520px;margin-left:auto;margin-right:auto}.dad-cover{max-height:30vh;object-fit:cover;object-position:50% 30%}.dad-page .dad-today,.dad-page .dad-week,.dad-page .dad-log{max-width:560px;margin-left:auto;margin-right:auto}.task-dots img{width:22px;height:22px;object-fit:contain}.task-dots img.off{opacity:.45}.dad-again{margin-top:6px}.dad-again small{font:700 13px/1 var(--f-en);opacity:.85}.dad-day-leaf{position:relative;display:inline-flex}.dad-day-count{position:absolute;right:-8px;bottom:-4px;font:700 12px/1 var(--f-en);color:#3f6f2e;background:#fff;border-radius:999px;padding:1px 4px;box-shadow:0 1px 2px #0003}.bottomnav.six.five{grid-template-columns:repeat(5,minmax(0,1fr))}.shop-page{gap:12px}.shop-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.shop-title{display:flex;align-items:center;gap:8px;font-size:28px;color:var(--bark)}.shop-title img{width:46px;height:46px;object-fit:contain}.shop-balance{display:flex;align-items:center;gap:6px;padding:6px 16px 6px 8px;border-radius:999px;background:#fffaf0;box-shadow:inset 0 0 0 3px var(--sun),var(--shadow-soft)}.shop-balance img{width:40px;height:40px}.shop-balance b{font:700 30px var(--f-en);color:var(--bark)}.shop-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px;border-radius:20px;background:#fffaf0bf;box-shadow:inset 0 0 0 2px var(--paper-2)}.shop-tab{position:relative;padding:8px 2px;border-radius:15px;font-size:16px;color:var(--bark-soft)}.shop-tab.on{background:var(--leaf);color:#fff;box-shadow:0 3px 0 var(--leaf-deep)}.shop-tab .chip-badge{position:absolute;top:-4px;right:2px}.wish-banner{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 10px;border-radius:22px;background:linear-gradient(135deg,#fff6fb,#fffaf0);box-shadow:inset 0 0 0 3px #e9a8c8,var(--shadow-soft)}.wish-img{width:84px;height:84px;object-fit:contain;border-radius:16px;flex:none}.wish-img.photo{object-fit:cover}.wish-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.wish-label{align-self:flex-start;font-size:15px;color:#b0507e}.wish-name{font-size:19px;line-height:1.3;color:var(--bark)}.wish-bar{height:14px}.wish-num{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font:700 16px var(--f-en)}.wish-num img{width:18px}.wish-change{flex:none;align-self:flex-start;padding:6px 10px;border-radius:14px;font-size:14px;background:#fff;color:#b0507e;box-shadow:inset 0 0 0 2px #e9a8c8}.wish-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;width:100%}.wish-opt{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border-radius:18px;background:#fffaf0;box-shadow:inset 0 0 0 2px var(--paper-2);font-size:15px}.wish-opt.on{box-shadow:inset 0 0 0 3px #e9a8c8;background:#fff6fb}.wish-opt>img{width:72px;height:72px;object-fit:contain;border-radius:12px}.wish-opt>img.photo{object-fit:cover}.wish-opt small{display:flex;align-items:center;gap:3px;font:700 14px var(--f-en)}.wish-opt small img{width:16px}.rl-list{display:flex;flex-direction:column;gap:10px}.rl-row{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px 10px 10px;border-radius:20px;background:#fffaf0;text-align:left;box-shadow:inset 0 0 0 2px var(--paper-2),0 3px #5a3d221f}.rl-row.ok{box-shadow:inset 0 0 0 3px var(--sun),0 3px #5a3d222e}.rl-img{width:72px;height:72px;flex:none;object-fit:contain;border-radius:14px;background:#fff}.rl-img.photo{object-fit:cover}.rl-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.rl-name{font-size:19px;line-height:1.3;color:var(--bark)}.rl-wish{margin-right:4px;color:#d0679a}.rl-cost{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font:700 18px var(--f-en);color:var(--bark)}.rl-cost img{width:20px}.rl-can,.rl-need{font:400 14px var(--f-zh);font-style:normal;padding:1px 8px;border-radius:999px}.rl-can{background:#e6f2cf;color:var(--leaf-deep)}.rl-need{background:var(--paper-2);color:var(--bark-soft)}.rl-bar{height:10px}.rl-btn{flex:none;padding:10px 14px;border-radius:16px;font-size:18px;background:var(--leaf);color:#fff;box-shadow:0 3px 0 var(--leaf-deep)}.rl-btn.off{background:#e4dcc8;color:#a3927a;box-shadow:0 3px #cbbfa4}.rl-sum{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;font:700 26px var(--f-en);margin:4px 0}.rl-sum img{width:28px}.rl-sum small{width:100%;text-align:center;font:400 14px var(--f-zh);color:var(--bark-soft)}.sure-q{font-size:24px;color:var(--berry);text-align:center;margin:4px 0 2px}.card-tab,.mine-tab{display:flex;flex-direction:column;gap:14px}.card-tab .cp-no{align-self:center}.cp-explain{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;margin:0;font-size:17px;color:var(--bark);text-align:center}.cp-explain>img{width:20px}.cp-explain small{width:100%;font-size:13px;color:var(--bark-soft)}.coupon.ticket{background:repeating-linear-gradient(90deg,#fffaf0 0,#fffaf0 14px,#fff6e0 14px,#fff6e0 28px)}.coupon>img.photo{object-fit:cover}.coupon>img:not(.photo){object-fit:contain;background:#fff}.mine-foot{display:flex;align-items:center;gap:8px}.mine-foot img{width:34px}.reward-fly .rf-stars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.reward-fly .rf-stars img{position:absolute;left:50%;top:40%;width:44px;margin:-22px 0 0 -22px;opacity:0;animation:rf-fly 1.1s ease-in forwards;animation-delay:calc(var(--i) * .12s)}@keyframes rf-fly{0%{opacity:0;transform:translate(var(--x),-46vh) scale(1.2) rotate(0)}15%{opacity:1}85%{opacity:1;transform:translate(0) scale(.7) rotate(300deg)}to{opacity:0;transform:translate(0) scale(.2) rotate(360deg)}}.reward-fly .rf-gift{animation:rf-pop .6s ease-out both;animation-delay:1.5s}.reward-fly .rf-gift .reward-art.photo{border-radius:24px;object-fit:cover}@keyframes rf-pop{0%{transform:scale(.7)}60%{transform:scale(1.15)}to{transform:scale(1)}}.reward-fly .celebrate-burst,.reward-fly .rf-name,.reward-fly .rf-sum,.reward-fly .rf-note{animation:rf-in .4s ease-out both;animation-delay:1.7s}@keyframes rf-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rf-sum{display:flex;align-items:center;gap:6px;font:700 26px var(--f-en);color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.35)}.rf-sum img{width:28px}.rf-note{font-size:18px;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.35)}@media(prefers-reduced-motion:reduce){.reward-fly .rf-stars{display:none}.reward-fly .rf-gift,.reward-fly .celebrate-burst,.reward-fly .rf-name,.reward-fly .rf-sum,.reward-fly .rf-note{animation:none}}.ra-months{display:block;font-size:12px;color:var(--bark-soft)}.jump-boy{position:absolute;z-index:2;padding:0;background:none;border:0}.jump-boy img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 2px rgba(30,50,20,.35));transform-origin:50% 100%;animation:jump-boy 1.6s ease-in-out infinite}.jump-boy.pressed img,.jump-boy:active img{animation:none;transform:scale(.92)}@keyframes jump-boy{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-7%)}}@media(prefers-reduced-motion:reduce){.jump-boy img{animation:none}}.voice-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.voice-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:8px 10px;border-radius:14px;background:#fffaf0;box-shadow:inset 0 0 0 2px var(--paper-2)}.voice-text{flex:1 1 160px;font-size:16px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.voice-text small{font-size:12px;padding:1px 8px;border-radius:999px}.voice-text small.mine{background:#e6f2cf;color:var(--leaf-deep)}.voice-text small.base{background:var(--paper-2);color:var(--bark-soft)}.voice-text small.none{background:#fde3dc;color:var(--berry)}.rec-btns{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.voice-more summary{cursor:pointer;padding:8px 0;color:var(--bark-soft)}.xmas-door{position:absolute;z-index:2;padding:0;border:0;background:none}.xd-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;transition:opacity .8s ease;filter:drop-shadow(0 3px 2px rgba(30,40,20,.35))}.xmas-door.day .xd-night,.xmas-door.night .xd-day{opacity:0}.xmas-door.night .xd-night{filter:drop-shadow(0 0 10px rgba(255,205,90,.85)) drop-shadow(0 3px 2px rgba(30,40,20,.35));animation:xd-glow 3.2s ease-in-out infinite}@keyframes xd-glow{50%{filter:drop-shadow(0 0 16px rgba(255,215,110,1)) drop-shadow(0 3px 2px rgba(30,40,20,.35))}}.xmas-door:active .xd-img{transform:scale(.95)}.xd-sparkles{position:absolute;top:-8%;right:-10%;bottom:-8%;left:-10%;pointer-events:none;opacity:0}.xmas-door.night .xd-sparkles{opacity:1}.xd-sparkles i{position:absolute;width:9px;height:9px;background:radial-gradient(circle,#fff7c2 0,#fff7c2 30%,#ffdc7800 70%);border-radius:50%;animation:xd-twinkle 2.6s ease-in-out infinite}.xd-sparkles i:nth-child(1){left:8%;top:18%}.xd-sparkles i:nth-child(2){right:6%;top:30%;animation-delay:.7s}.xd-sparkles i:nth-child(3){left:20%;bottom:12%;animation-delay:1.3s}.xd-sparkles i:nth-child(4){right:18%;top:4%;animation-delay:1.9s}@keyframes xd-twinkle{0%,to{transform:scale(.4);opacity:.2}50%{transform:scale(1.4);opacity:1}}.xd-test{position:absolute;left:50%;bottom:-6px;transform:translate(-50%);padding:0 6px;border-radius:8px;font-size:11px;background:#8e5bc4;color:#fff}.xd-bubble{position:absolute;z-index:6;left:50%;top:34%;transform:translate(-50%);width:min(86%,420px);padding:14px 16px;border-radius:22px;background:#fffaf0;box-shadow:inset 0 0 0 3px #b48ad8,var(--shadow-soft);display:flex;flex-direction:column;align-items:center;gap:6px;font-size:20px;color:#5b3a86;text-align:center;animation:xd-pop .35s ease-out both}@keyframes xd-pop{0%{opacity:0;transform:translate(-50%,10px) scale(.9)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.xmas-door.night .xd-night,.xd-sparkles i,.xd-bubble{animation:none}.xd-img{transition:none}}.xmas-page{gap:14px;--xm-purple: #8e5bc4;--xm-cream: #fff8e8}.xm-testbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-radius:14px;background:#efe3fb;color:#5b3a86;font-size:14px;box-shadow:inset 0 0 0 2px #c9a8ea}.xm-locked{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 16px;text-align:center;font-size:22px;color:#5b3a86}.xm-locked img{width:200px}.xm-head{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px;border-radius:24px;background:linear-gradient(180deg,#fff8e8,#f3ead2);box-shadow:inset 0 0 0 3px #e4cfa0,var(--shadow-soft)}.xm-night .xm-head{background:linear-gradient(180deg,#3b3566,#57508a);box-shadow:inset 0 0 0 3px #8d7fc7,var(--shadow-soft);color:#fff4c8}.xm-cabin{width:100%;max-width:520px;height:auto}.xm-head h1{margin:0;font-size:30px;font-weight:400;color:inherit}.xm-sub{margin:0;font-size:16px;color:var(--xm-purple)}.xm-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.xm-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px 10px;border-radius:22px;background:var(--xm-cream);box-shadow:inset 0 0 0 3px #d9c3ef,var(--shadow-soft)}.xm-card>img{height:110px;width:100%;object-fit:contain}.xm-card-label{font-size:16px;line-height:1.25;text-align:center;color:var(--bark)}.xm-card .chip-badge{position:absolute;top:6px;right:6px}.xm-newmail{position:absolute;top:4px;left:50%;transform:translate(-50%);padding:1px 8px;border-radius:999px;background:var(--berry);color:#fff;font-size:12px;white-space:nowrap;animation:kid-bob 1.6s ease-in-out infinite}.xm-mini-num{font:700 14px var(--f-en);color:var(--xm-purple)}@media(max-width:380px){.xm-card>img{height:84px}.xm-card-label{font-size:14px}}.xm-chances{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;font-size:18px}.xm-chances b{font:700 26px var(--f-en);color:var(--xm-purple)}.xm-chances small{width:100%;text-align:center;font-size:14px;color:var(--bark-soft)}.xm-tree{position:relative;width:min(88vw,400px);aspect-ratio:228 / 313;align-self:center;margin-top:18px}.xm-tree-img{width:100%;height:100%;object-fit:contain}.xm-orn,.xm-slot{position:absolute;width:13%;aspect-ratio:1;transform:translate(-50%,-50%)}.xm-orn{object-fit:contain;filter:drop-shadow(0 2px 1px rgba(30,40,20,.35))}.xm-orn.fresh{animation:xm-hang .7s cubic-bezier(.3,1.6,.5,1) both}@keyframes xm-hang{0%{transform:translate(-50%,-160%) scale(.4);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.xm-slot{border-radius:50%;border:3px dashed #fff;background:#ffffff59;animation:xm-pulse 1.2s ease-in-out infinite;padding:0}@keyframes xm-pulse{50%{transform:translate(-50%,-50%) scale(1.15);background:#fff0a099}}.xm-topstar{position:absolute;left:50%;top:-5%;width:26%;transform:translate(-50%);filter:drop-shadow(0 0 12px rgba(255,220,100,.95));animation:xm-star 2.4s ease-in-out infinite}@keyframes xm-star{50%{transform:translate(-50%) scale(1.06) rotate(4deg)}}.xm-topstar-slot{position:absolute;left:50%;top:-6%;width:26%;transform:translate(-50%);padding:0;border-radius:50%;border:3px dashed #ffd55a;background:#fff5be80;animation:xm-pulse2 1.2s ease-in-out infinite}.xm-topstar-slot img{width:100%;opacity:.55}@keyframes xm-pulse2{50%{transform:translate(-50%) scale(1.12)}}.xm-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;font-size:18px}.xm-hint>img{width:36px}.xm-orn-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%}.xm-orn-opt{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px;border-radius:16px;background:#fffaf0;box-shadow:inset 0 0 0 2px var(--paper-2);font-size:13px}.xm-orn-opt img{width:52px;height:52px;object-fit:contain}.xm-mailbox{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:12px;min-height:170px}.xm-mailbox>img{height:170px}.xm-mail-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;border-radius:18px;background:#fffaf0;box-shadow:inset 0 0 0 3px #e9a8c8,var(--shadow-soft);font-size:16px}.xm-mail-btn img{width:70px}.xm-mail-btn.new{animation:kid-bob 1.4s ease-in-out infinite;box-shadow:inset 0 0 0 3px var(--berry),var(--shadow-soft)}.xm-wait{align-self:center;margin:0;font-size:16px;color:var(--bark-soft)}.xm-fly{position:absolute;width:90px;left:50%;bottom:-40px;animation:xm-fly 1.6s ease-in forwards}@keyframes xm-fly{0%{transform:translate(-50%,120px) scale(1.4) rotate(-10deg)}60%{transform:translate(-80%,-40px) scale(1) rotate(8deg)}to{transform:translate(-90%,-100px) scale(.3);opacity:0}}.xm-paper{display:flex;flex-direction:column;gap:10px;padding:18px 16px;border-radius:18px;background:repeating-linear-gradient(#fffdf6 0,#fffdf6 34px,#e9e2cf 34px,#e9e2cf 35px);box-shadow:inset 0 0 0 4px #cfe0b4,inset 0 0 0 8px #fffdf6,inset 0 0 0 10px #e7b0b0,var(--shadow-soft)}.xm-paper-title{font-size:22px;text-align:center;color:#5b3a86}.xm-paper-title small{display:block;font-size:13px;color:var(--bark-soft)}.xm-paper-hint{margin:0;text-align:center;font-size:16px}.xm-wishes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.xm-wish{position:relative}.xm-wish-main{width:100%;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 2px var(--paper-2);font-size:15px}.xm-wish.on .xm-wish-main{box-shadow:inset 0 0 0 4px var(--xm-purple);background:#f7f0ff}.xm-wish-main img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.xm-wish-noimg{font-size:44px;line-height:1.6}.xm-fav{position:absolute;top:-8px;right:-6px;width:36px;height:36px;border-radius:50%;background:#fff;box-shadow:var(--shadow-soft);font-size:20px;padding:0}.xm-letter-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.xm-reply{display:flex;flex-direction:column;gap:10px;width:100%}.xm-reply-art{width:100%;max-width:420px;align-self:center}.xm-reply-text{white-space:pre-wrap;font-size:18px;line-height:1.7;padding:12px 14px;border-radius:14px;background:repeating-linear-gradient(#fffdf6 0,#fffdf6 30px,#ece4d0 30px,#ece4d0 31px);color:var(--bark)}.xm-cal{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:14px;border-radius:22px;background:linear-gradient(180deg,#c98a4b,#a86c35);box-shadow:inset 0 0 0 4px #e8c18a,var(--shadow-soft)}.xm-cell{position:relative;aspect-ratio:1;border-radius:12px;background:#8e5a2b;box-shadow:inset 0 0 0 2px #f1d3a2;color:#fff6dc;display:flex;align-items:center;justify-content:center;padding:0}.xm-cell-num{position:absolute;top:3px;left:6px;font:700 15px var(--f-en)}.xm-cell.ready{background:#e0a85c;box-shadow:inset 0 0 0 3px #fff2b8,0 0 10px #ffe68ce6;animation:xm-glow 1.6s ease-in-out infinite}.xm-cell.ready .xm-cell-num{position:static;font-size:22px;color:#5a3d22}@keyframes xm-glow{50%{box-shadow:inset 0 0 0 3px #fff2b8,0 0 18px #ffe68c}}.xm-cell.opened{background:#fff6dc;color:#8e5a2b}.xm-cell.opened img{width:58%;height:58%;object-fit:contain;margin-top:8px}.xm-cell.locked{opacity:.8}.xm-lock{font-size:18px;opacity:.8;margin-top:8px}.xm-cell.last{background:#b02e3a}.xm-cell.last.opened{background:#ffe3e3}.xm-cell.shake{animation:xm-shake .4s}@keyframes xm-shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.xm-cal-open h3{margin:4px 0 0;font-size:22px;font-weight:400}.xm-cal-open p{margin:0;font-size:18px;line-height:1.6;text-align:center}.xm-cal-art{width:90px;height:90px;object-fit:contain;animation:xm-hang .7s cubic-bezier(.3,1.6,.5,1) both}@media(prefers-reduced-motion:reduce){.xm-orn.fresh,.xm-slot,.xm-topstar,.xm-topstar-slot,.xm-mail-btn.new,.xm-fly,.xm-cell.ready,.xm-cal-art,.xm-newmail{animation:none}}@media print{body.printing *{visibility:hidden!important}body.printing .print-me,body.printing .print-me *{visibility:visible!important}body.printing .print-me{position:absolute;left:0;top:0;width:100%;box-shadow:none}body.printing .no-print{display:none!important}}.xm-testbar{flex-wrap:wrap}.xm-door-preview{display:flex;gap:10px}.xm-door-preview img{width:46%;max-width:160px;border-radius:14px;background:#7da35c;padding:6px}.xm-door-preview img.night{background:#2e2a55}.xm-habits{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px 10px}.xm-habit{display:flex;align-items:center;gap:6px;font-size:15px}.xm-noimg{display:flex;align-items:center;justify-content:center;font-size:30px}.xm-cal-edit{display:grid;gap:4px;margin:8px 0}.xmas-door:before{content:"";position:absolute;top:-18%;right:-22%;bottom:-8%;left:-22%;border-radius:50%;background:radial-gradient(closest-side,#ffd66ebf,#ffbe5040 60%,#ffbe5000);opacity:0;transition:opacity .8s ease;pointer-events:none}.xmas-door.night:before{opacity:1;animation:xd-halo 3.2s ease-in-out infinite}@keyframes xd-halo{50%{transform:scale(1.08);opacity:.8}}@media(prefers-reduced-motion:reduce){.xmas-door.night:before{animation:none}}.xm-tree-view,.xm-letter-view,.xm-cal-view{display:flex;flex-direction:column;gap:12px;width:100%;max-width:620px;align-self:center}.xm-tree-view{align-items:center}.xm-tree-view>.section-title,.xm-letter-view>.section-title,.xm-cal-view>.section-title{align-self:flex-start}.xm-cards,.xm-head{width:100%;max-width:760px;align-self:center}.xd-shadow{position:absolute;left:10%;right:10%;bottom:-3%;height:14%;border-radius:50%;background:radial-gradient(closest-side,#28321473,#28321400);pointer-events:none}.xd-img{filter:none}.xd-grass{position:absolute;z-index:3;pointer-events:none;object-fit:fill}.xd-test{bottom:auto;top:-4px}.xmas-door .xd-open{opacity:0}.xmas-door.day .xd-night,.xmas-door.night .xd-day{opacity:0!important}.xmas-door.opening .xd-closed{opacity:0;transition:opacity .35s ease}.xmas-door.opening.day .xd-day.xd-open,.xmas-door.opening.night .xd-night.xd-open{opacity:1;transition:opacity .35s ease}.xmas-door.opening{animation:xd-ring .5s ease-in-out}@keyframes xd-ring{25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.xmas-door.opening:before{opacity:1;animation:xd-halo-open 1.4s ease-in forwards}@keyframes xd-halo-open{to{transform:scale(1.8);opacity:1}}.xmas-door.opening .xd-sparkles{opacity:1}.xmas-door.opening .xd-sparkles i{animation:xd-burst 1.2s ease-out forwards}.xd-sparkles i:nth-child(5){left:45%;top:40%;animation-delay:.3s}.xd-sparkles i:nth-child(6){left:60%;top:55%;animation-delay:1.1s}.xmas-door.opening .xd-sparkles i:nth-child(n){animation-delay:calc(.35s + var(--k, 0) * .08s);width:14px;height:14px}@keyframes xd-burst{0%{transform:translate(0) scale(.5);opacity:0}30%{opacity:1}to{transform:translate(var(--bx, 0),var(--by, -60px)) scale(1.6);opacity:0}}.xd-sparkles i:nth-child(1){--bx: -50px;--by: -40px;--k: 0}.xd-sparkles i:nth-child(2){--bx: 50px;--by: -30px;--k: 1}.xd-sparkles i:nth-child(3){--bx: -40px;--by: 30px;--k: 2}.xd-sparkles i:nth-child(4){--bx: 30px;--by: -70px;--k: 3}.xd-sparkles i:nth-child(5){--bx: -10px;--by: -80px;--k: 4}.xd-sparkles i:nth-child(6){--bx: 60px;--by: 20px;--k: 5}.xd-zoom{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;pointer-events:none;background:radial-gradient(circle at var(--x) var(--y),#fffbe6 0,#ffe08a 12%,rgba(255,200,90,.85) 28%,rgba(255,190,80,0) 48%);background-size:100% 100%;opacity:0;animation:xd-zoom 1.7s ease-in forwards}@keyframes xd-zoom{0%,50%{opacity:0;clip-path:circle(0% at var(--x) var(--y))}60%{opacity:1;clip-path:circle(8% at var(--x) var(--y))}to{opacity:1;clip-path:circle(150% at var(--x) var(--y));background-color:#fff6d8}}.xm-enter-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;pointer-events:none;background:#fff6d8;animation:xm-enter .9s ease-out forwards}@keyframes xm-enter{to{opacity:0}}.xm-cal-photo{width:100%;max-width:340px;aspect-ratio:4 / 3;object-fit:cover;border-radius:18px;box-shadow:var(--shadow-soft);animation:xm-hang .6s ease-out both}.xm-cal-media{align-items:center}.xm-cal-thumb{width:56px;height:56px;object-fit:cover;border-radius:10px}.xm-cal-open{align-items:center}@keyframes xm-pop-in{0%{transform:translateY(-30px) scale(.6);opacity:0}to{transform:none;opacity:1}}.xm-cal-photo,.xm-cal-art{animation:xm-pop-in .6s cubic-bezier(.3,1.5,.5,1) both}.tset-edit{display:flex;align-items:center;gap:8px;text-align:left;background:none;padding:0}.tset-img{width:40px;height:40px;object-fit:cover;border-radius:10px;flex:none}.tset-pen{font-style:normal;color:var(--bark-soft);font-size:14px}.tset-own{font-style:normal;font-size:11px;padding:0 6px;border-radius:8px;background:#efe3fb;color:#5b3a86}.tset-add{margin-top:6px}.task-editor{display:flex;flex-direction:column;gap:10px;width:100%}.task-editor h2{margin:0;font-size:22px;font-weight:400}.te-photo{display:flex;align-items:center;gap:12px}.te-photo>img{width:84px;height:84px;object-fit:cover;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 2px var(--paper-2)}.zy-preview{display:flex;flex-wrap:wrap;gap:4px;padding:8px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 2px var(--paper-2);font-size:26px}.zy-chip{padding:2px 4px;border-radius:8px;background:none}.zy-chip.multi{box-shadow:inset 0 0 0 2px #f0a64a}.zy-chip.on{background:#fff0d6}.zy-pick{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.zy-pick input{width:9em}.xm-compose{align-items:center}.xm-mic{display:flex;flex-direction:column;align-items:center;gap:4px;width:140px;height:140px;justify-content:center;border-radius:50%;background:linear-gradient(180deg,#b98be0,#8e5bc4);color:#fff;font-size:16px;box-shadow:0 5px #6a3f9a,var(--shadow-soft)}.xm-mic-icon{font-size:44px;line-height:1}.xm-mic.on{background:linear-gradient(180deg,#e46a6a,#c9452f);box-shadow:0 5px #8e2a1b;animation:xm-rec 1s ease-in-out infinite}@keyframes xm-rec{50%{transform:scale(1.05)}}.xm-sent{display:flex;flex-direction:column;gap:10px}.xm-sent-title{margin:0;font-size:20px;font-weight:400}.xm-day{padding:10px;border-radius:16px;background:#fffaf0;box-shadow:inset 0 0 0 2px var(--paper-2);display:flex;flex-direction:column;gap:6px}.xm-day-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font:700 18px var(--f-en);color:#5b3a86}.xm-letter-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.xm-letter-no{font:700 13px var(--f-en);color:var(--bark-soft)}.xm-wish-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 2px;border-radius:999px;background:#f7f0ff;box-shadow:inset 0 0 0 2px #d9c3ef;font-size:14px}.xm-wish-chip img{width:30px;height:30px;border-radius:50%;object-fit:cover}.xm-x{background:none;padding:0 2px;font-size:16px;color:var(--berry)}.xm-admin-day{display:flex;flex-direction:column;gap:6px;padding:10px;margin:8px 0;border-radius:14px;background:#fffaf0;box-shadow:inset 0 0 0 2px var(--paper-2)}.xm-admin-letter{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.xm-addwish{width:100%}.xm-admin-reply{display:flex;flex-direction:column;gap:6px;padding-top:6px;border-top:1px dashed var(--paper-2)}@media(prefers-reduced-motion:reduce){.xm-mic.on{animation:none}}.parent-tabs{position:sticky;top:0;z-index:5;display:flex;gap:6px;overflow-x:auto;padding:8px 4px;margin:0 -4px;background:var(--paper);scrollbar-width:none}.parent-tabs::-webkit-scrollbar{display:none}.parent-tab{position:relative;flex:none;padding:8px 14px;border-radius:999px;font-size:16px;background:#fffaf0;color:var(--bark);box-shadow:inset 0 0 0 2px var(--paper-2);white-space:nowrap}.parent-tab.on{background:var(--leaf);color:#fff;box-shadow:0 3px 0 var(--leaf-deep)}.parent-tab .chip-badge{position:absolute;top:-4px;right:-4px}.parent-tabs{flex-wrap:wrap;overflow:visible}.parent-tab{padding:7px 12px;font-size:15px}.xg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px 16px;background:radial-gradient(circle at 50% 40%,#4b3f86,#1f1a3d 70%);color:#fff6d8;overflow:auto}.xg-snow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.xg-snow i{position:absolute;top:-10px;width:8px;height:8px;border-radius:50%;background:#fff;opacity:.8;animation:xg-snow linear infinite}@keyframes xg-snow{to{transform:translateY(110vh) translate(20px)}}.xg-title{font-size:26px;text-align:center;text-shadow:0 2px 6px rgba(0,0,0,.4)}.xg-box{width:min(60vw,260px);aspect-ratio:1;padding:0;background:none;animation:xg-wobble 1.6s ease-in-out infinite;filter:drop-shadow(0 0 24px rgba(255,215,110,.8))}.xg-box img{width:100%;height:100%;object-fit:contain}@keyframes xg-wobble{0%,to{transform:rotate(0)}20%{transform:rotate(-6deg) scale(1.03)}40%{transform:rotate(6deg)}60%{transform:rotate(-3deg) scale(1.05)}}.xg-tap{font-size:20px;animation:kid-bob 1.4s ease-in-out infinite}.xg-reveal{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:460px}.xg-spark{position:absolute;top:-10px;width:90%;opacity:.9;animation:xd-twinkle 2s ease-in-out infinite;pointer-events:none}.xg-santa{width:min(55vw,240px);animation:xg-jump .9s cubic-bezier(.3,1.6,.5,1) both;filter:drop-shadow(0 6px 12px rgba(0,0,0,.4))}@keyframes xg-jump{0%{transform:translateY(120px) scale(.3);opacity:0}to{transform:none;opacity:1}}.xg-merry{font-size:34px;color:#ffe08a;text-shadow:0 2px 8px rgba(0,0,0,.5);animation:rf-in .5s .7s ease-out both}.xg-text{margin:0;font-size:19px;line-height:1.6;text-align:center;animation:rf-in .5s .9s ease-out both}.xg-photo{width:100%;max-width:360px;border-radius:20px;box-shadow:0 0 0 4px #ffe08a,0 8px 20px #0006;animation:rf-in .5s 1.2s ease-out both}.xg-hint{margin:0;padding:8px 14px;border-radius:14px;background:#ffe08a33;font-size:18px;animation:rf-in .5s 1.4s ease-out both}.xg .pbtn{color:var(--bark)}.xm-gift-again{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:18px;background:#fff6e0;box-shadow:inset 0 0 0 3px #f1c76a,var(--shadow-soft);font-size:18px}.xm-gift-again img{width:44px}.xm-memory-books{display:flex;flex-wrap:wrap;gap:10px}.xm-memory-book{display:flex;flex-direction:column;align-items:center;gap:4px;width:120px;padding:10px 6px;border-radius:18px;background:#f7f0ff;box-shadow:inset 0 0 0 3px #d9c3ef,var(--shadow-soft);font-size:14px}.xm-memory-book img{height:80px}.xm-memory-book b{font:700 18px var(--f-en);color:#5b3a86}@media(prefers-reduced-motion:reduce){.xg-snow,.xg-box,.xg-tap,.xg-spark{animation:none}.xg-snow{display:none}}.xm-light{width:7%;border-radius:50% 50% 46% 46%;border:0;padding:0;background:radial-gradient(circle at 40% 35%,#fff 0 18%,var(--c) 45%,var(--c2) 100%);box-shadow:0 0 10px 3px var(--glow);animation:xm-twinkle 1.6s ease-in-out infinite;animation-delay:var(--d, 0s)}.xm-light:before{content:"";position:absolute;left:30%;right:30%;top:-18%;height:22%;border-radius:2px;background:#6b5a3e}.light_gold{--c: #ffd54a;--c2: #e0a400;--glow: rgba(255, 214, 80, .9)}.light_red{--c: #ff6b6b;--c2: #c62828;--glow: rgba(255, 90, 90, .85)}.light_blue{--c: #7fc8ff;--c2: #2d7fd0;--glow: rgba(110, 190, 255, .85)}@keyframes xm-twinkle{0%,to{filter:brightness(1);box-shadow:0 0 10px 3px var(--glow)}50%{filter:brightness(.55);box-shadow:0 0 2px 0 var(--glow)}}.xm-light-icon{display:inline-block;width:34px;height:40px;border-radius:50% 50% 46% 46%;background:radial-gradient(circle at 40% 35%,#fff 0 18%,var(--c) 45%,var(--c2) 100%);box-shadow:0 0 10px 3px var(--glow);animation:xm-twinkle 1.6s ease-in-out infinite}.xm-orn-opt .xm-light-icon{margin:6px 0}.xm-hint .xm-light-icon{width:24px;height:28px}.xm-orn.moving{filter:drop-shadow(0 0 8px #fff) drop-shadow(0 0 4px #ffd54a);transform:translate(-50%,-50%) scale(1.25);z-index:2}.xm-orn{cursor:pointer}.xm-topstar-slot.waiting{animation:none;opacity:.5;border-color:#ffd55ab3}.xm-topstar-slot.waiting img{opacity:.35;filter:grayscale(.4)}.sheet{position:relative}.sheet-close{position:absolute;top:10px;right:10px;z-index:3;width:40px;height:40px;border-radius:50%;background:#fff;color:var(--bark);font-size:20px;padding:0;box-shadow:var(--shadow-soft)}.xm-santa-voice img{width:40px;height:40px;object-fit:contain}@media(prefers-reduced-motion:reduce){.xm-light,.xm-light-icon{animation:none}}.xm-light{width:8.5%}.xm-scene{position:relative;width:100%;max-width:520px;align-self:center;padding:34px 0 0;border-radius:28px;overflow:hidden;background:linear-gradient(180deg,#2b3a6e,#4a4a8c 45%,#6d5a9e 70%,#8d79b5);box-shadow:inset 0 0 0 4px #c9a8ea,inset 0 0 0 8px #fff8e8,inset 0 0 0 10px #d8b98a,var(--shadow-soft);display:flex;flex-direction:column;align-items:center}.xm-scene:not(.night){background:linear-gradient(180deg,#9fc3e6,#c8dcef 45%,#e8e4f2 75%,#f6efe2)}.xm-sky{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(1.6px 1.6px at 12% 14%,#fff,transparent),radial-gradient(1.4px 1.4px at 28% 32%,#fff,transparent),radial-gradient(2px 2px at 46% 9%,#fff8c8,transparent),radial-gradient(1.4px 1.4px at 66% 22%,#fff,transparent),radial-gradient(1.8px 1.8px at 84% 12%,#fff,transparent),radial-gradient(1.4px 1.4px at 92% 36%,#fff,transparent),radial-gradient(1.4px 1.4px at 6% 44%,#fff,transparent);animation:xm-sky 4s ease-in-out infinite;pointer-events:none}.xm-scene:not(.night) .xm-sky{opacity:.25}@keyframes xm-sky{50%{opacity:.55}}.xm-scene-snow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:3}.xm-scene-snow i{position:absolute;top:-10px;border-radius:50%;background:#fff;opacity:.85;animation:xg-snow linear infinite}.xm-tree-glow{position:absolute;left:50%;top:12%;width:110%;aspect-ratio:1;transform:translate(-50%);background:radial-gradient(closest-side,#ffd6788c,#ffc8642e 55%,#ffc86400 75%);pointer-events:none;animation:xd-halo 4s ease-in-out infinite}.xm-scene:not(.night) .xm-tree-glow{opacity:.5}.xm-scene .xm-tree{margin-top:0;z-index:1;width:min(84vw,380px);filter:drop-shadow(0 10px 10px rgba(20,20,50,.35))}.xm-ground{position:relative;z-index:2;width:130%;height:70px;margin-top:-46px;border-radius:50% 50% 0 0;background:radial-gradient(ellipse at 50% 20%,#fff,#e6eef9 60%,#cbd8ee);box-shadow:inset 0 6px 10px #fffc}.xm-gifts{position:absolute;z-index:3;bottom:26px;filter:drop-shadow(0 4px 3px rgba(30,30,60,.35))}.xm-gifts.left{left:12%;width:22%}.xm-gifts.right{right:14%;width:15%}.xm-garland{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.g-wire{fill:none;stroke:#503c1e73;stroke-width:.5}.g-dots{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-dasharray:0 7}.g-dots.a{stroke:#ffe27a;filter:drop-shadow(0 0 1.5px #ffd54a);animation:g-tw 1.8s ease-in-out infinite}.g-dots.b{stroke:#ff9db0;stroke-dashoffset:3.5;filter:drop-shadow(0 0 1.5px #ff8aa0);animation:g-tw 1.8s ease-in-out infinite .9s}@keyframes g-tw{0%,to{opacity:1}50%{opacity:.25}}.xm-scene .xm-topstar,.xm-scene .xm-topstar-slot{top:-7%}.xm-chances{padding:6px 16px;border-radius:999px;background:#fff8e8;box-shadow:inset 0 0 0 2px #e4cfa0}.xm-cabin-wrap{position:relative;width:100%;max-width:520px}.xm-cabin-wrap .xm-cabin{display:block;width:100%}.xm-fire{position:absolute;left:16%;top:55%;width:16%;height:22%;pointer-events:none;mix-blend-mode:screen}.xm-fire i{position:absolute;left:50%;bottom:0;width:70%;height:100%;transform:translate(-50%);border-radius:50% 50% 40% 40%;background:radial-gradient(ellipse at 50% 80%,#ffe678f2,#ff8c2899 45%,#ff5a1400 75%);animation:xm-flame .9s ease-in-out infinite alternate}.xm-fire i:nth-child(2){width:50%;left:35%;animation-duration:.7s;animation-delay:.2s}.xm-fire i:nth-child(3){width:50%;left:65%;animation-duration:1.1s;animation-delay:.4s}@keyframes xm-flame{0%{transform:translate(-50%) scaleY(.85);opacity:.75}to{transform:translate(-50%) scaleY(1.12) skew(3deg);opacity:1}}.xm-cabin-wrap:after{content:"";position:absolute;left:8%;top:40%;width:34%;height:50%;border-radius:50%;background:radial-gradient(closest-side,#ffaa3c59,#ffaa3c00);animation:xm-glowfire 1.6s ease-in-out infinite alternate;pointer-events:none}@keyframes xm-glowfire{to{opacity:.45;transform:scale(1.06)}}.xm-window{position:absolute;top:6%;height:44%;overflow:hidden;pointer-events:none;border-radius:40% 40% 4px 4px/30% 30% 4px 4px}.xm-window.w1{left:72.8%;width:9.5%}.xm-window.w2{left:84.2%;width:9.5%}.xm-window i{position:absolute;top:-6px;width:4px;height:4px;border-radius:50%;background:#fff;animation:xm-wsnow 3.2s linear infinite}@keyframes xm-wsnow{to{transform:translateY(140px) translate(6px)}}@media(prefers-reduced-motion:reduce){.xm-sky,.xm-scene-snow,.xm-tree-glow,.g-dots,.xm-fire i,.xm-cabin-wrap:after,.xm-window i{animation:none}.xm-scene-snow,.xm-window{display:none}}.xm-scene{padding-top:64px}.xm-scene .xm-tree{width:min(74vw,330px)}.xm-scene .xm-topstar,.xm-scene .xm-topstar-slot{top:-12%}.g-dots{stroke-width:3.4;stroke-dasharray:0 8}.g-dots.a{stroke:#fff3a0;filter:drop-shadow(0 0 2px #ffd54a) drop-shadow(0 0 3px #ffd54a)}.g-dots.b{stroke-dashoffset:4;stroke:#ffc2cf}.g-wire{stroke:#3c2d1499;stroke-width:.7}.xm-gifts.left{left:14%;width:16%}.xm-gifts.right{right:15%;width:15%}.xm-ground{height:80px;margin-top:-52px}@keyframes xm-twinkle{0%,to{filter:brightness(1.15);box-shadow:0 0 12px 4px var(--glow)}50%{filter:brightness(.8);box-shadow:0 0 5px 1px var(--glow)}}.santa-toggle{display:inline-flex;align-items:center;gap:4px;font-size:14px;padding:4px 10px;border-radius:999px;background:#fde3dc;color:#8e2a1b}.xm-tree{aspect-ratio:640 / 987}.xm-scene .xm-tree{width:min(78vw,360px)}.xm-scene .xm-topstar,.xm-scene .xm-topstar-slot{top:-8%;width:22%}.xm-orn,.xm-slot{width:11%}.xm-light{width:7.5%}.xm-ground{margin-top:-40px;height:64px}.xg-box{width:min(88vw,420px);aspect-ratio:800 / 538}.xg-santa{width:min(62vw,280px)}.xm-ground{margin-top:-22px;height:48px}.xg-sack{width:min(52vw,230px);animation:xg-walk 1.2s ease-out both}@keyframes xg-walk{0%{transform:translate(-60vw)}to{transform:none}}.xg-box{width:min(58vw,260px);aspect-ratio:516 / 560}.xg-pop{position:relative;display:flex;flex-direction:column;align-items:center;width:min(80vw,320px)}.xg-openbox{width:62%;margin-top:-26%;position:relative;z-index:1;animation:rf-pop .5s ease-out both}.xg-pop .xg-santa{position:relative;z-index:2;width:78%;animation:xg-jump 1s .25s cubic-bezier(.3,1.6,.5,1) both}.xg-pop .xg-spark{top:10%;z-index:0}.xg-burst{position:absolute;left:50%;bottom:22%;z-index:3;width:0;height:0;pointer-events:none}.xg-burst i{position:absolute;width:16px;height:16px;margin:-8px;background:radial-gradient(circle,#fff7c2 0,#fff7c2 30%,#ffd54a 50%,#ffd54a00 72%);border-radius:50%;animation:xg-burst 1.1s ease-out both}@keyframes xg-burst{0%{transform:rotate(var(--a)) translateY(0) scale(.3);opacity:1}to{transform:rotate(var(--a)) translateY(-150px) scale(1.2);opacity:0}}@media(prefers-reduced-motion:reduce){.xg-sack,.xg-openbox,.xg-pop .xg-santa,.xg-burst{animation:none}.xg-burst{display:none}}.xm-gift-again{gap:14px;padding:12px 16px;font-size:20px;background:linear-gradient(135deg,#fff6e0,#f7f0ff)}.xm-gift-again img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(90,60,120,.3))}
