@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/bricolage-grotesque-vietnamese-wght-normal.96a5d80f.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/bricolage-grotesque-latin-ext-wght-normal.232ded7b.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/bricolage-grotesque-latin-wght-normal.3e340e57.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_next/static/media/fredoka-hebrew-wght-normal.6d68c364.woff2) format("woff2-variations");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_next/static/media/fredoka-latin-ext-wght-normal.e34b1451.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_next/static/media/fredoka-latin-wght-normal.75fd644a.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Baloo\ 2 Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(/_next/static/media/baloo-2-devanagari-wght-normal.852045ba.woff2) format("woff2-variations");unicode-range:u+0900-097f,u+1cd0-1cf9,u+200c-200d,u+20a8,u+20b9,u+20f0,u+25cc,u+a830-a839,u+a8e0-a8ff,u+11b00-11b09}@font-face{font-family:Baloo\ 2 Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(/_next/static/media/baloo-2-vietnamese-wght-normal.a19aa5c9.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Baloo\ 2 Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(/_next/static/media/baloo-2-latin-ext-wght-normal.2418a309.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Baloo\ 2 Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(/_next/static/media/baloo-2-latin-wght-normal.7dab5caa.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--paper:#f5f2fa;--card:#fff;--ink:#221c3a;--muted:#6e6787;--soft:#4f4868;--line:#e6e0f2;--line2:#efeaf8;--accent:#4b3a8f;--accent-t:#e9e3f7;--accent-ink:#2e2266;--night:#241b4f;--night2:#2f2563;--night3:#3a2c7a;--moon:#ffe7a3;--moon-ink:#4a3600;--coral:#ff8a65;--coral-sh:#d9603c;--coral-ink:#3a1404;--coral-t:#ffe6dc;--teal:#3fd0c9;--teal2:#7fe3de;--teal-t:#ddf6f4;--teal-ink:#0f4d4a;--lilac:#b9a8ff;--ok:#2fa597;--info-t:#e7eef8;--info-ink:#2a4870;--school-t:#e3f1e7;--school-ink:#24533a;--parent-t:#f6ebda;--parent-ink:#6a4512;--danger:#8a3b12;--danger-t:#fbe7dc;--backdrop:#e4dfee;--display:"Bricolage Grotesque Variable","Bricolage Grotesque",system-ui,sans-serif;--body:"Bricolage Grotesque Variable","Bricolage Grotesque",system-ui,-apple-system,"Segoe UI",sans-serif;--fredoka:"Fredoka Variable","Fredoka","Baloo 2 Variable",system-ui,sans-serif;--baloo:"Baloo 2 Variable","Baloo 2","Fredoka Variable",system-ui,sans-serif;--sky:#c9c1e6;--sand:#ffddb0;--gold:#ffe7a3;--gold-t:#fff3d2;--gold-ink:#5c3c06;--water:#74a8c9;--water-t:#e9f1f3;--cream:#fff6e6;--mist:var(--paper);--dusk:#241b4f;--dusk2:#2f2563;--dusk3:#3a2c7a;--dusk-fg:#f4f1ff;--dusk-muted:#b9b0da;--dusk-line:#463a86;--dteal:#3fd0c9;color-scheme:light}body,html{height:100%}body{margin:0;background:var(--backdrop);color:var(--ink);font-family:var(--body);font-size:16px;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased}#app{height:100dvh;max-width:440px;margin:0 auto;display:flex;flex-direction:column;background:var(--paper);position:relative;overflow:hidden}@media (min-width:520px){#app{box-shadow:0 0 0 1px #d6cfe6,0 30px 60px rgba(36,27,79,.18)}}.view{flex:1 1;overflow-y:auto;-webkit-overflow-scrolling:touch;position:relative}.pad{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:16px 28px;display:flex;flex-direction:column;gap:14px}.parent{background:var(--paper)}h1,h2,h3{margin:0;font-family:var(--display);font-weight:700;text-wrap:balance;letter-spacing:-.4px}h1{font-size:28px;line-height:1.08;font-weight:800}h2{font-size:21px;line-height:1.15}h3{font-size:17px}p{margin:0;line-height:1.45}button,input,select,textarea{font-family:inherit;font-size:16px}[data-a],a,body,button,html{touch-action:manipulation}button:active{transform:scale(.97)}button{cursor:pointer;color:inherit}:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.muted{color:var(--muted)}.small{font-size:14px}.tiny{font-size:12.5px}.over-line{font-size:11.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.col{display:flex;flex-direction:column;gap:10px}.grow{flex:1 1;min-width:0}.center{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.err{color:var(--danger)}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.card{background:var(--card);border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:12px;border:1px solid var(--line2)}.card.dusk{background:var(--night);color:#f4f1ff;border-color:var(--night)}.card.dusk .muted{color:var(--dusk-muted)}.card.dusk .seg{background:var(--night3);box-shadow:none}.card.dusk .seg button{color:#d9d2f5}.card.dusk .seg button[aria-pressed=true]{background:var(--moon);color:var(--night)}.card.gold{background:var(--gold-t);color:var(--gold-ink);border-color:#f6e2a8}.card.tint{background:var(--accent-t);color:var(--accent-ink);border-color:#dcd3f2}.card.night{color:#f4f1ff;border-color:var(--night)}.btn,.card.night{background:var(--night)}.btn{border:0;border-radius:999px;min-height:48px;padding:0 20px;font-weight:700;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-size:16px}.btn.big{min-height:60px;font-size:19px}.btn.gold{background:var(--moon);color:var(--night)}.btn.coral{background:var(--coral);color:var(--coral-ink)}.btn.ghost{background:var(--card);color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line);font-weight:600}.btn.link{background:transparent;color:var(--accent);text-decoration:underline;text-underline-offset:4px;font-weight:600;min-height:44px;padding:0 4px}.btn[disabled]{opacity:.45;cursor:default}.btn.full{width:100%}.iconbtn{width:44px;border-radius:999px;border:0;justify-content:center;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line2)}.iconbtn,.pill{height:44px;background:var(--card);display:inline-flex;align-items:center}.pill{gap:7px;padding:0 16px 0 10px}.pill,.tag{border-radius:999px;font-weight:700}.tag{display:inline-flex;align-items:center;height:24px;padding:0 10px;font-size:12px;white-space:nowrap;background:var(--accent-t);color:var(--accent-ink)}.tag.ai{background:var(--info-t);color:var(--info-ink)}.tag.school{background:var(--school-t);color:var(--school-ink)}.tag.sample{background:var(--gold-t);color:#6b4508}.tag.ok{background:var(--teal-t);color:var(--teal-ink)}.tag.parent{background:var(--parent-t);color:var(--parent-ink)}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:4px;gap:4px;padding:4px;border-radius:999px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}.seg button{border:0;border-radius:999px;min-height:42px;background:transparent;font-weight:700;font-size:15px;color:var(--soft)}.seg button[aria-pressed=true]{background:var(--night);color:#fff}.seg.soft{background:var(--accent-t);box-shadow:none}.seg.soft button[aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px rgba(36,27,79,.12)}.opt{border:1.5px solid var(--line);background:var(--card);border-radius:16px;min-height:52px;padding:10px 14px;text-align:left;font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;color:var(--ink)}.opt[aria-pressed=true]{border:2px solid var(--accent);background:var(--accent-t)}.chip{border:1.5px solid var(--line);background:var(--card);border-radius:999px;min-height:44px;padding:0 15px;font-weight:600;font-size:14px;color:var(--ink)}.chip[aria-pressed=true]{border:2px solid var(--accent);background:var(--accent-t);color:var(--accent-ink)}.listrow{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line2)}.card.dusk .listrow,.card.night .listrow{border-color:var(--dusk-line)}.bar{height:10px;background:var(--line2);overflow:hidden}.bar,.bar i{border-radius:999px}.bar i{display:block;height:100%;background:var(--accent);transition:width .4s ease}.segbar{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:4px;gap:4px}.segbar i{height:8px;border-radius:999px;background:var(--line2)}.segbar i.on{background:var(--teal)}.segbar i.eve.on{background:var(--lilac)}.segbar i.part{background:#c9c1e6}.field{height:50px;box-sizing:border-box;padding:0 16px;border-radius:14px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);width:100%}textarea.field{height:auto;min-height:96px;padding:12px 16px;line-height:1.45;resize:vertical}select.field{-webkit-appearance:none;-moz-appearance:none;appearance:none}.lbl,label.lbl{font-size:14px;font-weight:700}.stepper{display:flex;align-items:center;gap:6px}.stepper button{width:44px;height:44px;border-radius:999px;border:1.5px solid var(--line);background:var(--card);font-size:20px;font-weight:700}.stepper b{min-width:34px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.toggle{width:52px;height:32px;border-radius:999px;background:#cfc8e2;position:relative;flex-shrink:0;border:0;padding:0}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:999px;background:#fff;transition:left .2s}.toggle[aria-pressed=true]{background:var(--accent)}.toggle[aria-pressed=true]:after{left:23px}.banner{border-radius:16px;padding:12px 14px;font-size:14px;line-height:1.4;background:var(--accent-t);color:var(--accent-ink)}.ring{position:relative;flex-shrink:0;display:grid;place-items:center}.ring svg{display:block}.ring b{position:absolute;font-family:var(--display);font-size:15px}.face{border-radius:999px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;flex-shrink:0}.tabbar{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:2px;gap:2px;margin:0 max(12px,env(safe-area-inset-left,0px)) calc(10px + env(safe-area-inset-bottom, 0px)) max(12px,env(safe-area-inset-right,0px));padding:6px;border-radius:999px;background:var(--night);box-shadow:0 10px 26px rgba(36,27,79,.28)}.tabbar button{border:0;background:transparent;min-height:50px;border-radius:999px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:11.5px;font-weight:600;color:#b9b0da}.tabbar button[aria-current=page]{color:var(--night);background:var(--moon);font-weight:700}.tabbar .dot{position:relative}.tabbar .dot:after{content:attr(data-n);position:absolute;top:-6px;right:-12px;min-width:18px;height:18px;border-radius:9px;background:var(--coral);color:var(--coral-ink);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;box-sizing:border-box}.tabwrap{background:linear-gradient(to bottom,rgba(245,242,250,0),var(--paper) 40%);padding-top:6px}.chart{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:10px;gap:10px;align-items:end;height:160px}.chart .c{display:flex;flex-direction:column;align-items:center;gap:6px}.chart .stack{width:100%;height:140px;display:flex;flex-direction:column-reverse;border-radius:12px;overflow:hidden;background:var(--line2)}.chart .c.now .stack{box-shadow:0 0 0 2px var(--night)}.ladder{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:6px;gap:6px;align-items:end;height:56px}.ladder div{border-radius:6px}.thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.thumb{aspect-ratio:.707;max-width:100%;border-radius:10px;border:1px solid var(--line);background:#fff;overflow:hidden;display:flex;flex-direction:column}.thumb .band{height:16px}.thumb .in{padding:8px;display:flex;flex-direction:column;gap:5px}.thumb .ln{height:3px;background:var(--line)}.wall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.note{padding:12px;border-radius:16px;color:var(--ink);display:flex;flex-direction:column;gap:3px}.pinkeys{display:grid;grid-template-columns:repeat(3,72px);grid-gap:14px;gap:14px}.pinkeys button{width:72px;height:72px;border-radius:999px;border:0;background:#fff;font-family:var(--display);font-size:28px;font-weight:700;color:var(--ink);box-shadow:0 3px 0 var(--line)}.pinkeys button.del{font-size:15px;box-shadow:none;background:transparent}.pindots{display:flex;gap:14px}.pindots i{width:16px;height:16px;border-radius:999px;border:2px solid var(--accent);box-sizing:border-box}.pindots i.on{background:var(--accent)}.msg{border-radius:20px;padding:14px 16px;line-height:1.45}.msg.me{align-self:flex-end;max-width:86%;background:var(--night);color:#fff;border-radius:22px 22px 6px 22px}.msg.ai{background:#fff;border:1px solid var(--line2)}.msg.ai h3{font-size:16px;margin:10px 0 4px}.msg.ai h3:first-child{margin-top:0}.msg.ai p,.msg.ai ul{margin:0 0 6px}.msg.ai ul{padding-left:20px}.spin{width:22px;height:22px;border-radius:999px;border:3px solid var(--line);border-top-color:var(--accent);animation:sp .8s linear infinite}@keyframes sp{to{transform:rotate(1turn)}}.scrim{position:absolute;inset:0;background:rgba(26,19,58,.45);z-index:20}.sheet{left:0;right:0;bottom:0;z-index:21;background:#fff;color:var(--ink);border-radius:30px 30px 0 0;padding:24px max(18px,env(safe-area-inset-left,0px)) calc(22px + env(safe-area-inset-bottom, 0px)) max(18px,env(safe-area-inset-right,0px));gap:12px;max-height:88%;animation:rise .25s ease-out both}.over,.sheet{position:absolute;display:flex;flex-direction:column;overflow-y:auto}.over{inset:0;z-index:22}.toast{top:calc(12px + env(safe-area-inset-top, 0px));pointer-events:none;padding:14px 18px;border-radius:16px;background:var(--night);color:#fff;font-size:15px;line-height:1.4;animation:rise .25s ease-out both}.offline,.toast{position:absolute;left:16px;right:16px;z-index:30}.offline{bottom:calc(84px + env(safe-area-inset-bottom,0px));padding:10px 14px;border-radius:14px;background:var(--gold-t);color:var(--gold-ink);font-size:14px;text-align:center}.busy,.is-busy .view{cursor:progress}.sunny{--k-bg:#faf4eb;--k-bg2:#fff8ec;--k-card:#fff;--k-ink:#2b2140;--k-muted:#8a7e95;--k-brown:#8a6a4a;--k-peach:#e3967a;--k-peach-t:#f4e5dc;--k-peach-ink:#a85a3a;--k-butter:#efd08f;--k-butter-sh:#d4b26e;--k-butter-ink:#4a3510;--k-sage:#82c4a9;--k-sage-sh:#62a68a;--k-sage-ink:#173a2c;--k-lav:#9188c7;--k-lav-sh:#6f66a6;--k-lav-ink:#1e1a3a;--k-lav-t:#e7e4f5;--k-blue:#74a8c9;--k-blue-t:#e9f1f3;--k-blue-ink:#1e6fb8;--k-path:#f2d3ae;--k-todo:#fbe6cc;--k-todo-ink:#d9b48a;--k-sky:#c6dfea;--k-hill1:#b2d9c4;--k-hill2:#98c9b1;--k-btn:var(--k-sage);--k-btn-sh:var(--k-sage-sh);--k-btn-ink:var(--k-sage-ink);--k-btn-r:22px;--k-font:var(--fredoka);color:var(--k-ink)}.night,.sunny{background:var(--k-bg);font-family:var(--k-font)}.night{--k-bg:#241b4f;--k-bg2:#2b2160;--k-card:#fff6e6;--k-ink:#241b4f;--k-muted:#7a6f96;--k-brown:#7a6f96;--k-fg:#fff;--k-fg-muted:#b9a8ff;--k-coral:#ff8a65;--k-coral-sh:#d9603c;--k-coral-ink:#3a1404;--k-moon:#ffe7a3;--k-teal:#3fd0c9;--k-teal2:#7fe3de;--k-lilac:#b9a8ff;--k-line:#eadfcb;--k-hill1:#3a2c7a;--k-hill2:#4a3a96;--k-btn:var(--k-coral);--k-btn-sh:var(--k-coral-sh);--k-btn-ink:var(--k-coral-ink);--k-btn-r:999px;--k-font:var(--baloo);color:#fff}.night h1,.night h2,.night h3,.sunny h1,.sunny h2,.sunny h3{font-family:var(--k-font);letter-spacing:-.2px}.sunny h1{font-size:34px;font-weight:700;line-height:1.05}.night h1{font-size:32px;font-weight:800;line-height:1.05}.sunny .muted{color:var(--k-muted)}.night .muted{color:var(--k-fg-muted)}.night .small,.sunny .small{font-size:15px}.kbtn{border:0;width:100%;min-height:64px;border-radius:var(--k-btn-r);background:var(--k-btn);box-shadow:0 6px 0 var(--k-btn-sh);color:var(--k-btn-ink);font:700 24px var(--k-font);display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .08s,box-shadow .08s}.night .kbtn{font-weight:800}.kbtn:active{transform:translateY(5px);box-shadow:0 1px 0 var(--k-btn-sh)}.kbtn.sm{min-height:52px;font-size:19px}.kbtn.butter{--k-btn:var(--k-butter);--k-btn-sh:var(--k-butter-sh);--k-btn-ink:var(--k-butter-ink)}.kbtn.lav{--k-btn:var(--k-lav);--k-btn-sh:var(--k-lav-sh);--k-btn-ink:var(--k-lav-ink)}.night .kbtn.moon{--k-btn:var(--k-moon);--k-btn-sh:#e2c377;--k-btn-ink:var(--k-ink)}.night .kbtn.teal{--k-btn:var(--k-teal);--k-btn-sh:#2ba9a3;--k-btn-ink:#06302e}.kbtn[disabled]{opacity:.5;transform:none}.kghost{border:2px solid var(--k-path);background:var(--k-card);color:var(--k-brown);border-radius:999px;min-height:46px;padding:0 18px;font:600 16px var(--k-font)}.night .kghost{border-color:hsla(0,0%,100%,.22);background:transparent;color:#fff}.klink{border:0;background:none;font:600 16px var(--k-font);color:var(--k-brown);text-decoration:underline;text-underline-offset:4px;min-height:44px;padding:0 6px}.night .klink{color:var(--k-fg-muted)}.kcard{position:relative;background:var(--k-card);color:var(--k-ink);border-radius:32px;padding:18px;display:flex;flex-direction:column;gap:10px}.sunny .kcard{box-shadow:0 8px 0 var(--k-path)}.night .kcard{border-radius:30px}.kcard .muted{color:var(--k-muted)}.kchip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border-radius:999px;font:600 14px var(--k-font);background:var(--k-card);color:var(--k-ink);white-space:nowrap}.night .kchip{background:hsla(0,0%,100%,.1);color:var(--k-moon)}.kchip.peach{background:var(--k-peach-t);color:var(--k-peach-ink)}.ktop{display:flex;justify-content:space-between;gap:10px}.kround,.ktop{align-items:center}.kround{width:46px;height:46px;border-radius:999px;border:0;background:var(--k-card);color:var(--k-ink);display:inline-flex;justify-content:center}.night .kround{background:hsla(0,0%,100%,.1);color:#fff}.kdrops{display:inline-flex;align-items:center;gap:6px;height:46px;padding:0 16px 0 8px;border-radius:999px;background:var(--k-card);font:700 19px var(--k-font);color:var(--k-blue-ink)}.kdrops span{font-weight:500;font-size:14px;color:#5d86b0}.kdrops i{width:30px;height:30px;border-radius:999px;background:var(--k-blue-t);display:grid;place-items:center;color:var(--k-blue)}.night .kdrops{background:hsla(0,0%,100%,.1);color:#fff;font-weight:800}.night .kdrops span{color:var(--k-fg-muted)}.night .kdrops i{background:transparent;color:var(--k-teal2)}.kseg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:6px;gap:6px;padding:5px;border-radius:999px;background:var(--k-card)}.kseg button{border:0;border-radius:999px;min-height:44px;background:transparent;font:600 16px var(--k-font);color:var(--k-muted);display:flex;align-items:center;justify-content:center;gap:6px}.kseg button[aria-pressed=true]{background:var(--k-ink);color:#fff}.night .kseg{background:hsla(0,0%,100%,.1)}.night .kseg button{color:#d9d0ff}.night .kseg button[aria-pressed=true]{background:var(--k-moon);color:var(--k-ink)}.kpath{position:relative;display:flex;justify-content:space-between;align-items:center;padding:4px 8px}.kpath:before{content:"";position:absolute;left:34px;right:34px;top:50%;border-top:4px dashed var(--k-path)}.kstep{position:relative;width:52px;height:52px;border-radius:999px;display:grid;place-items:center;background:var(--k-todo);color:var(--k-todo-ink);flex-shrink:0}.kstep.done{background:var(--k-sage);box-shadow:0 4px 0 var(--k-sage-sh);color:#fff}.kstep.cur{width:60px;height:60px;border:4px solid var(--k-peach);color:var(--k-peach)}.kstep.cur,.kstep.passed{background:#fff;box-sizing:border-box}.kstep.passed{border:2px dashed var(--k-todo-ink)}.kstars{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;grid-gap:8px;gap:8px}.kstars i{height:10px;border-radius:10px;background:hsla(0,0%,100%,.15);transition:background .4s,box-shadow .4s}.kstars i.done{background:var(--k-moon);box-shadow:0 0 12px rgba(255,231,163,.6)}.kstars i.cur{background:var(--k-coral)}.kstars i.passed{background:hsla(0,0%,100%,.32)}.kstars i.glow{animation:fk-glow 1.4s ease-out}@keyframes fk-glow{0%{box-shadow:0 0 0 rgba(255,231,163,0)}40%{box-shadow:0 0 22px #ffe7a3}to{box-shadow:0 0 12px rgba(255,231,163,.6)}}.kicon{width:96px;height:96px;border-radius:999px;background:var(--k-blue-t);color:var(--k-blue);display:grid;place-items:center}.kscene{position:relative;width:100%;height:190px;border-radius:28px;background:var(--k-hill1);overflow:hidden;display:grid;place-items:center}.kscene .hill{left:-30px;right:-30px;bottom:-70px;height:120px;background:var(--k-hill2)}.kscene .hill,.kscene .moon{position:absolute;border-radius:50%}.kscene .moon{right:26px;top:18px;width:38px;height:38px;box-shadow:inset -10px 5px 0 var(--k-moon)}.kscene .st{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--k-moon)}.kscene .ic{position:relative;width:110px;height:110px;border-radius:50%;background:var(--k-card);color:var(--k-coral);display:grid;place-items:center;box-shadow:0 0 0 10px rgba(255,246,230,.18)}.kscene .num{position:absolute;left:16px;bottom:14px;padding:4px 10px;border-radius:999px;background:var(--k-moon);font:700 13px var(--k-font);color:var(--k-ink)}.knav{padding:4px max(12px,env(safe-area-inset-left,0px)) calc(12px + env(safe-area-inset-bottom, 0px)) max(12px,env(safe-area-inset-right,0px))}.knav>div{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:6px;gap:6px;padding:8px;border-radius:28px;background:var(--k-card);box-shadow:0 6px 20px rgba(120,70,20,.12)}.knav button{border:0;background:transparent;min-height:54px;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:600 13px var(--k-font);color:var(--k-muted)}.knav button[aria-current=page]{background:var(--k-peach-t);color:var(--k-peach-ink)}.night .knav>div{box-shadow:0 8px 24px rgba(0,0,0,.25)}.night .knav button{color:var(--k-muted)}.night .knav button[aria-current=page]{background:var(--k-ink);color:var(--k-moon)}.kjars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;align-items:end}.kjar{position:relative;width:100%;max-width:100px;height:150px;justify-self:center;border-radius:26px 26px 30px 30px;background:hsla(0,0%,100%,.9);border:4px solid #fff;box-shadow:0 10px 24px rgba(120,70,20,.14);overflow:hidden;padding:0}.kjar .fill{position:absolute;left:0;right:0;bottom:0;transition:height .45s ease;border-radius:0 0 24px 24px}.kjar .shine{position:absolute;left:12px;top:16px;width:7px;height:44px;border-radius:7px;background:hsla(0,0%,100%,.75)}.kjar .lbl{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font:700 26px var(--k-font);color:var(--k-ink)}.kjar .lbl small{font-size:13px;font-weight:600}.kjar-lid{width:56%;height:16px;border-radius:8px;margin:0 auto -4px;position:relative;z-index:1}.kjarcol{gap:6px;text-align:center}.kjarcol,.knewjar{display:flex;flex-direction:column;align-items:center}.knewjar{width:100%;max-width:100px;height:150px;justify-self:center;border:3px dashed var(--k-todo-ink);border-radius:26px;background:transparent;font:700 16px var(--k-font);color:var(--k-peach-ink);justify-content:center;gap:4px}.night .knewjar{border-color:hsla(0,0%,100%,.3);color:var(--k-moon)}.bigjar{position:relative;width:180px;height:220px;margin:0 auto;border-radius:44px 44px 54px 54px;border:5px solid hsla(0,0%,100%,.55);background:hsla(0,0%,100%,.06);overflow:hidden}.bigjar .fill{position:absolute;left:0;right:0;bottom:0;background:var(--k-teal);transition:height .5s ease}.bigjar .bub{position:absolute;border-radius:50%;background:hsla(0,0%,100%,.4)}.bigjar .lbl{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font:800 44px/1 var(--k-font);text-shadow:0 2px 8px rgba(36,27,79,.4)}.bigjar .lbl small{font-size:15px;font-weight:600;margin-top:4px}.bigjar-lid{width:110px;height:24px;border-radius:12px;background:var(--k-coral);margin:0 auto -6px;position:relative;z-index:1;box-shadow:0 6px 0 var(--k-coral-sh)}.ktiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.ktile{border:0;border-radius:22px;background:var(--k-card);color:var(--k-ink);padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:2px;font:600 13px var(--k-font);min-height:86px;text-align:center}.ktile b{font-size:22px;font-weight:800}.ktile[aria-pressed=true]{background:var(--k-teal);color:#06302e}.kgrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.kchar{border:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 6px;border-radius:20px;background:#f4e9da;font:600 13px var(--k-font);color:var(--k-brown)}.kchar[aria-pressed=true]{background:#fff;box-shadow:0 0 0 3px var(--k-peach);color:var(--k-peach-ink)}.night .kchar{background:hsla(0,0%,100%,.08);color:#d9d0ff}.night .kchar[aria-pressed=true]{background:hsla(0,0%,100%,.16);box-shadow:0 0 0 3px var(--k-coral);color:#fff}.wiggle{animation:fk-wiggle 1.6s ease-in-out infinite;transform-origin:50% 90%}.krowcard{background:var(--k-card);color:var(--k-ink);border-radius:26px;padding:6px 16px;display:flex;flex-direction:column}.sunny .krowcard{box-shadow:0 6px 0 var(--k-path)}.krow2{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1.5px solid var(--k-todo)}.krow2:first-child{border-top:0}.night .krow2{border-color:var(--k-line)}.kbadge{width:46px;height:46px;flex-shrink:0;border-radius:16px;display:grid;place-items:center;background:var(--k-peach-t);color:var(--k-peach-ink)}.night .kbadge{background:#efe6ff;color:#5b46b8}.kplus{font-weight:700;color:var(--k-blue-ink)}.night .kplus{color:#2ba9a3}.kbanner{border-radius:20px;padding:12px 16px;font:600 15px var(--k-font);background:var(--k-blue-t);color:var(--k-blue-ink)}.night .kbanner{background:hsla(0,0%,100%,.1);color:var(--k-moon)}.kbox{width:28px;height:28px;flex-shrink:0;border-radius:9px;box-sizing:border-box;border:2.5px solid var(--k-sage);display:grid;place-items:center;color:#fff}.kbox.on{background:var(--k-sage)}.night .kbox{border-color:var(--k-teal)}.night .kbox.on{background:var(--k-teal);color:var(--k-ink)}.kopt{border:2px solid var(--k-todo);background:var(--k-card);border-radius:18px;min-height:56px;padding:10px 14px;text-align:left;font:600 17px var(--k-font);display:flex;align-items:center;gap:12px;width:100%;color:var(--k-ink)}.night .kopt{border-color:var(--k-line)}.kword{height:220px;border-radius:32px;background:#fff;color:var(--k-ink);box-shadow:0 8px 0 var(--k-path);display:flex;align-items:center;justify-content:center;font:700 76px var(--k-font)}.night .kword{box-shadow:none}.sunny .sheet,.sunny+.sheet{font-family:var(--fredoka)}.ksheet,.ksheet h2{font-family:var(--k-font)}.ksheet h2{font-size:28px}.kwho{border:0;width:100%;min-height:72px;border-radius:22px;display:flex;align-items:center;gap:14px;padding:0 18px;font:700 21px var(--k-font);color:var(--k-ink);box-shadow:0 5px 0 rgba(0,0,0,.08)}.kwho:active{transform:translateY(4px);box-shadow:0 1px 0 rgba(0,0,0,.08)}.confetti{position:absolute;inset:0;pointer-events:none;z-index:5;overflow:visible}.confetti i{top:55%;animation:fk-pop 1.2s cubic-bezier(.15,.7,.3,1) forwards}.confetti i,.floatdrop{position:absolute;left:50%}.floatdrop{top:40%;padding:8px 18px;border-radius:999px;font:700 22px var(--k-font);color:#fff;white-space:nowrap;pointer-events:none;z-index:6;animation:fk-float 1.4s ease-out forwards}.celebrate{align-items:center;justify-content:center;text-align:center;gap:16px;padding:24px max(24px,env(safe-area-inset-left,0px))}.over.sunny,.sunny.celebrate{background:var(--k-bg2)}@keyframes fk-pop{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}70%{opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(var(--r)) scale(1);opacity:0}}@keyframes fk-float{0%{transform:translate(-50%) scale(.6);opacity:0}20%{transform:translate(-50%,-10px) scale(1.15);opacity:1}to{transform:translate(-50%,-90px) scale(1);opacity:0}}@keyframes fk-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-8deg) scale(1.08)}75%{transform:rotate(8deg) scale(1.08)}}@keyframes rise{0%{transform:translateY(20px);opacity:0}to{transform:none;opacity:1}}@keyframes shake{0%,to{transform:none}25%{transform:translateX(-8px)}75%{transform:translateX(8px)}}.shake{animation:shake .3s ease}.pop{animation:popin .5s cubic-bezier(.2,.8,.3,1.2) both}@keyframes popin{0%{transform:scale(.55);opacity:0}65%{transform:scale(1.08);opacity:1}to{transform:scale(1)}}.hero{position:relative;overflow:hidden;flex-shrink:0}.hero>svg{display:block;width:100%;height:100%}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.confetti,.floatdrop{display:none!important}.kbtn:active,.kwho:active,button:active{transform:none!important}}