:root{--bg:#fff;--panel:#f6f5f4;--bg-soft:#f6f5f4;--bg-hover:#0000000a;--bg-active:#0000000f;--card:#fff;--fg:#191919;--fg-2:#0000009e;--fg-3:#0000006b;--line:#00000014;--line-2:#00000024;--shadow:0 0 0 1px #0000000d, 0 1px 3px #0000000a;--shadow-card:0 0 0 1px #0000000a, 0 4px 18px #0000000a;--shadow-lift:0 16px 40px #0000001f, 0 0 0 1px #0000000d;--accent:#0075de;--accent-hover:#005bab;--accent-soft:#e5f2fd;--accent-soft-fg:#0075de;--ring:#0075de38;--q1:#c4541a;--q1-bg:#fdecc8;--q1-dot:#e07b39;--q2:#2b7a52;--q2-bg:#dbeddb;--q2-dot:#4c9a6b;--q3:#1f6a9e;--q3-bg:#d3e5ef;--q3-dot:#3d8ecb;--q4:#6b6a67;--q4-bg:#e3e2e0;--q4-dot:#9b9a97;--ok:#4c9a6b;--over:#d44c47;--over-bg:#ffe2dd;--font:"Inter", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#191919;--panel:#202020;--bg-soft:#202020;--bg-hover:#ffffff0e;--bg-active:#ffffff17;--card:#2a2a2a;--fg:#ffffffe6;--fg-2:#ffffff94;--fg-3:#ffffff61;--line:#ffffff14;--line-2:#ffffff24;--shadow:0 0 0 1px #ffffff0f;--shadow-card:0 0 0 1px #ffffff0d;--shadow-lift:0 16px 40px #00000080, 0 0 0 1px #ffffff1a;--accent:#2383e2;--accent-hover:#3b91e6;--accent-soft:#2383e229;--accent-soft-fg:#6fb0f0;--ring:#2383e259;--q1:#e59a60;--q1-bg:#d9730d2e;--q1-dot:#e07b39;--q2:#72b78e;--q2-bg:#44836133;--q2-dot:#4c9a6b;--q3:#6aaee0;--q3-bg:#337ea938;--q3-dot:#3d8ecb;--q4:#aaa9a6;--q4-bg:#ffffff14;--q4-dot:#9b9a97;--ok:#5aa679;--over:#e5716c;--over-bg:#d44c472e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#191919;--panel:#202020;--bg-soft:#202020;--bg-hover:#ffffff0e;--bg-active:#ffffff17;--card:#2a2a2a;--fg:#ffffffe6;--fg-2:#ffffff94;--fg-3:#ffffff61;--line:#ffffff14;--line-2:#ffffff24;--shadow:0 0 0 1px #ffffff0f;--shadow-card:0 0 0 1px #ffffff0d;--shadow-lift:0 16px 40px #00000080, 0 0 0 1px #ffffff1a;--accent:#2383e2;--accent-hover:#3b91e6;--accent-soft:#2383e229;--accent-soft-fg:#6fb0f0;--ring:#2383e259;--q1:#e59a60;--q1-bg:#d9730d2e;--q1-dot:#e07b39;--q2:#72b78e;--q2-bg:#44836133;--q2-dot:#4c9a6b;--q3:#6aaee0;--q3-bg:#337ea938;--q3-dot:#3d8ecb;--q4:#aaa9a6;--q4-bg:#ffffff14;--q4-dot:#9b9a97;--ok:#5aa679;--over:#e5716c;--over-bg:#d44c472e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font:15px/1.5 var(--font);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;margin:0;transition:background-color .2s,color .2s}button,input,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.page{max-width:1280px;margin:0 auto;padding:0 32px 120px}@media (width<=640px){.page{padding:0 16px 180px}}.topbar{z-index:20;background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:saturate(1.5)blur(12px);backdrop-filter:saturate(1.5)blur(12px);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top);position:sticky;top:0}.topbar-inner{align-items:center;gap:12px;max-width:1280px;height:60px;margin:0 auto;padding:0 32px;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.topbar-right{align-items:center;gap:10px;margin-left:auto;display:flex}@media (width<=640px){.topbar-inner{height:56px;padding:0 16px}.topbar-right .btn.sm{display:none}}.btn{border:1px solid var(--line-2);background:var(--card);height:34px;color:var(--fg);border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:500;transition:background .12s,border-color .12s,transform .1s,box-shadow .12s;display:inline-flex}.btn:hover{background:var(--bg-hover)}.btn:active{transform:scale(.98)}.btn.sm{height:32px;padding:0 12px}.btn.lg{border-radius:10px;height:44px;padding:0 20px;font-size:16px}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.primary:disabled{opacity:.4;cursor:default;transform:none}.btn.soft{background:var(--accent-soft);color:var(--accent-soft-fg);border-color:#0000}.btn.soft:hover{filter:brightness(.97)}.btn.pill-btn{border-radius:16px;height:32px}.round{background:var(--fg);width:32px;height:32px;color:var(--bg);border:0;border-radius:50%;place-items:center;transition:transform .12s,opacity .12s;display:grid}.round:hover{transform:scale(1.06)}.round:active{transform:scale(.94)}.linkbtn{color:var(--fg-2);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:14px;text-decoration:underline}.linkbtn:hover{color:var(--fg)}.icon-btn{width:32px;height:32px;color:var(--fg-2);background:0 0;border:0;border-radius:8px;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--bg-hover);color:var(--fg)}.profile{position:relative}.avatar-btn{background:0 0;border:0;border-radius:50%;place-items:center;padding:3px;display:grid}.avatar-btn:hover .avatar,.avatar-btn[aria-expanded=true] .avatar{box-shadow:0 0 0 3px var(--ring)}.avatar{background:var(--fg);width:32px;height:32px;color:var(--bg);border-radius:50%;place-items:center;font-size:14px;font-weight:700;transition:box-shadow .15s;display:grid}.avatar.lg{width:40px;height:40px;font-size:17px}.profile-head{align-items:center;gap:12px;margin-bottom:14px;display:flex}.profile-name{font-size:15px;font-weight:700}.profile-sub{color:var(--fg-3);font-size:13px}.menu-label{color:var(--fg-2);align-items:center;gap:6px;margin:0 0 8px;font-size:13px;font-weight:600;display:flex}.segmented{background:var(--bg-active);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;display:grid}.segmented button{height:32px;color:var(--fg-2);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:500;transition:background .12s,color .12s;display:inline-flex}.segmented button:hover{color:var(--fg)}.segmented button.on{background:var(--card);color:var(--fg);box-shadow:var(--shadow)}.menu-item{width:100%;height:34px;color:var(--fg-2);box-sizing:content-box;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;margin:0 -8px;padding:0 8px;font-size:14px;display:flex}.menu-item:hover{background:var(--bg-hover);color:var(--over)}.popover{z-index:40;background:var(--card);width:min(360px,100vw - 32px);max-height:calc(100vh - 80px);box-shadow:var(--shadow-lift);border-radius:14px;padding:16px;animation:.12s ease-out fade-in;position:absolute;top:46px;right:0;overflow-y:auto}.popover p{color:var(--fg-2);margin:0 0 10px;font-size:13px}.copyrow{gap:6px;margin-bottom:14px;display:flex}.copyrow code{text-overflow:ellipsis;white-space:nowrap;background:var(--panel);border-radius:8px;flex:1;min-width:0;padding:7px 10px;font-size:12px;overflow:hidden}.conn{border-top:1px solid var(--line);align-items:center;gap:8px;padding:8px 0;font-size:13px;display:flex}.conn small{color:var(--fg-3);display:block}.conn button{margin-left:auto}.menu-sep{border-top:1px solid var(--line);margin:12px -16px}.hero{flex-wrap:wrap;align-items:flex-end;gap:24px;padding:28px 0 20px;display:flex}.hero-text{flex:1;min-width:280px}.eyebrow{color:var(--fg-2);font-size:13px;font-weight:500}.hero h1{letter-spacing:-.035em;margin:4px 0 6px;font-size:clamp(28px,3.4vw,42px);font-weight:700;line-height:1.08}.hl{vertical-align:baseline;background:var(--accent-soft);border-radius:999px;padding:0 .28em .02em .22em;line-height:1.12;display:inline-block}.hl i{background:var(--accent);vertical-align:.14em;border-radius:50%;width:.28em;height:.28em;margin-right:.18em;display:inline-block}.hero p{color:var(--fg-2);margin:0;font-size:15px}.hero-side{align-items:stretch;gap:10px;display:flex}.upnext,.stat{text-align:left;background:var(--panel);border:0;border-radius:14px;flex-direction:column;justify-content:center;gap:2px;min-width:170px;padding:12px 16px;display:flex}.upnext{max-width:300px;transition:background .12s,box-shadow .12s}.upnext:not(:disabled):hover{box-shadow:0 0 0 1px var(--line-2)}.upnext:disabled{cursor:default}.upnext .eyebrow{color:var(--accent-soft-fg);align-items:center;gap:5px;display:flex}.upnext .title{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.upnext:disabled .title{color:var(--fg-3);font-weight:500}.stat{text-align:right;align-items:flex-end}.stat-num{color:var(--fg-2);font-size:15px}.stat-num b{letter-spacing:-.02em;color:var(--fg);font-size:24px;font-weight:700}.stat small{color:var(--fg-3);font-size:12px}.stat.over b,.stat.over small{color:var(--over)}@media (width<=640px){.hero{gap:14px;padding:20px 0 16px}.hero-side{width:100%}.hero-side>*{flex:1;min-width:0}.upnext{max-width:none}}.quick-wrap{z-index:15;background:var(--card);box-shadow:var(--shadow-card), 0 6px 20px #0000000d;border-radius:14px;margin:0 0 20px;transition:box-shadow .15s;position:sticky;top:70px}.quick-wrap.open{box-shadow:0 0 0 3px var(--ring), var(--shadow-lift)}.quick{min-height:50px;color:var(--fg-3);align-items:center;gap:10px;padding:6px 8px 6px 16px;display:flex}.quick input{min-width:0;color:var(--fg);background:0 0;border:0;outline:0;flex:1;font-size:17px}.quick input::placeholder{color:var(--fg-3)}.send{background:var(--accent);color:#fff;border:0;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;transition:transform .12s,opacity .12s,background .12s;display:grid}.send:hover{background:var(--accent-hover)}.send:disabled{opacity:.3;cursor:default}.send:not(:disabled):active{transform:scale(.9)}.kbd{color:var(--fg-3);border:1px solid var(--line-2);border-radius:5px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.pills{flex-direction:column;gap:8px;padding:0 14px 14px;animation:.15s ease-out fade-in;display:flex}.pill-row{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:6px;display:flex;overflow-x:auto}.pill-row::-webkit-scrollbar{display:none}.pill{border:1px solid var(--line-2);height:30px;color:var(--fg-2);white-space:nowrap;background:0 0;border-radius:15px;flex-shrink:0;padding:0 12px;font-size:13px;font-weight:500;transition:background .12s,color .12s,border-color .12s,transform .1s}.pill:active{transform:scale(.95)}.pill:hover{background:var(--bg-hover)}.pill.on{background:var(--fg);border-color:var(--fg);color:var(--bg)}.pill.q1.on{background:var(--q1-bg);color:var(--q1);border-color:#0000}.pill.q2.on{background:var(--q2-bg);color:var(--q2);border-color:#0000}.pill.q3.on{background:var(--q3-bg);color:var(--q3);border-color:#0000}.pill.q4.on{background:var(--q4-bg);color:var(--q4);border-color:#0000}.pill-sep{background:var(--line-2);flex-shrink:0;width:1px;margin:4px 2px}.quick-hint{color:var(--fg-3);font-size:12px}@media (width<=640px){.quick-wrap{top:auto;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:30;border-radius:20px;flex-direction:column;max-width:none;margin:0;display:flex;position:fixed}.quick-wrap .kbd{display:none}.quick{min-height:54px}.pills{order:-1;padding-top:14px;padding-bottom:4px}}.section{background:var(--panel);border-radius:20px;padding:22px 24px;position:relative}.section-head{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.section-head h2{letter-spacing:-.025em;flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 0;font-size:26px;font-weight:700;display:flex}.nav{align-items:center;gap:8px;margin-left:auto;display:flex}.tag{letter-spacing:0;background:var(--q2-bg);height:24px;color:var(--q2);border-radius:6px;align-items:center;padding:0 8px;font-size:13px;font-weight:500;display:inline-flex}.tag-over{background:var(--over-bg);color:var(--over)}@media (width<=640px){.section{border-radius:16px;padding:18px 14px}.section-head h2{font-size:22px}}.week{scroll-snap-type:x mandatory;grid-template-columns:repeat(7,minmax(140px,1fr));gap:12px;margin:0 -2px;padding:2px 2px 8px;display:grid;overflow-x:auto}.day{scroll-snap-align:start;background:var(--card);min-height:190px;box-shadow:var(--shadow-card);border-radius:14px;flex-direction:column;gap:8px;padding:12px;transition:box-shadow .15s,transform .15s;display:flex}.day.today{box-shadow:0 0 0 2px var(--accent), var(--shadow-card)}.day.today .day-name:after{content:"Today";color:var(--accent-soft-fg);background:var(--accent-soft);vertical-align:1px;border-radius:5px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:600}.day.past{opacity:.6}.day.drop{box-shadow:0 0 0 2px var(--accent), 0 0 0 6px var(--ring);transform:translateY(-2px)}.day-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;column-gap:6px;display:flex}.day-name{white-space:nowrap;letter-spacing:-.01em;font-size:15px;font-weight:700}.day-date{color:var(--fg-3);white-space:nowrap;margin-left:auto;font-size:12px}.day-load{color:var(--fg-2);justify-content:space-between;font-size:12px;display:flex}.day-load .over{color:var(--over);font-weight:600}.bar{background:var(--bg-active);border-radius:4px;height:4px;margin-bottom:2px;overflow:hidden}.bar i{background:var(--ok);border-radius:4px;height:100%;transition:width .35s cubic-bezier(.2,.8,.2,1),background .2s;display:block}.bar i.over{background:var(--over)}.empty{color:var(--fg-3);padding:4px 2px;font-size:13px}.empty.rest{color:var(--fg-3);flex-direction:column;align-items:center;gap:2px;padding-top:10px;display:flex}.doodle-moon{width:64px;color:var(--fg);opacity:.85}.unschedule{border:1.5px dashed var(--line-2);text-align:center;color:var(--fg-3);border-radius:12px;margin-top:14px;padding:12px;font-size:13px;transition:all .15s}.unschedule.drop{border-color:var(--over);color:var(--over);background:var(--over-bg)}@media (width<=900px){.week{grid-template-columns:repeat(7,78%)}}@media (width>=641px) and (width<=900px){.week{grid-template-columns:repeat(7,42%)}}.doodle-peek,.doodle-plant,.doodle-plane{color:var(--fg);pointer-events:none}.doodle-peek{z-index:0;width:104px;position:absolute;bottom:40px;left:-84px}.nav .doodle-plant{width:44px;margin:-18px 6px 0 0}.doodle-plane{opacity:.9;width:88px;height:auto;margin-left:4px}@media (width<=1400px){.doodle-peek{display:none}}@media (width<=640px){.nav .doodle-plant{display:none}.doodle-plane{width:64px}}.card{background:var(--card);box-shadow:var(--shadow);touch-action:manipulation;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;transition:box-shadow .15s,transform .15s;display:flex;position:relative}.card:hover{box-shadow:0 0 0 1px var(--line-2), 0 4px 12px #0000000f}.day .card{background:var(--panel);box-shadow:none}.day .card:hover{box-shadow:0 0 0 1px var(--line-2)}.card.dragging{opacity:.35}.card.overlay{box-shadow:var(--shadow-lift);cursor:grabbing;background:var(--card);transform:rotate(1.5deg)scale(1.03)}.card.done .card-title{color:var(--fg-3);text-decoration:line-through}.card-main{flex:1;min-width:0}.card-title{overflow-wrap:break-word;cursor:grab;font-size:14.5px;font-weight:500;line-height:1.4}.card.compact{cursor:grab;gap:8px;padding:9px 10px}.card.compact .card-title{font-size:13.5px}.card.compact .est{margin:5px 0 0;display:inline-block}.card-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.card .est{color:var(--fg-2);background:var(--bg-active);white-space:nowrap;border-radius:5px;height:20px;margin-left:auto;padding:0 6px;font-size:12px;font-weight:500;line-height:20px}.select{appearance:none;background:var(--bg-active) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='3'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 7px center;height:26px;color:var(--fg-2);cursor:pointer;border:0;border-radius:6px;max-width:140px;padding:0 22px 0 8px;font-size:12.5px;font-weight:500}.select:hover{color:var(--fg)}.handle,.trash{color:var(--fg-3);background:0 0;border:0;border-radius:6px;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.handle{cursor:grab;touch-action:none}.trash{opacity:0;margin-left:auto;transition:opacity .12s}.card:hover .trash,.card:focus-within .trash{opacity:1}@media (hover:none){.trash{opacity:1}}.handle:hover,.trash:hover{background:var(--bg-hover);color:var(--fg)}.trash:hover{color:var(--over)}.title-input{background:var(--panel);border:0;border-radius:5px;outline:0;width:100%;margin:0 -4px;padding:0 4px;font-size:14.5px;font-weight:500}.check{border:1.5px solid var(--line-2);background:var(--card);color:#fff;border-radius:5px;flex-shrink:0;place-items:center;width:18px;height:18px;margin-top:1px;padding:0;transition:background .15s,border-color .15s,transform .15s;display:grid}.check:hover{border-color:var(--accent);background:var(--accent-soft)}.check:active{transform:scale(.85)}.check.on{background:var(--accent);border-color:var(--accent)}.check svg{width:12px;height:12px}.lower{grid-template-columns:300px 1fr;align-items:start;gap:24px;margin-top:24px;display:grid}@media (width<=960px){.lower{grid-template-columns:1fr}}.panel{background:var(--panel);border-radius:20px;padding:24px;position:sticky;top:150px}.panel h2{letter-spacing:-.025em;margin:4px 0 6px;font-size:26px;font-weight:700}.panel p{color:var(--fg-2);margin:0 0 18px;font-size:14px}.field{color:var(--fg-2);margin-bottom:14px;font-size:13px;font-weight:500;display:block}.field input,.field select{border:1px solid var(--line-2);background:var(--card);width:100%;height:40px;color:var(--fg);border-radius:10px;outline:none;margin-top:6px;padding:0 12px;font-size:15px;display:block}.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring)}.panel .btn.primary{width:100%;height:42px}@media (width<=960px){.panel{position:static}}.matrix-section{background:0 0;padding:0}.matrix{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=640px){.matrix{grid-template-columns:1fr}}.quad{background:var(--panel);border-radius:20px;flex-direction:column;gap:8px;min-height:240px;padding:20px;transition:box-shadow .15s;display:flex}.quad.drop{box-shadow:0 0 0 2px var(--qdot), 0 0 0 6px color-mix(in srgb, var(--qdot) 20%, transparent)}.quad.collapsed{min-height:0}.quad-head{align-items:flex-start;gap:12px;display:flex}.quad-num{background:var(--qbg);width:32px;height:32px;color:var(--qc);border-radius:9px;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.quad-axis{color:var(--fg-2);font-size:13px;font-weight:500}.quad-name{letter-spacing:-.02em;font-size:20px;font-weight:700;line-height:1.2}.count{background:var(--card);min-width:28px;height:28px;box-shadow:var(--shadow);color:var(--fg-2);border-radius:14px;place-items:center;margin-left:auto;padding:0 8px;font-size:13px;font-weight:600;display:grid}.quad-hint{color:var(--fg-2);margin:2px 0 8px;font-size:14px}.quad-list{flex-direction:column;flex:1;gap:8px;min-height:40px;display:flex}.foot{color:var(--fg-3);margin-top:14px;font-size:13px}@media (width<=640px){.quad{border-radius:16px;padding:16px 14px}}.toasts{z-index:50;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;color:#ffffffeb;background:#191919;border-radius:12px;align-items:center;gap:12px;padding:10px 10px 10px 16px;font-size:14px;font-weight:500;display:flex;box-shadow:0 10px 30px #00000040}:root[data-theme=dark] .toast{background:#373737}.toast button{color:#fff;background:#ffffff24;border:0;border-radius:8px;padding:4px 12px;font-weight:600}.toast button:hover{background:#ffffff38}.toast.error{background:var(--over)}.login{place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{text-align:center;width:100%;max-width:380px}.login-card .doodle-plant{width:84px;margin:0 auto 8px;display:block;position:static}.login-card h1{letter-spacing:-.04em;margin:8px 0 6px;font-size:40px;font-weight:700}.login-card p{color:var(--fg-2);margin:0 0 28px;font-size:16px}.login-card .field{text-align:left}.login-card .btn.primary{width:100%;height:44px;margin-top:6px;font-size:15px}.err{background:var(--over-bg);color:var(--over);text-align:left;border-radius:10px;margin-bottom:14px;padding:9px 12px;font-size:14px}.loading{min-height:40vh;color:var(--fg-3);place-items:center;display:grid}@keyframes fade-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}@media (pointer:coarse){.check{position:relative}.check:after{content:"";position:absolute;inset:-12px}.select{height:32px;font-size:13px}.trash,.handle{width:32px;height:32px}}@media (width<=640px){body{padding-bottom:env(safe-area-inset-bottom)}.panel.add-panel{display:none}.toasts{bottom:calc(90px + env(safe-area-inset-bottom))}.day{min-height:160px}.foot{font-size:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.done-panel{flex-direction:column;max-height:calc(100vh - 170px);display:flex}.done-panel p{margin-bottom:14px}.done-list{flex:1;min-height:0;margin:0 -8px;padding:0 8px;overflow-y:auto}.done-group+.done-group{margin-top:14px}.done-day{color:var(--fg-3);margin-bottom:6px;font-size:12px;font-weight:600}.done-row{background:var(--card);box-shadow:var(--shadow);border-radius:10px;align-items:center;gap:10px;margin-bottom:4px;padding:7px 10px;animation:.2s ease-out fade-in;display:flex}.done-row .check{margin-top:0}.done-row .check.on:hover{background:var(--card);border-color:var(--line-2);color:#0000}.done-title{min-width:0;color:var(--fg-2);text-decoration:line-through;-webkit-text-decoration-color:var(--fg-3);text-decoration-color:var(--fg-3);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13.5px;overflow:hidden}.done-est{color:var(--fg-3);flex-shrink:0;font-size:12px}.qdot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.qdot.q1{background:var(--q1-dot)}.qdot.q2{background:var(--q2-dot)}.qdot.q3{background:var(--q3-dot)}.qdot.q4{background:var(--q4-dot)}.done-more{margin:8px 0 0 2px;font-size:13px}.done-empty{color:var(--fg-3);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:16px 0 8px;font-size:14px;display:flex}.done-empty .doodle-plant{width:64px;position:static}@media (width<=960px){.done-panel{order:2;max-height:none}.done-list{max-height:420px}}.on-cal{color:var(--accent-soft-fg);font-weight:500}.missed{color:var(--over);background:var(--over-bg);white-space:nowrap;border-radius:5px;height:22px;padding:0 6px;font-size:12px;font-weight:600;line-height:22px}
