:root{--window:#fafaf9;--card:#fff;--line:#ececea;--soft:#f1f1ef;--soft-2:#e6e6e3;--text:#141414;--muted:#77756f;--ink:#111;--on-ink:#fff;--accent:#c86bb0;--ok:#1d8a68;--danger:#c0392b;--warn:#9a5b0a;--banner-bg:#fff4e5;--banner-line:#f5ddb5;--banner-text:#7a4b0b;--info-bg:#eef0ff;--info-line:#d3d6fb;--info-text:#2f2f8a;--danger-bg:#fdecec;--danger-line:#f6c9c9;--danger-text:#8e2323;--h0:#ebebe8;--h1:#e6cfe0;--h2:#d7a3c8;--h3:#c86bb0;--h4:#8e3f7a;--radius:10px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--window:#18181a;--card:#212124;--line:#2e2e33;--soft:#2a2a2e;--soft-2:#34343a;--text:#ededed;--muted:#9b9aa1;--ink:#ededed;--on-ink:#121212;--accent:#e08ccb;--ok:#4cc79c;--danger:#ff7b6e;--warn:#f0b45a;--banner-bg:#3a2c16;--banner-line:#5a4320;--banner-text:#f5d9a8;--info-bg:#23244a;--info-line:#36387a;--info-text:#cfd1ff;--danger-bg:#3d1d1d;--danger-line:#5e2b2b;--danger-text:#ffc4bd;--h0:#2a2a2e;--h1:#4b2d44;--h2:#7a3f6c;--h3:#b0599c;--h4:#e08ccb;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--window:#18181a;--card:#212124;--line:#2e2e33;--soft:#2a2a2e;--soft-2:#34343a;--text:#ededed;--muted:#9b9aa1;--ink:#ededed;--on-ink:#121212;--accent:#e08ccb;--ok:#4cc79c;--danger:#ff7b6e;--warn:#f0b45a;--banner-bg:#3a2c16;--banner-line:#5a4320;--banner-text:#f5d9a8;--info-bg:#23244a;--info-line:#36387a;--info-text:#cfd1ff;--danger-bg:#3d1d1d;--danger-line:#5e2b2b;--danger-text:#ffc4bd;--h0:#2a2a2e;--h1:#4b2d44;--h2:#7a3f6c;--h3:#b0599c;--h4:#e08ccb;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:#2b2350;overflow:hidden}h1{letter-spacing:-.02em;margin:0 0 4px;font-size:28px;font-weight:600}h2{margin:0;font-size:18px;font-weight:600}h3{color:var(--muted);margin:0;font-size:13px;font-weight:500}p{margin:6px 0;line-height:1.5}a{color:inherit}.frame{background-position:50%;background-size:cover;padding:22px 0 0 22px;position:fixed;inset:0}.theme-sunset{background-image:linear-gradient(160deg,#5b5bd6 0%,#c86bb0 45%,#f2a07b 75%,#f7d9a0 100%)}.theme-ocean{background-image:linear-gradient(160deg,#1e3c72 0%,#2a5298 45%,#6dd5ed 100%)}.theme-forest{background-image:linear-gradient(160deg,#0f3d3e 0%,#2f6f4f 50%,#a8c97f 100%)}.theme-lavender{background-image:linear-gradient(160deg,#6a5acd 0%,#a18cd1 50%,#fbc2eb 100%)}.theme-rain{background-image:linear-gradient(170deg,#27313d 0%,#44566a 55%,#7b8c9c 100%)}.theme-library{background-image:linear-gradient(160deg,#2b1a12 0%,#6b4430 50%,#c9a57c 100%)}.theme-cafe{background-image:linear-gradient(160deg,#4a3226 0%,#a07855 50%,#f0dcc0 100%)}.theme-photo{background-color:#333}.rain-layer{pointer-events:none;opacity:.35;background-image:repeating-linear-gradient(105deg,#0000 0 18px,#ffffff8c 18px 19px,#0000 19px 40px);background-size:200px 200px;animation:.6s linear infinite rain;position:absolute;inset:0}@keyframes rain{to{background-position:-40px 200px}}@media (prefers-reduced-motion:reduce){.rain-layer{animation:none}}.window{background:var(--window);border-radius:14px 0 0;grid-template-columns:200px minmax(0,1fr);height:100%;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 60px #0000002e}.side{border-right:1px solid var(--line);flex-direction:column;gap:2px;padding:16px 10px;display:flex;overflow-y:auto}.brand{margin:0 0 14px 8px;font-size:15px;font-weight:600}.nav{all:unset;box-sizing:border-box;cursor:pointer;color:var(--muted);border-radius:8px;gap:8px;padding:8px 10px;font-size:14px;display:flex}.nav:hover{background:var(--soft);color:var(--text)}.nav.on{background:var(--soft-2);color:var(--text);font-weight:500}.nav:focus-visible{outline:2px solid var(--accent)}.mini-timer{all:unset;cursor:pointer;background:var(--ink);color:var(--on-ink);text-align:center;border-radius:8px;margin-top:12px;padding:8px 10px;font-size:13px}.who{color:var(--muted);margin-top:auto;padding:12px 8px 0;font-size:13px}.lofi{margin-top:12px}.lofi iframe{aspect-ratio:16/9;border:0;border-radius:8px;width:100%}.main{padding:26px 32px 60px;overflow-y:auto}.page{flex-direction:column;gap:16px;max-width:1060px;margin:0 auto;display:flex}.center-msg{color:#fff;place-items:center;height:100%;display:grid}button{font:inherit;color:inherit;cursor:pointer}input,select,textarea{font:inherit;color:var(--text);background:var(--card);border:1px solid var(--line);border-radius:8px;min-width:0;padding:8px 10px}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb, var(--accent) 50%, transparent);border-color:var(--accent)}textarea{resize:vertical;width:100%}.primary,.ghost{white-space:nowrap;border:1px solid #0000;border-radius:99px;padding:8px 16px;font-size:14px}.primary{background:var(--ink);color:var(--on-ink)}.primary:hover{opacity:.88}.ghost{background:var(--soft);border-color:#0000}.ghost:hover{background:var(--soft-2)}.small{font-size:12px}button.small{padding:4px 10px}.ghost.danger{background:var(--danger-bg);color:var(--danger-text)}.big{padding:12px 34px;font-size:16px}.wide{width:100%;padding:12px}button:disabled{opacity:.45;cursor:default}.link{all:unset;cursor:pointer;color:var(--text);text-underline-offset:3px;font-size:inherit;text-decoration:underline}.link:focus-visible,.primary:focus-visible,.ghost:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-link{text-decoration:none;display:inline-block}.muted{color:var(--muted)}.ok-text{color:var(--ok)}.danger-text{color:var(--danger);font-weight:500}.warn-text{color:var(--warn);font-weight:500}.error{color:var(--danger);font-size:13px}.empty{color:var(--muted);padding:6px 0;font-size:13px}.row{align-items:center;gap:8px;display:flex}.row.between{justify-content:space-between}.row.end{justify-content:flex-end}.wrap{flex-wrap:wrap}.grow,.row>input:not([type=checkbox]):not([type=radio]):not(.tiny):not(.color-dot){flex:1}.stack{flex-direction:column;gap:10px;display:flex}.field{color:var(--muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.line{border-bottom:1px solid var(--line);padding:7px 0}.line:last-child{border-bottom:0}.struck{color:var(--muted);text-decoration:line-through}.check{cursor:pointer;align-items:center;gap:8px;display:flex}.check input{width:16px;height:16px;accent-color:var(--ink)}.check-line{padding:4px 0}.tiny{width:64px}.tag{background:var(--soft);border-radius:99px;padding:2px 8px;font-size:12px}.section{margin-top:6px}.hello p{margin:2px 0 0}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;min-width:0;padding:16px 18px;display:flex}.card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.big-num{letter-spacing:-.01em;font-size:24px;font-weight:600}.bar{background:var(--soft);border-radius:3px;flex:1;min-width:40px;height:5px;overflow:hidden}.bar>div{background:var(--ink);border-radius:3px;height:100%;transition:width .4s}.bar.thin{height:3px;margin-top:8px}.banners{flex-direction:column;gap:6px;max-width:1060px;margin:0 auto 16px;display:flex}.banner{background:var(--banner-bg);border:1px solid var(--banner-line);color:var(--banner-text);border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:flex}.banner .link{color:inherit}.banner.info{background:var(--info-bg);border-color:var(--info-line);color:var(--info-text)}.banner.danger{background:var(--danger-bg);border-color:var(--danger-line);color:var(--danger-text)}.toasts{z-index:50;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:18px;right:18px}.toast{background:var(--ink);color:var(--on-ink);border-radius:10px;max-width:320px;padding:10px 14px;font-size:14px;animation:.25s ease-out pop;box-shadow:0 8px 24px #0003}@keyframes pop{0%{transform:scale(0)}to{transform:scale(1)}}.timer-card{background:var(--card);border:1px solid var(--line);border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:18px 20px 14px;display:flex}.timer-card:fullscreen{background:var(--window);border:0;border-radius:0;justify-content:center}.timer-card:fullscreen .clock{font-size:min(26vw,260px)}.timer-top{flex-wrap:wrap;justify-content:space-between;align-self:stretch;align-items:center;gap:8px;display:flex}.seg{background:var(--soft);border-radius:99px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--muted);background:0 0;border:0;border-radius:99px;padding:5px 12px;font-size:13px}.seg button.on{background:var(--card);color:var(--text);box-shadow:0 1px 2px #00000014}.seg.wrap{border-radius:14px;flex-wrap:wrap}.pills{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.pill{background:var(--soft);border:0;border-radius:99px;padding:6px 14px;font-size:13px}.pill.on{background:var(--ink);color:var(--on-ink)}.steppers{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;animation:.2s ease-out pop;display:flex}.stepper{background:var(--soft);border-radius:12px;align-items:center;gap:4px;padding:4px 6px;display:flex}.stepper button{width:28px;height:28px;color:var(--muted);background:0 0;border:0;border-radius:50%;font-size:18px}.stepper button:hover{background:var(--soft-2);color:var(--text)}.stepper label{flex-direction:column;align-items:center;display:flex}.stepper input{text-align:center;-moz-appearance:textfield;background:0 0;border:0;width:48px;padding:0;font-size:18px;font-weight:600}.stepper input::-webkit-inner-spin-button{display:none}.stepper span{color:var(--muted);margin-top:-2px;font-size:10px}.round-ok{background:var(--ink);width:38px;height:38px;color:var(--on-ink);border:0;border-radius:50%;font-size:16px}.clock{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:clamp(64px,11vw,112px);font-weight:600;line-height:1}.phase-line{color:var(--muted);text-align:center;width:min(280px,100%);font-size:13px}.phase-short .clock,.phase-long .clock{color:var(--ok)}.timer-subject select{background:var(--soft);border-color:#0000;border-radius:99px;padding:6px 12px;font-size:13px}.controls{align-items:center;gap:10px;display:flex}.distracted{margin-top:-4px}.coach{background:var(--info-bg);color:var(--info-text);text-align:center;border-radius:12px;max-width:460px;padding:10px 14px;font-size:14px}.hint{color:var(--muted);text-align:center;margin:0;font-size:12px}.modal-bg{z-index:40;background:#00000059;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--card);color:var(--text);border-radius:16px;flex-direction:column;gap:12px;width:min(420px,100%);padding:22px;display:flex;box-shadow:0 30px 80px #0000004d}.stars{gap:4px;display:flex}.stars button{color:var(--soft-2);background:0 0;border:0;padding:0 2px;font-size:26px}.stars button.on{color:#f2a93b}.balloons{pointer-events:none;z-index:60;position:fixed;inset:0;overflow:hidden}.balloons span{animation:5s ease-in forwards float;position:absolute;bottom:-80px}@keyframes float{to{transform:translateY(-120vh)rotate(12deg)}}.login{background:var(--window);border-radius:18px;flex-direction:column;gap:10px;width:min(380px,100vw - 32px);padding:30px 26px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 30px 80px #00000040}.frame:has(.login){padding:0}.book-line{margin-bottom:8px}.review textarea{margin-top:4px}.sound-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.sound,.station{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.station{flex-direction:row;justify-content:space-between;align-items:center}.sound.on,.station.on{border-color:var(--ink);background:var(--soft)}.sound-btn{all:unset;cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex}.sound-icon{text-align:center;width:30px;font-size:22px}.sound input[type=range]{width:100%;accent-color:var(--ink)}.station-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.choice-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;font-size:14px;display:grid}.upload{cursor:pointer;background:var(--soft);border-radius:99px;align-self:flex-start;padding:8px 14px;font-size:14px;display:inline-block}.upload input{display:none}.metrics{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.metric{background:var(--card);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.metric span{color:var(--muted);font-size:12px}.metric b{font-size:20px;font-weight:600}.bars{align-items:flex-end;gap:6px;height:150px;display:flex}.bar-col{flex-direction:column;flex:1;align-items:center;gap:4px;height:100%;display:flex}.bar-stack{flex:1;justify-content:center;align-items:flex-end;gap:2px;width:100%;display:flex}.bar-stack div{border-radius:4px 4px 0 0;flex:1;max-width:22px;min-height:2px}.bar-col span{color:var(--muted);font-size:11px}.bar-col span.today{color:var(--text);font-weight:600}.legend{align-items:center;gap:4px;margin-left:10px;display:inline-flex}.legend i{border-radius:3px;width:9px;height:9px;display:inline-block}.subj-line{margin-bottom:8px}.heat-wrap{overflow-x:auto}.heat{gap:3px;display:flex}.heat-col{flex-direction:column;gap:3px;display:flex}.heat i,.heat-legend i{border-radius:2px;width:11px;height:11px;display:inline-block}.h0{background:var(--h0)}.h1{background:var(--h1)}.h2{background:var(--h2)}.h3{background:var(--h3)}.h4{background:var(--h4)}.hx{background:0 0}.heat-legend{align-items:center;gap:3px;margin-top:6px;display:flex}.log-line{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr auto;align-items:start;gap:10px;padding:7px 0;font-size:14px;display:grid}.chart{width:100%;height:110px}.grid-line{stroke:var(--line);stroke-width:1px}.grid-cal{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:14px;display:grid}.cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.cal-head{color:var(--muted);text-align:center;padding:4px 0;font-size:11px}.cal-day{background:var(--soft);aspect-ratio:1/.85;border:1px solid #0000;border-radius:9px;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:6px;font-size:13px;display:flex}.cal-day.other{opacity:.4}.cal-day.today{border-color:var(--accent);font-weight:600}.cal-day.sel{background:var(--ink);color:var(--on-ink)}.dots{gap:3px;display:flex}.dot{border-radius:50%;width:6px;height:6px;display:inline-block}.dot.rem{background:#e0a030}.dot.book{background:#5b5bd6}.dot.due{background:#d64545}.dot.exam{background:#c86bb0}.legend-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.book-title{all:unset;cursor:pointer;color:var(--text);font-size:16px;font-weight:600}.pct{text-align:right;min-width:42px;font-size:15px}.chapters{border-top:1px solid var(--line);margin-top:4px;padding-top:6px}.chapter{border-bottom:1px solid var(--line);padding:2px 0}.topic{padding-left:26px}.avatar{color:#fff;vertical-align:-5px;border-radius:50%;place-items:center;width:22px;height:22px;margin-right:4px;font-size:12px;font-style:normal;display:inline-grid}.live{color:var(--ok)}.badges{flex-wrap:wrap;gap:6px;display:flex}.badge{background:var(--soft);filter:grayscale();opacity:.45;border-radius:10px;flex-direction:column;align-items:center;width:74px;padding:8px 4px;font-size:22px;display:flex}.badge small{text-align:center;color:var(--muted);font-size:10px}.badge.got{filter:none;opacity:1}.count{min-width:62px;display:inline-block}.flash{text-align:center;border:1px dashed var(--line);cursor:pointer;border-radius:12px;padding:26px 10px}.flash-q{font-size:20px;font-weight:600}.flash-a{color:var(--ok);font-size:18px}.grades{justify-content:center}.grades button{border-radius:12px;flex-direction:column;align-items:center;min-width:72px;display:flex}.grades small{opacity:.7;font-size:11px}.doubt{border-bottom:1px solid var(--line);flex-direction:column;gap:6px;padding:8px 0;display:flex}.w-sub{width:110px;flex:0 0 110px!important}details summary{cursor:pointer;color:var(--muted);margin-bottom:6px}.swatch{border:3px solid #0000;border-radius:50%;width:28px;height:28px}.swatch.on{border-color:var(--card);outline:2px solid var(--ink)}.theme-picks{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.theme-pick{background-size:cover;border:2px solid #0000;border-radius:10px;align-items:flex-end;height:54px;padding:4px 6px;display:flex}.theme-pick span{color:#fff;text-shadow:0 1px 3px #00000080;font-size:11px}.theme-pick.on{border-color:var(--ink)}.theme-pick.theme-photo{background:repeating-linear-gradient(45deg,#888 0 8px,#999 8px 16px)}.toggle{background:var(--soft-2);border:0;border-radius:99px;flex:none;width:42px;height:24px;position:relative}.toggle i{background:#fff;border-radius:50%;width:18px;height:18px;transition:left .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0003}.toggle.on{background:var(--ok)}.toggle.on i{left:21px}.color-dot{background:0 0;border:0;width:26px;height:26px;padding:0}.plain{background:0 0;border-color:#0000}.intro{z-index:100;background:#f2eee7;position:fixed;inset:0}.intro-box{position:absolute;inset:0}.intro-tile{will-change:transform, opacity;background:#dcd4c6;border-radius:6px;position:absolute;overflow:hidden;box-shadow:0 6px 18px #0000002e}.intro-tile img{object-fit:cover;width:100%;height:100%;display:block}.intro-skip{left:50%;bottom:calc(14px + env(safe-area-inset-bottom,0px));color:#fff;z-index:101;background:#0009;border:0;border-radius:99px;padding:8px 14px;font-size:13px;position:fixed;transform:translate(-50%)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .intro{background:#181715}}:root[data-theme=dark] .intro{background:#181715}.wrap-row{flex-wrap:wrap;gap:10px}.coin{vertical-align:-.15em;width:1em;height:1em}.coins{color:#7a5200;background:#fff4d6;border:1px solid #f3dc9c;border-radius:99px;padding:6px 14px;font-size:14px;font-weight:600}.forest-card{gap:12px}.island{border-radius:14px;width:100%;height:clamp(300px,46vw,520px);display:block}.flake{animation:8s linear infinite drift}@keyframes drift{0%{transform:translate(0)}to{transform:translateX(var(--dx))}}@media (prefers-reduced-motion:reduce){.flake{animation:none}}.tile-pick{fill:#fff0;cursor:pointer;stroke:#ffffff80;stroke-width:.6px}.tile-pick:hover{fill:#ffffff73}.tile-pick.busy{cursor:not-allowed;fill:#c83c3c1f}.forest-sum{margin:0;font-size:14px}.tree-pick{flex-wrap:wrap;gap:8px;display:flex}.tree-pick button{border:1px solid var(--line);background:var(--card);border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-width:76px;padding:6px 10px 8px;font-size:12px;display:flex}.tree-pick button.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.shop{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-top:12px;display:grid}.shop-item{border:1px solid var(--line);text-align:center;background:var(--card);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:10px;font-size:13px;display:flex}.shop-item .preview,.shop-item svg{max-width:100%}.sky-preview{border-radius:8px;width:100%;height:64px;overflow:hidden}.sky-preview .island{object-fit:cover;border-radius:8px;width:100%;height:64px}.your-decos{margin-top:12px}.clock-row{justify-content:center;align-items:center;gap:6px;display:flex}.grow{display:inline-flex}.mini-tree{width:clamp(64px,10vw,104px);height:auto}.timer-card:fullscreen .mini-tree{width:min(14vw,150px)}.modal.checkin{gap:14px;width:min(600px,100%);max-height:calc(100dvh - 32px);overflow-y:auto}.modal.checkin .field{color:var(--text);font-size:14px;font-weight:500}.choices{flex-wrap:wrap;gap:6px;display:flex}.choice{border:1px solid var(--line);background:var(--card);color:var(--text);text-align:left;border-radius:99px;padding:6px 12px;font-size:13px;font-weight:400}.choice.on{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.day-nums{background:var(--soft);border-radius:9px;margin:0;padding:8px 10px}.card h4{margin:12px 0 8px;font-size:13px;font-weight:600}.metric b.small-b{font-size:14px}.paper-year h4{color:var(--muted);margin:12px 0 2px;font-size:13px}.paper-edit{padding:6px 0 2px}input.tiny.year{width:84px}.paper-edit input:not(.tiny){flex:1;min-width:180px}.mistake p{margin:4px 0 0}.review-card{border-color:var(--accent)}.modal.games{width:min(540px,100%);max-height:calc(100dvh - 32px);overflow-y:auto}.memory{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.mem-card{aspect-ratio:1;border:1px solid var(--line);background:var(--soft);border-radius:12px;place-items:center;padding:0;font-size:22px;transition:transform .15s;display:grid}.mem-card.up{background:var(--card)}.mem-card.found{border-color:var(--ok);opacity:.75}.mem-card:active{transform:scale(.96)}.game-center{text-align:center;align-items:center}.game-center input{text-align:center;max-width:220px;font-size:20px}.sprint-q{font-variant-numeric:tabular-nums;margin:4px 0;font-size:34px;font-weight:600}.scramble{flex-wrap:wrap;justify-content:center;gap:6px;margin:4px 0;display:flex}.scramble span{background:var(--soft);border-radius:8px;place-items:center;width:30px;height:36px;font-size:18px;font-weight:700;display:grid}.cat-walker{z-index:30;cursor:pointer;transform-origin:50% 100%;will-change:transform;background:0 0;border:0;padding:0;position:fixed;top:0;left:0}.cat-walker:focus-visible{outline:2px solid var(--accent);border-radius:8px}.cat-img{-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;display:block}.cat-img.pixel{image-rendering:pixelated}.cat-heart{color:#f06292;pointer-events:none;font-size:16px;animation:1.2s ease-out forwards heart-up;position:absolute;top:0;left:50%}@keyframes heart-up{0%{opacity:1;transform:translate(-50%)scale(.6)}to{opacity:0;transform:translate(-50%,-34px)scale(1.2)}}.cat-stage{flex-direction:column;align-items:center;gap:8px;padding:8px 0 4px;display:flex}.cat-preview{background:var(--soft);border-radius:50%;place-items:center;width:140px;height:140px;display:grid}.cat-opt{color:var(--muted);grid-template-columns:120px 1fr;align-items:center;gap:10px;padding:4px 0;font-size:13px;display:grid}.cat-opt input{max-width:240px}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{border:2px solid var(--line);border-radius:50%;width:28px;height:28px;padding:0}.swatch.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--card), 0 0 0 4px var(--ink)}@media (width<=760px){.cat-opt{grid-template-columns:1fr;gap:4px}}.island .sway{transform-box:fill-box;transform-origin:50% 100%;animation:4.5s ease-in-out infinite alternate sway}@keyframes sway{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}.mini-tree .sway{transform-box:fill-box;transform-origin:50% 100%;animation:3.5s ease-in-out infinite alternate sway}.tree-pop{transform-box:fill-box;transform-origin:50% 100%;animation:.7s cubic-bezier(.3,1.6,.5,1) both pop}.cloud{animation:120s linear infinite drift}.birds{animation:26s linear infinite birds}@keyframes birds{0%{opacity:1;transform:translate(0)}60%{transform:translate(var(--dx), -18px);opacity:1}61%,to{opacity:0;transform:translate(var(--dx), -18px)}}.wing{transform-box:fill-box;transform-origin:50%;animation:.45s ease-in-out infinite alternate wing}@keyframes wing{to{transform:scaleY(-.6)}}.twinkle{animation:3s ease-in-out infinite alternate twinkle}@keyframes twinkle{to{opacity:.15}}.firefly{filter:drop-shadow(0 0 2px #fff3a0);animation:4s ease-in-out infinite alternate firefly}@keyframes firefly{0%{opacity:.1;transform:translate(0)}50%{opacity:1}to{opacity:.2;transform:translate(6px,-8px)}}.butterfly{animation:8s ease-in-out infinite alternate flutter}@keyframes flutter{0%{transform:translate(0)}33%{transform:translate(14px,-10px)}66%{transform:translate(-8px,-16px)}to{transform:translate(10px,4px)}}.flap{transform-box:fill-box;transform-origin:50%;animation:.25s ease-in-out infinite alternate flap}@keyframes flap{to{transform:scaleX(.35)}}.bob{animation:5s ease-in-out infinite alternate bob}@keyframes bob{to{transform:translateY(-5px)}}.shimmer{animation:2.6s ease-in-out infinite alternate shimmer}@keyframes shimmer{to{opacity:.1}}@media (prefers-reduced-motion:reduce){.sway,.tree-pop,.cloud,.birds,.wing,.twinkle,.firefly,.butterfly,.flap,.bob,.shimmer{animation:none!important}}.cat-say{z-index:31;pointer-events:none;background:var(--card);max-width:220px;color:var(--text);border:1px solid var(--line);opacity:0;white-space:normal;text-align:center;border-radius:12px;padding:6px 10px;font-size:13px;line-height:1.3;transition:opacity .2s;position:fixed;top:0;left:0;box-shadow:0 6px 18px #0000001f}.cat-say.on{opacity:1}.cat-say:after{content:"";background:var(--card);border-right:1px solid var(--line);border-bottom:1px solid var(--line);width:10px;height:10px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg)}.toy-picker{z-index:36;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:16px;right:16px}.toy-btn{border:1px solid var(--line);background:var(--card);border-radius:50%;place-items:center;width:44px;height:44px;padding:0;font-size:22px;display:grid;box-shadow:0 4px 14px #00000024}.toy-btn:hover{transform:scale(1.06)}.toy-menu{background:var(--card);border:1px solid var(--line);border-radius:14px;width:min(300px,100vw - 32px);padding:12px;box-shadow:0 16px 40px #0000002e}.toy-menu p{margin:0 0 8px}.toy-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.toy-grid button{border:1px solid var(--line);background:var(--soft);border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:6px 4px;font-size:11px;display:flex}.toy-grid button.on{border-color:var(--ink);background:var(--card);box-shadow:0 0 0 1px var(--ink)}.toy-none{font-size:22px;line-height:28px}@media (width<=760px){.toy-picker{bottom:calc(84px + env(safe-area-inset-bottom,0px));right:12px}}.cd-row{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.cd-tile{text-align:left;min-height:124px;font:inherit;cursor:pointer;border:0;border-radius:16px;flex-direction:column;gap:2px;padding:14px 16px;transition:transform .15s;display:flex;box-shadow:0 6px 18px #00000014}.cd-tile:hover{transform:translateY(-2px)}.cd-tile[style*=\#F5F3EE]{box-shadow:0 0 0 1px var(--line), 0 6px 18px #0000000f}.cd-title{opacity:.9;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.cd-tag{border:1px solid;border-radius:99px;padding:0 6px;font-size:10px}.cd-big{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:38px;font-weight:600;line-height:1.1}.cd-big span{letter-spacing:0;font-size:15px;font-weight:500}.cd-sub{font-variant-numeric:tabular-nums;font-size:14px}.cd-foot{opacity:.85;margin-top:auto;padding-top:4px;font-size:12px}.cd-bar{border-radius:99px;height:8px;margin:8px 0 2px;overflow:hidden}.cd-bar div{border-radius:99px;height:100%}.cd-add{border:1.5px dashed var(--soft-2);color:var(--muted);box-shadow:none;background:0 0;justify-content:center;align-items:center;font-size:14px}.cd-dot{border:1px solid var(--line);border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.modal.cd-modal{width:min(460px,100%);max-height:calc(100dvh - 32px);overflow-y:auto}@media (width<=760px){.cd-row{grid-template-columns:repeat(2,minmax(0,1fr))}.cd-big{font-size:30px}}.game-lib{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;display:grid}.game-card{border:1px solid var(--line);background:var(--soft);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;font-size:12.5px;display:flex}.game-card:hover{background:var(--card);border-color:var(--soft-2)}.game-icon{font-size:26px}.game-bar{width:100%;max-width:360px}.quiz-q{max-width:440px;margin:6px 0;font-size:24px;font-weight:600}.quiz-opts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;max-width:440px;display:grid}.quiz-opts button{white-space:normal;padding:10px;font-size:14px}.pads{grid-template-columns:repeat(2,96px);gap:10px;display:grid}.pad{opacity:.45;border:0;border-radius:18px;width:96px;height:96px;transition:opacity .1s,transform .1s}.pad.lit{opacity:1;transform:scale(1.05)}.grid4{grid-template-columns:repeat(4,56px);gap:6px;display:grid}.grid4 .cell{background:var(--soft-2);border:0;border-radius:10px;width:56px;height:56px}.grid4 .cell.on{background:var(--accent)}.shade-grid{aspect-ratio:1;gap:4px;width:min(300px,80vw);display:grid}.shade-grid button{border:0;border-radius:6px}.reaction{color:#fff;background:#5b5bd6;border:0;border-radius:16px;width:min(340px,80vw);height:180px;font-size:20px;font-weight:600}.reaction.wait{background:#d64545}.reaction.go{background:#1d9e75}.reaction.early{background:#e0791b}.letters{grid-template-columns:repeat(9,1fr);gap:4px;max-width:380px;display:grid}.letters button{border:1px solid var(--line);background:var(--card);border-radius:6px;padding:6px 0;font-weight:600}.letters button.hit{background:#cdebd9}.letters button.miss{background:var(--soft-2);opacity:.5}.typing-text{max-width:440px;font-family:ui-monospace,monospace;font-size:17px;line-height:1.6}.typing-text .ok{color:var(--ok)}.typing-text .bad{color:#8e2323;background:#f7c1c1}.holes{grid-template-columns:repeat(3,84px);gap:10px;display:grid}.hole{background:radial-gradient(#5e3b22 55%,#8a5a35 56%);border:0;border-radius:50%;width:84px;height:84px;font-size:40px;overflow:hidden}.pop-cat{animation:.18s ease-out popup;display:inline-block}@keyframes popup{0%{transform:translateY(40px)}to{transform:none}}.worm-grid{aspect-ratio:1;touch-action:none;background:#dcefc8;border-radius:10px;width:min(308px,80vw);padding:2px;display:grid}.worm-grid span{border-radius:3px}.worm-grid .worm{background:#e57399}.worm-grid .worm.head{background:#b94a72}.worm-grid .food{background:#f2a93b;border-radius:50%}.dpad{flex-direction:column;align-items:center;gap:4px;display:flex}.dpad button{border:1px solid var(--line);background:var(--card);border-radius:8px;width:44px;height:36px}.dpad span{gap:48px;display:flex}.sky-box{touch-action:none;background:linear-gradient(#bfe3f7,#f1fafe);border-radius:12px;width:min(360px,82vw);height:300px;position:relative;overflow:hidden}.balloon{cursor:pointer;border:0;border-radius:50% 50% 46% 46%;width:38px;height:48px;animation:linear forwards rise;position:absolute;bottom:-60px}.balloon:after{content:"";background:#888;width:1px;height:16px;position:absolute;top:100%;left:50%}@keyframes rise{to{transform:translateY(-380px)}}.star-box{touch-action:none;background:linear-gradient(#1a2340,#3a4675);border-radius:12px;max-width:82vw;position:relative;overflow:hidden}.falling,.basket{pointer-events:none;font-size:22px;position:absolute;transform:translate(-50%)}.basket{font-size:34px;bottom:6px}.ttt{grid-template-columns:repeat(3,76px);gap:6px;display:grid}.ttt button{border:1px solid var(--line);background:var(--card);border-radius:12px;width:76px;height:76px;font-size:34px}.four{background:#3b5bbf;border-radius:12px;gap:4px;width:min(330px,84vw);padding:8px;display:grid}.four button{aspect-ratio:1;background:0 0;border:0;padding:2px}.four i{background:#e6ecf8;border-radius:50%;width:100%;height:100%;display:block}.four i.you{background:#f06292}.four i.cat{background:#f5b83d}.dots{width:min(260px,70vw)}.dline{fill:var(--soft-2);cursor:pointer}.dline:hover{fill:#b9b3a8}.dline.on{fill:#3a3a3a}.slide{grid-template-columns:repeat(3,72px);gap:6px;display:grid}.slide button{background:var(--accent);color:#fff;border:0;border-radius:12px;width:72px;height:72px;font-size:26px;font-weight:600}.slide button.blank{background:var(--soft)}.sudoku{border:2px solid var(--ink);border-radius:8px;grid-template-columns:repeat(4,58px);display:grid;overflow:hidden}.sudoku button{border:1px solid var(--line);background:var(--card);width:58px;height:58px;color:var(--accent);font-size:22px;font-weight:600}.sudoku button.given{color:var(--text);background:var(--soft)}.sudoku button.rb{border-right:2px solid var(--ink)}.sudoku button.bb{border-bottom:2px solid var(--ink)}.mines{gap:2px;width:min(320px,84vw);display:grid}.mines button{aspect-ratio:1;background:#9cc8a0;border:0;border-radius:4px;padding:0;font-size:13px;font-weight:700}.mines button.open{background:var(--soft)}.on-btn{background:var(--ink)!important;color:var(--on-ink)!important}.rps{width:64px;height:64px;font-size:30px}@media (width<=760px){.frame{padding:0}.window{border-radius:0;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr}.side{border-right:0;border-top:1px solid var(--line);padding:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px));flex-direction:row;order:2;gap:0;overflow-x:auto}.brand,.who{display:none}.nav{flex-direction:column;align-items:center;gap:2px;min-width:62px;padding:6px 8px;font-size:10px}.nav span{font-size:18px}.mini-timer{white-space:nowrap;align-self:center;margin:0 4px}.side{align-items:center}.lofi{flex-direction:column;flex:none;align-items:center;width:96px;margin:0 4px;font-size:10px;display:flex}.lofi iframe{width:96px;height:54px}.main{padding:16px 16px 40px}.grid2,.grid3,.grid-cal{grid-template-columns:1fr}.theme-picks{grid-template-columns:repeat(2,minmax(0,1fr))}.log-line{grid-template-columns:1fr auto}.log-line>span:first-child{grid-column:1/-1}h1{font-size:24px}.banner{flex-direction:column;align-items:flex-start}}
