:root{--bg:#fbf7f2;--surface:#fff;--surface-2:#f6f1ea;--line:#efe7dc;--ink:#24190f;--text:#3a2e23;--muted:#9a8c7e;--faint:#c9bcae;--accent:#ff6b3d;--accent-soft:#ffe4d8;--study:#2f5bd3;--study-bg:#e4ecff;--work:#b4610b;--work-bg:#ffecd4;--health:#1f8a54;--health-bg:#dcf4e5;--life:#c2336e;--life-bg:#ffe2ed;--danger:#d64545;--grad:linear-gradient(90deg, #ffb36b, #ff6b3d 55%, #ff4f8b);--shadow:0 1px 2px #3c28140d, 0 8px 24px -12px #3c28142e;--font:"Plus Jakarta Sans", system-ui, "Segoe UI", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#15120f;--surface:#1e1a16;--surface-2:#26211c;--line:#2f2923;--ink:#f6efe7;--text:#e5dbcf;--muted:#9c8f81;--faint:#5d5248;--accent:#ff8a63;--accent-soft:#3a2219;--study:#8fb0ff;--study-bg:#1d2840;--work:#f3b066;--work-bg:#38270f;--health:#6fd8a0;--health-bg:#173325;--life:#f28cb5;--life-bg:#3b1a28;--shadow:0 1px 2px #0000004d, 0 10px 30px -14px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#15120f;--surface:#1e1a16;--surface-2:#26211c;--line:#2f2923;--ink:#f6efe7;--text:#e5dbcf;--muted:#9c8f81;--faint:#5d5248;--accent:#ff8a63;--accent-soft:#3a2219;--study:#8fb0ff;--study-bg:#1d2840;--work:#f3b066;--work-bg:#38270f;--health:#6fd8a0;--health-bg:#173325;--life:#f28cb5;--life-bg:#3b1a28;--shadow:0 1px 2px #0000004d, 0 10px 30px -14px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg)}body{color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;-webkit-tap-highlight-color:transparent;font-size:15px;line-height:1.55}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(700px 420px at 80% -8%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%);position:fixed;inset:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}svg{display:block}:focus-visible{outline:2.5px solid var(--accent);outline-offset:2px;border-radius:10px}::selection{background:var(--accent-soft)}.app{grid-template-columns:248px minmax(0,1fr) 320px;min-height:100dvh;display:grid}.side{border-inline-end:1px solid var(--line);flex-direction:column;gap:4px;height:100dvh;padding:28px 18px;display:flex;position:sticky;top:0}.brand{color:var(--ink);align-items:center;gap:10px;padding:0 10px 26px;font-size:18px;font-weight:800;display:flex}.brand img{border-radius:11px;width:34px;height:34px;box-shadow:0 6px 16px -6px #ff6b3d}.nav{color:var(--muted);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.nav:hover{background:var(--surface-2);color:var(--text)}.nav.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.nav .count{background:var(--surface-2);color:var(--muted);border-radius:99px;margin-inline-start:auto;padding:1px 8px;font-size:12px}.nav.active .count{background:var(--accent-soft);color:var(--accent)}.nav.focus-link{display:none}.side h6{letter-spacing:.08em;color:var(--faint);text-transform:uppercase;margin:22px 12px 6px;font-size:11px;font-weight:700}.cat{color:var(--text);text-align:start;border-radius:10px;align-items:center;gap:10px;width:100%;padding:7px 12px;font-size:14px;display:flex}.cat:hover{background:var(--surface-2)}.cat.on{background:var(--surface);box-shadow:var(--shadow);font-weight:700}.side.filtering .cat:not(.on){opacity:.5}.cat b{border-radius:4px;width:10px;height:10px}.cat span{color:var(--muted);margin-inline-start:auto;font-size:12px}.side-foot{gap:8px;margin-top:auto;padding:0 4px;display:flex}.pill{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px;font-size:13px;font-weight:600;display:flex}.pill:hover{border-color:var(--faint)}.sync{color:var(--muted);align-items:center;gap:6px;padding:0 12px 10px;font-size:12px;font-weight:600;display:flex}.sync i{background:var(--health);border-radius:50%;width:8px;height:8px}.sync.off i{background:var(--work)}.main{min-width:0;padding:34px 44px 60px}.panel{border-inline-start:1px solid var(--line);flex-direction:column;gap:18px;height:100dvh;padding:34px 26px;display:flex;position:sticky;top:0;overflow:auto}.mnav{display:none}.hero{justify-content:space-between;align-items:center;gap:20px;display:flex}.hero h1{color:var(--ink);letter-spacing:-.01em;font-size:36px;font-weight:800;line-height:1.15}.hero .sub{color:var(--muted);margin-top:2px;font-size:14px;font-weight:600}.daynav{flex:none;align-items:center;gap:8px;display:flex}.daynav>button,.daynav>input{background:var(--surface);border:1px solid var(--line);min-width:40px;height:40px;color:var(--text);border-radius:12px;place-items:center;display:grid}.daynav>button:hover{border-color:var(--faint)}.daynav .today-btn{padding:0 14px;font-size:13px;font-weight:700}.daynav .add-btn{white-space:nowrap;background:var(--accent);border-color:var(--accent);color:#fff;width:auto;box-shadow:0 6px 14px -6px var(--accent);align-items:center;gap:8px;margin-inline-end:8px;padding:0 8px 0 14px;font-size:14px;font-weight:800;display:flex}.daynav .add-btn:hover{border-color:var(--accent);filter:brightness(1.05)}.add-btn .k{background:#ffffff40;border-radius:6px;padding:1px 6px;font-size:11px}.page-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.page-head h1{color:var(--ink);letter-spacing:-.01em;font-size:32px;font-weight:800}.page-head p{color:var(--muted);margin-top:2px;font-size:14px}.btn{background:var(--surface);color:var(--ink);border:1px solid var(--line);white-space:nowrap;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:700;display:inline-flex}.btn:hover{border-color:var(--faint)}.btn.solid{background:var(--accent);border-color:var(--accent);color:#fff}.btn.solid:hover{filter:brightness(1.05)}.btn.dark{background:var(--ink);border-color:var(--ink);color:var(--bg)}.btn.danger{color:var(--danger)}.btn:disabled{opacity:.55;cursor:default}.hprog{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;align-items:center;gap:24px;margin:20px 0 22px;padding:16px 22px;display:flex}.hp-big{color:var(--ink);white-space:nowrap;letter-spacing:-.01em;font-size:32px;font-weight:800;line-height:1}.hp-big small{color:var(--muted);margin-inline-start:2px;font-size:15px;font-weight:600}.hp-track{background:var(--surface-2);border-radius:99px;flex:1;height:10px;margin:0 10px;position:relative}.hp-fill{background:var(--grad);border-radius:99px;transition:width .6s cubic-bezier(.2,.8,.2,1);position:absolute;inset-block:0;inset-inline-start:0}.ms{margin-top:-11px;background:var(--surface);border:2px solid var(--line);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;margin-inline-start:-11px;font-size:11px;font-weight:800;transition:background .3s,border-color .3s;display:grid;position:absolute;top:50%}.ms.on{background:var(--accent);border-color:var(--accent);box-shadow:0 4px 10px -3px var(--accent)}.ms.last{font-size:12px}.ms.last.on{background:linear-gradient(135deg,#ffd23f,#ff9a3d);border-color:#ffb13d}.ms.hit{animation:.6s cubic-bezier(.3,1.6,.5,1) msHit}@keyframes msHit{0%{transform:scale(.4)}60%{transform:scale(1.35)}to{transform:scale(1)}}.hp-side{text-align:end;white-space:nowrap;line-height:1.35}.hp-side b{color:var(--ink);font-size:15px;font-weight:800;display:block}.hp-side span{color:var(--muted);font-size:12px;font-weight:600}.sec{align-items:center;gap:10px;margin:0 2px 14px;display:flex}.sec h2{color:var(--ink);font-size:15px;font-weight:800}.sec .n{color:var(--muted);background:var(--surface-2);border-radius:99px;padding:1px 9px;font-size:12px;font-weight:700}.sec .line{background:var(--line);flex:1;height:1px}.empty{border:2px dashed var(--line);text-align:center;color:var(--muted);border-radius:20px;padding:28px;font-size:14px}.empty b{color:var(--ink);margin-bottom:4px;font-size:15px;display:block}.empty .btn{margin-top:14px}.tl{margin-bottom:30px}.tl-row,.tl-gap,.tl-now{grid-template-columns:58px 50px minmax(0,1fr);column-gap:8px;display:grid}.tl-time{color:var(--ink);text-align:end;flex-direction:column;justify-content:space-between;align-items:flex-end;padding-block:8px;font-size:13px;font-weight:800;line-height:1.2;display:flex}.tl-time small{color:var(--muted);font-size:11px;font-weight:600;display:block}.tl-time.anytime{color:var(--faint);justify-content:flex-start;font-size:11px}.tl-rail{justify-content:center;display:flex;position:relative}.tl-rail:before{content:"";inset-block:0;background:repeating-linear-gradient(to bottom, var(--line) 0 6px, transparent 6px 11px);width:2px;margin-left:-1px;position:absolute;left:50%}.tl>:first-child .tl-rail:before{top:18px}.tl>:last-child .tl-rail:before{height:24px;bottom:auto}.tl-pill{z-index:1;background:var(--cbg);border:2px solid var(--c);border-radius:17px;justify-content:center;align-self:stretch;width:34px;margin:3px 0 6px;padding-top:5px;font-size:16px;transition:all .3s;display:flex;position:relative}.tl-card{background:var(--cbg);cursor:pointer;outline-offset:3px;text-align:start;width:100%;color:inherit;border-radius:16px;margin:3px 0 6px;padding-block:10px;padding-inline:16px 50px;transition:transform .15s,box-shadow .2s,background .3s;display:block;position:relative}.tl-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.tl-sub{color:var(--c);font-size:12px;font-weight:700}.tl-card h3{color:var(--ink);overflow-wrap:anywhere;margin:1px 0 6px;font-size:15px;font-weight:800;line-height:1.3}.tl-meta{flex-wrap:wrap;gap:6px;font-size:11px;font-weight:700;display:flex}.tl-meta span{background:var(--surface);border-radius:99px;padding:1px 8px}.tl-meta .tg{color:var(--c)}.tl-meta .kd{color:var(--muted)}.tl-meta .mv{color:var(--accent)}.tl-check{top:10px;border:2px solid var(--c);background:var(--surface);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;transition:all .25s;display:grid;position:absolute;inset-inline-end:12px}.tl-check svg{opacity:0;transition:opacity .2s}.tl-card:hover .tl-check{background:var(--cbg)}.tl-row.done .tl-card{box-shadow:inset 0 0 0 1.5px var(--line);background:0 0}.tl-row.done h3{color:var(--muted);text-decoration:line-through}.tl-row.done .tl-sub,.tl-row.done .tl-meta{opacity:.6}.tl-row.done .tl-check{background:var(--c)}.tl-row.done .tl-check svg{opacity:1}.tl-row.done .tl-pill{background:var(--surface-2);border-color:var(--line);filter:grayscale(.6);opacity:.7}.tl-row.cur .tl-card{background:var(--surface);box-shadow:0 0 0 2px var(--c), 0 14px 30px -18px var(--c)}.tl-row.cur .tl-pill{box-shadow:0 0 0 5px color-mix(in srgb, var(--c) 20%, transparent)}.tl-prog{background:var(--cbg);border-radius:99px;height:6px;margin-top:10px;overflow:hidden}.tl-prog i{background:var(--c);border-radius:99px;height:100%;display:block}.tl-left{color:var(--c);margin-top:6px;font-size:12px;font-weight:800}.tl-row.just .tl-check{animation:.45s cubic-bezier(.3,1.6,.5,1) pop}@keyframes pop{0%{transform:scale(.6)}to{transform:scale(1)}}.gap-pill{color:var(--muted);background:var(--surface-2);border-radius:99px;place-self:center start;margin:0 0 10px;padding:4px 12px;font-size:12px;font-weight:700}.tl-now{align-items:center;margin:0 0 10px}.tl-now .tl-time{color:var(--accent);justify-content:center;padding:0}.tl-now .tl-rail{align-items:center;min-height:22px}.tl-now .tl-rail i{z-index:1;background:var(--accent);width:14px;height:14px;box-shadow:0 0 0 5px var(--accent-soft);border-radius:50%;animation:2s ease-in-out infinite beat;position:relative}@keyframes beat{50%{box-shadow:0 0 0 8px var(--accent-soft)}}.now-line{background:var(--accent);border-radius:2px;height:2px;position:relative}.now-line em{inset-inline-end:0;color:#fff;background:var(--accent);border-radius:99px;padding:2px 10px;font-size:11px;font-style:normal;font-weight:800;position:absolute;top:-11px}.c-study{--c:var(--study);--cbg:var(--study-bg)}.c-work{--c:var(--work);--cbg:var(--work-bg)}.c-health{--c:var(--health);--cbg:var(--health-bg)}.c-life{--c:var(--life);--cbg:var(--life-bg)}.more{bottom:6px;width:30px;height:30px;color:var(--c);opacity:.6;border-radius:9px;place-items:center;display:grid;position:absolute;inset-inline-end:10px}.more:hover{background:var(--surface);opacity:1}.menu{z-index:30;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:14px;min-width:200px;padding:6px;position:absolute;box-shadow:0 18px 40px -12px #00000040}.menu button,.menu label{text-align:start;cursor:pointer;border-radius:9px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:13px;font-weight:600;display:flex;position:relative}.menu button:hover,.menu label:hover{background:var(--surface-2)}.menu hr{border:0;border-top:1px solid var(--line);margin:4px 0}.menu .danger{color:var(--danger)}.menu input[type=date]{opacity:0;cursor:pointer;position:absolute;inset:0}.box{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:20px}.box h4{color:var(--ink);justify-content:space-between;align-items:center;font-size:14px;font-weight:800;display:flex}.box h4 small{color:var(--muted);font-size:12px;font-weight:600}.f-modes{background:var(--surface-2);border-radius:12px;gap:4px;margin-top:14px;padding:4px;display:flex}.f-modes button{color:var(--muted);border-radius:9px;flex:1;padding:6px 0;font-size:12px;font-weight:700}.f-modes button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #00000014}.f-ring{width:180px;height:180px;margin:16px auto 12px;position:relative}.f-ring svg{transform:rotate(-90deg)}.f-ring .arc{transition:stroke-dashoffset 1s linear}.f-ring .c{text-align:center;place-items:center;display:grid;position:absolute;inset:0}.f-ring strong{color:var(--ink);font-size:40px;font-weight:800;line-height:1;display:block}.f-ring small{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-top:6px;font-size:11px;font-weight:800;display:block}.focus.running .f-ring small{color:var(--accent)}.focus.brk.running .f-ring small{color:var(--health)}.f-task{background:var(--surface-2);border-radius:14px;align-items:center;gap:10px;padding:7px 7px 7px 8px;display:flex}.f-task .e{background:var(--surface);border-radius:10px;flex:none;place-items:center;width:32px;height:32px;font-size:17px;display:grid}.f-task .n{min-width:0;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;font-weight:700;overflow:hidden}.f-task button{width:30px;height:30px;color:var(--muted);border-radius:9px;font-size:16px}.f-task button:hover{background:var(--surface);color:var(--ink)}.f-btns{gap:8px;margin-top:10px;display:flex}.f-play{background:var(--ink);height:44px;color:var(--bg);border-radius:14px;flex:1;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:800;transition:background .2s;display:flex}.focus.running .f-play{background:var(--accent);color:#fff}.focus.brk.running .f-play{background:var(--health)}.f-reset{background:var(--surface-2);width:44px;height:44px;color:var(--muted);border-radius:14px;font-size:18px}.f-reset:hover{color:var(--ink)}.stats{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stat{background:var(--cbg);color:var(--c);border-radius:18px;padding:14px}.stat strong{font-size:24px;font-weight:800;line-height:1.1;display:block}.stat span{opacity:.85;font-size:12px;font-weight:600}.cal{text-align:center;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:14px;display:grid}.cal .h{color:var(--faint);font-size:11px;font-weight:700}.cal .d{aspect-ratio:1;color:var(--muted);background:var(--surface-2);border-radius:9px;place-items:center;font-size:12px;font-weight:700;display:grid}.cal button.d:hover{outline:2px solid var(--faint)}.cal .d.p{background:var(--work-bg);color:var(--work)}.cal .d.f{background:var(--health-bg);color:var(--health)}.cal .d.t{background:var(--ink);color:var(--bg)}.cal .d.sel{box-shadow:0 0 0 2px var(--accent)}.cal .d.fut{color:var(--faint);border:1px dashed var(--line);background:0 0;font-weight:500}.modal{z-index:40;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1e140a52;place-items:start center;padding:10vh 16px 16px;animation:.18s fade;display:grid;position:fixed;inset:0;overflow:auto}@keyframes fade{0%{opacity:0}}.sheet{background:var(--surface);border-radius:24px;width:min(540px,100%);padding:22px;animation:.25s cubic-bezier(.2,.8,.2,1) up;box-shadow:0 30px 70px -20px #0006}@keyframes up{0%{opacity:0;transform:translateY(14px)scale(.98)}}.sheet-h{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.sheet-h h3{color:var(--ink);font-size:18px;font-weight:800}.sheet .x{width:32px;height:32px;color:var(--muted);border-radius:10px}.sheet .x:hover{background:var(--surface-2)}.field{background:var(--surface-2);border-radius:16px;align-items:center;gap:12px;padding:8px 14px 8px 8px;display:flex}.emo-prev{background:var(--surface);border:0;border-radius:13px;flex:none;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.emo-prev input{text-align:center;background:0 0;border:0;outline:0;width:100%;font-size:22px}.field input.title{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:16px;font-weight:600}.field input::placeholder{color:var(--faint);font-weight:500}.sheet label.l{color:var(--muted);margin:18px 2px 8px;font-size:12px;font-weight:700;display:block}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{opacity:.55;background:var(--cbg);color:var(--c);border-radius:99px;padding:7px 14px;font-size:13px;font-weight:700}.chip.on,.chip:hover{opacity:1}.chip.on{box-shadow:0 0 0 2px var(--c)}.seg{flex-wrap:wrap;gap:6px;display:flex}.seg button{background:var(--surface-2);color:var(--muted);border-radius:10px;padding:7px 13px;font-size:13px;font-weight:700}.seg button.on{background:var(--ink);color:var(--bg)}.seg input[type=time],.seg input[type=number]{border:1px solid var(--line);background:var(--surface);border-radius:10px;width:120px;padding:6px 10px;font-size:13px;font-weight:700}.wd{gap:6px;display:flex}.wd button{background:var(--surface-2);width:38px;height:38px;color:var(--muted);border-radius:12px;font-size:13px;font-weight:800}.wd button.on{background:var(--accent);color:#fff}.sheet-f{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}.sheet-f .left{margin-inline-end:auto}.form-err{color:var(--danger);margin-top:12px;font-size:13px;font-weight:600}.fx-list{flex-direction:column;gap:10px;display:flex}.fx{background:var(--surface);border:1px solid var(--line);border-radius:18px;align-items:center;gap:14px;padding:12px 14px;display:flex;position:relative;overflow:hidden}.fx:before{content:"";background:var(--c);width:5px;position:absolute;inset-block:0;inset-inline-start:0}.fx .e{background:var(--cbg);border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-size:20px;display:grid}.fx .n{flex:1;min-width:0}.fx .n b{color:var(--ink);overflow-wrap:anywhere;font-size:15px;display:block}.fx .n span{color:var(--muted);font-size:12px;font-weight:600}.fx .days{gap:3px;display:flex}.fx .days i{background:var(--surface-2);width:22px;height:22px;color:var(--faint);border-radius:7px;place-items:center;font-size:11px;font-style:normal;font-weight:800;display:grid}.fx .days i.on{background:var(--cbg);color:var(--c)}.icon-btn{width:34px;height:34px;color:var(--muted);border-radius:10px;place-items:center;display:grid}.icon-btn:hover{background:var(--surface-2);color:var(--ink)}.icon-btn:disabled{opacity:.3;cursor:default;background:0 0}.up-day{background:var(--surface);border:1px solid var(--line);border-radius:18px;margin-bottom:12px;padding:14px 16px}.up-day header{align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.up-day header b{color:var(--ink);font-size:15px}.up-day header span{color:var(--muted);font-size:13px;font-weight:600}.up-day header a{color:var(--accent);margin-inline-start:auto;font-size:13px;font-weight:700}.up-row{border-top:1px solid var(--line);align-items:center;gap:10px;padding:6px 0;font-size:14px;display:flex}.up-row:first-of-type{border-top:0}.up-row .t{width:46px;color:var(--muted);font-size:12px;font-weight:800}.up-row .dot{background:var(--c);border-radius:50%;flex:none;width:8px;height:8px}.up-row .nm{min-width:0;color:var(--ink);overflow-wrap:anywhere;flex:1;font-weight:600}.up-row .du{color:var(--muted);font-size:12px;font-weight:600}.up-none{color:var(--muted);font-size:13px}.big-stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px;display:grid}.hist-row{border-top:1px solid var(--line);align-items:center;gap:14px;padding:10px 0;font-size:14px;display:flex}.hist-row:first-child{border-top:0}.hist-row b{width:110px;color:var(--ink)}.hist-row .bar{background:var(--surface-2);border-radius:99px;flex:1;height:8px;overflow:hidden}.hist-row .bar i{background:var(--grad);border-radius:99px;height:100%;display:block}.hist-row span{text-align:end;width:60px;color:var(--muted);font-size:13px;font-weight:700}.set-box{background:var(--surface);border:1px solid var(--line);border-radius:20px;margin-bottom:14px;padding:18px 20px}.set-box h3{color:var(--ink);margin-bottom:4px;font-size:15px}.set-box p{color:var(--muted);margin-bottom:12px;font-size:13px}.set-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.kv{border-top:1px solid var(--line);justify-content:space-between;padding:8px 0;font-size:14px;display:flex}.kv:first-of-type{border-top:0}.kv b{color:var(--ink)}.auth{place-items:center;min-height:100dvh;padding:24px 16px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--line);width:min(420px,100%);box-shadow:var(--shadow);border-radius:28px;padding:32px 28px}.auth-card .logo{border-radius:18px;width:56px;height:56px;margin-bottom:18px;box-shadow:0 10px 24px -10px #ff6b3d}.auth-card h1{color:var(--ink);font-size:26px;font-weight:800}.auth-card>p{color:var(--muted);margin:4px 0 22px;font-size:14px}.inp{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;outline:0;width:100%;margin-bottom:10px;padding:12px 14px;font-size:15px;display:block}.inp:focus{border-color:var(--accent);background:var(--surface)}.auth-card .btn{width:100%;margin-top:6px;padding:12px}.switch{text-align:center;color:var(--muted);margin-top:16px;font-size:14px}.switch button{color:var(--accent);font-weight:700}.toast{background:var(--ink);color:var(--bg);opacity:0;pointer-events:none;z-index:60;border-radius:12px;max-width:calc(100vw - 32px);padding:10px 18px;font-size:13px;font-weight:600;transition:all .25s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(20px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.confetti{pointer-events:none;z-index:50;border-radius:2px;width:9px;height:14px;animation:linear forwards fall;position:fixed;top:-12px}@keyframes fall{to{transform:translateY(105vh)rotate(720deg)}}.loading{color:var(--muted);text-align:center;padding:40px 0;font-weight:600}.skeleton{background:var(--surface-2);border-radius:16px;height:70px;margin-bottom:10px;animation:1.2s ease-in-out infinite shimmer}@keyframes shimmer{50%{opacity:.5}}.err-box{background:var(--accent-soft);color:var(--ink);border-radius:14px;margin-bottom:14px;padding:12px 16px;font-size:14px;font-weight:600}@media (width<=1280px){.app{grid-template-columns:220px minmax(0,1fr) 290px}.main{padding:30px 30px 60px}}@media (width<=1100px){.app{grid-template-columns:220px minmax(0,1fr)}.app>.panel{display:none}.nav.focus-link{display:flex}}@media (width<=760px){.app{grid-template-columns:minmax(0,1fr)}.side{display:none}.main{padding:calc(18px + env(safe-area-inset-top)) 16px calc(96px + env(safe-area-inset-bottom))}.hero{flex-wrap:wrap;gap:12px}.hero h1{font-size:26px}.daynav{width:100%}.daynav .add-btn{margin-inline-end:auto}.daynav .add-btn .k{display:none}.hprog{gap:14px;padding:14px 16px}.hp-big{font-size:26px}.hp-side b{font-size:13px}.tl-row,.tl-gap,.tl-now{grid-template-columns:44px 40px minmax(0,1fr);column-gap:6px}.tl-time{font-size:12px}.tl-pill{width:30px;font-size:14px}.page-head h1{font-size:26px}.page-head{flex-wrap:wrap}.fx .days{display:none}.big-stats{grid-template-columns:1fr 1fr 1fr;gap:8px}.hist-row b{width:90px}.mnav{inset-inline:0;z-index:35;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:6px 6px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0}.mnav a{color:var(--muted);border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:6px 0;font-size:11px;font-weight:700;display:flex}.mnav a.active{color:var(--accent)}.modal{place-items:end center;padding:16px}.sheet{border-radius:24px 24px 18px 18px}}.mobile-only{display:none}@media (width<=760px){.mobile-only{display:block}}.main .cal .d{aspect-ratio:auto;height:42px}
