:root{--bg:#f6f5f0;--bg-2:#efede6;--card:#fff;--card-2:#f6f5f0;--ink:#1f2623;--ink-2:#5f6962;--line:#e2e0d7;--accent:#3c7350;--accent-ink:#fff;--accent-soft:#e0eee4;--accent-text:#3c7350;--green:#3c7350;--green-soft:#e0eee4;--blue:#3c689e;--blue-soft:#dfe9f5;--rose:#ad4636;--rose-soft:#f8e1dc;--gold:#86631a;--gold-soft:#f5e8c6;--shadow:0 1px 2px #1f26230d, 0 6px 20px #1f26230d;--radius:18px;--radius-sm:12px;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--t-1:.12s;--t-2:.18s;--t-3:.24s;--t-press:70ms;--t-move:.28s;--t-page:.32s;--ease:cubic-bezier(.2, 0, 0, 1);--ease-glide:cubic-bezier(.32, .72, 0, 1);--ease-pop:cubic-bezier(.34, 1.3, .64, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;accent-color:var(--accent)}:root[data-theme=dark]{--bg:#1b1e1c;--bg-2:#2a2f2c;--card:#202422;--card-2:#262b28;--ink:#eceeea;--ink-2:#99a39d;--line:#2d3330;--accent:#6f9f7d;--accent-ink:#0f1a13;--accent-soft:#233026;--accent-text:#a9d4b5;--green:#74ad83;--green-soft:#26332a;--blue:#7ea6d6;--blue-soft:#25303d;--rose:#e48c78;--rose-soft:#3a2824;--gold:#d8b05a;--gold-soft:#39331f;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@supports (transition-timing-function:linear(0, 1)){:root{--ease-pop:linear(0, .134, .393, .644, .833, .952, 1.013, 1.036, 1.037, 1.029, 1.019, 1.01, 1.004, 1.001, 1)}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-body);margin:0;font-size:15px;line-height:1.5}html{-webkit-tap-highlight-color:transparent;scrollbar-gutter:stable}html,body{overscroll-behavior-x:none;touch-action:pan-x pan-y;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;max-width:100%;overflow-x:hidden}@supports (overflow:clip){html,body{overflow-x:clip}}img,svg,video,canvas{max-width:100%}p,h1,h2,h3,li,small,span,b,strong,a,blockquote{overflow-wrap:break-word}button,input,textarea,select{touch-action:manipulation;max-width:100%}.side,.tabbar-save,.board-tabs,.seg{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.art{-webkit-touch-callout:none}body{-webkit-font-smoothing:antialiased;min-height:100dvh}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-weight:600;line-height:1.15}p{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.main:focus{outline:none}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.skip{z-index:60;left:max(12px, env(safe-area-inset-left));top:calc(8px + env(safe-area-inset-top));border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);transform:translateY(calc(-200% - env(safe-area-inset-top)));padding:8px 14px;font-weight:600;position:fixed}.skip:focus{transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.art{object-fit:cover;width:100%;height:100%;display:block}.ico{flex:none}.shell{grid-template-columns:208px minmax(0,1fr);gap:clamp(20px,3vw,44px);max-width:1340px;min-height:100dvh;margin:0 auto;padding:0 clamp(16px,3vw,36px);display:grid}.side{flex-direction:column;align-self:start;gap:22px;padding:38px 0 24px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.02em;align-items:center;gap:10px;padding:0 12px;font-size:1.3rem;font-weight:600;display:flex}.brand svg{color:var(--accent);filter:drop-shadow(0 0 8px color-mix(in srgb, var(--accent) 45%, transparent))}.side nav{flex-direction:column;gap:3px;display:flex;position:relative}.nav-link{color:var(--ink-2);transition:background var(--t-1) var(--ease), color var(--t-1) var(--ease), border-color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;padding:9px 12px;font-size:.95rem;font-weight:500;display:flex;position:relative}.nav-link svg{transition:color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop)}@media (width>=961px){.nav-link:active{transition-duration:var(--t-1), var(--t-1), var(--t-1), var(--t-press);transform:scale(.97)}}@media (hover:hover){.nav-link:hover{color:var(--ink);background:color-mix(in srgb, var(--card) 70%, transparent)}.nav-link:hover svg{transform:translate(1px)}}.nav-link.on{color:var(--ink);box-shadow:none;background:0 0;border-color:#0000}.nav-link.on svg{color:var(--accent)}.nav-glide{background:var(--card);border:1px solid var(--line);height:calc(25% - 2.25px);box-shadow:var(--shadow);pointer-events:none;transform:translateY(calc(var(--i) * (100% + 3px)));transition:transform .3s var(--ease-glide);border-radius:12px;display:block;position:absolute;top:0;left:0;right:0}.nav-glide:after{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;height:16px;position:absolute;top:50%;left:-1px;transform:translateY(-50%)}.side-foot{border-top:1px solid var(--line);flex-direction:column;gap:4px;padding-top:12px;display:flex}.side-foot .nav-link{text-align:left;background:0 0;width:100%;font-family:inherit}@media (hover:hover){.side-foot .nav-link:hover{background:color-mix(in srgb, var(--card) 70%, transparent)}}.side-status{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:6px 0 4px;padding:8px 12px}.side-user{text-align:left;width:100%;color:var(--ink);transition:background var(--t-1) var(--ease), border-color var(--t-1) var(--ease);background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}@media (hover:hover){.side-user:hover{background:var(--card);border-color:var(--line)}}.avatar{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 30%, transparent);border-radius:50%;flex:none;place-items:center;font-size:.72rem;font-weight:600;display:grid}.side-user b{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.side-user svg{color:var(--ink-2)}.main{min-width:0;animation:rise var(--t-2) var(--ease) backwards;padding:36px 0 60px}@keyframes rise{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(6px)scale(.985)}}.left-behind{z-index:3;pointer-events:none;margin:0;position:fixed}.page-ghost{z-index:10;pointer-events:none;contain:strict;position:fixed;inset:0;overflow:hidden}.page-ghost>.main{margin:0;animation:none;position:absolute}.page-ghost.on-top{z-index:12;background:var(--bg);box-shadow:-10px 0 30px #0000001a}.main.moving{z-index:11;position:relative}.main.moving:before{content:"";z-index:-1;background:var(--bg);height:100dvh;position:absolute;inset:0 -40px auto;box-shadow:-10px 0 30px #0000001a}.main.moving .ne,.main.under .ne{animation:none}.chip{border:1px solid var(--line);background:var(--card);color:var(--ink-2);transition:color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);border-radius:999px;padding:6px 14px;font-size:.85rem;font-weight:600}@media (hover:hover){.chip:hover:not(:disabled){color:var(--ink)}}.chip:active:not(:disabled){transition-duration:var(--t-1), var(--t-press);transform:scale(.97)}.chip:disabled{opacity:.5;cursor:default}.chip.quiet{background:0 0;border-color:#0000}.btn{border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);transition:filter var(--t-1) var(--ease), background var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);border:0;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-weight:600;display:inline-flex}@media (hover:hover){.btn:hover:not(:disabled){filter:brightness(1.07)}}.btn:active:not(:disabled){transition-duration:var(--t-1), var(--t-1), var(--t-press);transform:scale(.97)}.btn:disabled{background:var(--bg-2);color:var(--ink-2);cursor:default}.btn.ghost{background:var(--card);color:var(--ink);border:1px solid var(--line)}@media (hover:hover){.btn.ghost:hover:not(:disabled){filter:none;background:var(--bg-2)}}.save-status{color:var(--ink-2);align-items:center;gap:8px;padding:4px 0;font-size:.78rem;font-weight:500;display:inline-flex}.save-status small{margin-left:2px;font-weight:500}.save-status .dot{background:var(--green);width:7px;height:7px;transition:background var(--t-2) var(--ease);border-radius:50%}.save-status.busy .dot{background:var(--gold);animation:1s infinite pulse}.save-status.bad .dot{background:var(--rose)}.save-status.off .dot{background:var(--ink-2)}@keyframes pulse{50%{opacity:.35}}.loading,.empty{text-align:center;min-height:60dvh;color:var(--ink-2);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.loading{animation:fade var(--t-2) var(--ease) .25s backwards}.loading h1,.empty h1,.empty h2{color:var(--ink);font-size:1.5rem}.loading.full{min-height:100dvh;padding-inline:16px}.loading-icon{color:var(--accent);animation:1.8s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(-5px)}}.empty-icon{color:var(--ink-2);opacity:.8}.login{min-height:100dvh;padding:max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));grid-template-columns:minmax(0,1fr);place-items:center;display:grid;position:relative;overflow:hidden}.login-art{opacity:.95;width:100%;height:100%;position:absolute;inset:0}.login-card{background:color-mix(in srgb, var(--card) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:var(--radius);width:min(380px,100%);box-shadow:var(--shadow);text-align:center;flex-direction:column;gap:14px;padding:30px;display:flex;position:relative}.login-card h1{justify-content:center;align-items:center;gap:10px;display:flex}.login-card h1 svg{color:var(--accent)}.login-card h2{font:inherit;letter-spacing:normal}.login-card input{text-overflow:ellipsis;border:1px solid var(--line);background:var(--bg);border-radius:var(--radius-sm);text-align:center;min-width:0;padding:11px 14px}@media (width<=360px){.login-card{padding:24px 20px}}.login-links{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.form-note{color:var(--ink-2);font-size:.88rem}.form-note a{color:var(--accent);text-decoration:underline}.form-error{color:var(--rose);animation:rise var(--t-2) var(--ease) backwards;font-size:.9rem;font-weight:600}.tabbar-save,.nav-settings{display:none}@media (width>=961px) and (height<=520px){.side{max-height:100dvh;overflow-y:auto}}@media (width<=960px){:root{--tabbar:calc(69px + env(safe-area-inset-bottom))}.shell{padding:0 max(16px, env(safe-area-inset-right)) var(--tabbar) max(16px, env(safe-area-inset-left));max-width:100%;display:block}.side{z-index:20;width:100%;padding:8px max(10px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));background:color-mix(in srgb, var(--bg) 96%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);flex-direction:row;justify-content:center;gap:0;position:fixed;inset:auto 0 0}.shell:before{content:"";z-index:19;height:env(safe-area-inset-top);background:var(--bg);position:fixed;inset:0 0 auto}.brand,.side-foot{display:none}.side nav{flex-direction:row;justify-content:space-around;width:100%}.nav-link{border-radius:10px;flex-direction:column;flex:1 1 0;gap:2px;min-width:0;padding:6px 2px;font-size:.72rem}.nav-settings{background:0 0;font-family:inherit;display:flex}.nav-link:active svg{transition-duration:var(--t-1), var(--t-press);transform:scale(.86)}.nav-link.on{color:var(--accent-text);font-weight:600}.nav-link.on svg{color:inherit}.nav-glide{width:calc(20% - 2.4px);height:auto;box-shadow:none;transform:translateX(calc(var(--i) * (100% + 3px)));background:0 0;border:0;top:2px;bottom:2px;right:auto}.nav-glide:before{content:"";background:var(--accent-soft);border-radius:14px;position:absolute;inset:0 8px}.nav-glide:after{display:none}.main{padding:calc(22px + env(safe-area-inset-top)) 0 24px}.tabbar-save{z-index:21;inset-inline:0;bottom:calc(var(--tabbar) + 8px);background:var(--card);border:1px solid var(--line);pointer-events:none;width:fit-content;max-width:calc(100% - 16px);transition:opacity var(--t-2) var(--ease), transform .28s var(--ease-pop);border-radius:999px;align-items:center;margin-inline:auto;padding:0 12px 0 10px;display:flex;position:fixed}:is(.tabbar-save:has(.save-status.ok),.tabbar-save:has(.save-status.busy)){opacity:0;transform:translateY(var(--pill-off,8px))}input,textarea,select{font-size:16px!important}html{scroll-padding:calc(44px + env(safe-area-inset-top)) 0 calc(var(--tabbar) + 21px)}}.modal-open{overscroll-behavior:none;overflow:hidden}.modal-back{inset:var(--vv-top,0) 0 auto;height:var(--vv-h,100%);z-index:50;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));animation:fade var(--t-2) var(--ease) backwards;background:#0a0e0c8c;grid-template-rows:minmax(0,1fr);place-items:center;display:grid;position:fixed}.modal-back+.modal-back{background:0 0}.modal-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);width:min(380px,100%);box-shadow:var(--shadow);animation:pop var(--t-2) var(--ease) backwards;gap:12px;padding:22px;display:grid}.modal-back>.modal-card{overscroll-behavior:contain;max-height:100%;scroll-padding-bottom:76px;overflow-y:auto}.modal-card:focus{outline:none}.modal-card h2{margin:0}.modal-card input{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:var(--radius-sm);font:inherit;text-overflow:ellipsis;padding:11px 14px}.modal-actions{background:var(--card);justify-content:flex-end;gap:10px;margin-bottom:-22px;padding-block:10px 22px;display:flex;position:sticky;bottom:-22px}@media (width<=960px){.modal-back{animation:fade .22s var(--ease) backwards}.modal-card{animation:sheet-in .3s var(--ease-glide) backwards}}@keyframes sheet-in{0%{opacity:0;transform:translateY(36px)scale(.98)}45%{opacity:1}}.modal-back+.modal-back{animation:none}.modal-ghost{pointer-events:none;z-index:49;animation:none}.modal-ghost .modal-card{animation:none}.seg{border-radius:var(--radius-sm);background:var(--bg-2);gap:4px;padding:4px;display:flex}.seg button{color:var(--ink-2);transition:transform var(--t-move) var(--ease-pop);background:0 0;border:0;border-radius:9px;flex:1;padding:7px 4px;font-weight:600}.seg button:active{transition-duration:var(--t-press);transform:scale(.97)}.seg button.on{background:var(--card);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.set-row{grid-template-columns:minmax(0,1fr);gap:6px;display:grid}.set-row>span{color:var(--ink-2);font-size:.8rem;font-weight:600}.modal-card,.modal-card>*,.board-col,.card,.dash-card{min-width:0;max-width:100%}.seg button{overflow-wrap:normal;min-width:0;padding:7px 2px;font-size:.88rem}@media (width<=400px){.seg button{font-size:.8rem}.dash-add{padding-left:12px}}.fd-check input{flex:none;width:18px;height:18px;margin:0}.fd-form select,.fd-form input:not([type=checkbox]),.fd-form textarea,.modal-card select{text-overflow:ellipsis;width:100%;min-width:0;max-width:100%}@media (width<=960px) and (pointer:coarse){.kb .side{visibility:hidden}.kb .tabbar-save{--pill-off:-8px;bottom:auto;top:calc(6px + env(safe-area-inset-top))}}.ai-q input[type=date]{min-height:44px}@media (pointer:coarse){.chip,.seg button,.btn{min-height:40px}}.dash{flex-direction:column;gap:18px;max-width:1180px;margin:0 auto;display:flex}.dash-hero{border-radius:var(--radius);align-items:center;min-height:clamp(200px,24vw,290px);display:flex;position:relative;overflow:hidden}.dash-hero-art{pointer-events:none;width:74%;position:absolute;top:0;bottom:0;right:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 28%);mask-image:linear-gradient(90deg,#0000 0%,#000 28%)}.dash-hero-art .art{object-fit:cover;object-position:right center}.dash-hero-text{flex-direction:column;gap:8px;padding:18px 6px 18px 0;display:flex;position:relative}.dash-date{color:var(--ink-2);font-size:1.05rem}.dash-hero h1{font-size:clamp(2rem,4.6vw,3.1rem);font-weight:700}.dash-summary{color:var(--ink-2);font-size:1.25rem}.dash-add{transition:border-color var(--t-1) var(--ease), box-shadow var(--t-1) var(--ease);border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);color:var(--ink-2);align-items:center;gap:12px;padding:10px 10px 10px 18px;display:flex}.dash-add input{text-overflow:ellipsis;min-width:0;color:var(--ink);background:0 0;border:0;outline:none;flex:1;padding:8px 0;font-size:1.05rem}.dash-add input::placeholder{color:var(--ink-2)}.dash-add:focus-within{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.dash-add button{border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);transition:filter var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);border:0;padding:10px 20px;font-weight:600}@media (hover:hover){.dash-add button:hover:not(:disabled){filter:brightness(1.07)}}.dash-add button:active:not(:disabled){transition-duration:var(--t-1), var(--t-press);transform:scale(.97)}.dash-add button:disabled{background:var(--bg-2);color:var(--ink-2);cursor:default}.dash-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:stretch;gap:16px;display:grid}.dash-side{flex-direction:column;gap:16px;min-width:0;display:flex}.dash-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:14px;min-width:0;padding:20px 22px;display:flex}.dash-today{min-height:330px}.dash-side .dash-card{flex:1}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.dash-head h2{align-items:center;gap:10px;font-size:1.25rem;font-weight:600;display:flex}.dash-sub{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.88rem;font-weight:500}.dash-count{font-variant-numeric:tabular-nums;background:var(--rose-soft);color:var(--rose);border-radius:999px;padding:1px 10px;font-size:.8rem;font-weight:600}.dash-nav{color:var(--ink-2);align-items:center;gap:4px;display:flex;position:relative}.dash-icon{width:32px;height:32px;color:var(--ink-2);transition:background var(--t-1) var(--ease), color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}@media (hover:hover){.dash-icon:hover{background:var(--bg-2);color:var(--ink)}}.dash-icon:active{transition-duration:var(--t-1), var(--t-1), var(--t-press);transform:scale(.9)}.dash-pick{display:grid;position:relative}.dash-picker{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:100%;left:0}.dash-today-btn{color:var(--ink);transition:transform var(--t-move) var(--ease-pop);background:0 0;border:0;border-radius:8px;padding:6px 10px;font-weight:500}.dash-today-btn:active:not(:disabled){transition-duration:var(--t-press);transform:scale(.97)}@media (hover:hover){.dash-today-btn:hover:not(:disabled){background:var(--bg-2)}}.dash-today-btn:disabled{color:var(--ink-2);cursor:default}.dash-link{color:var(--accent);background:0 0;border:0;align-items:center;gap:6px;font-weight:600;display:inline-flex}@media (hover:hover){.dash-link:hover{text-underline-offset:3px;text-decoration:underline}}.dash-btn{background:var(--accent-soft);color:var(--accent);transition:background var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);border-radius:999px;align-items:center;padding:6px 14px;font-size:.85rem;font-weight:600;display:inline-flex}@media (hover:hover){.dash-btn:hover{background:color-mix(in srgb, var(--accent) 22%, var(--accent-soft))}}.dash-btn:active{transition-duration:var(--t-1), var(--t-press);transform:scale(.97)}.dash-calm{color:var(--ink-2)}.dash-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dash-task{border-top:1px solid var(--line);align-items:center;gap:14px;padding:11px 0;display:flex}.dash-task:first-child{border-top:0}.dash-task-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:color .2s var(--ease);flex:1;-webkit-text-decoration:line-through #0000;text-decoration:line-through #0000;overflow:hidden}.dash-task.is-done .dash-task-title{-webkit-text-decoration:line-through var(--ink-2);text-decoration:line-through var(--ink-2);color:var(--ink-2);transition:color .2s var(--ease), text-decoration-color .2s var(--ease)}@media (hover:hover){.dash-task-title:hover,.dash-note:hover b{color:var(--accent)}}.dash-check{transition:background-color var(--t-1) var(--ease), border-color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);appearance:none;border:1.5px solid var(--ink-2);cursor:pointer;background:0 0;border-radius:6px;flex:none;place-items:center;width:22px;height:22px;margin:0;display:grid;position:relative}@media (hover:hover){.dash-check:hover{border-color:var(--accent)}}.dash-check:active{transition-duration:var(--t-1), var(--t-1), var(--t-press);transform:scale(.9)}.dash-check:checked{background:var(--accent);border-color:var(--accent)}.dash-check:after{content:"";border-left:2px solid var(--accent-ink);border-bottom:2px solid var(--accent-ink);clip-path:inset(-2px 100% -2px -2px);width:10px;height:5px;transition:clip-path 90ms linear;transform:rotate(-45deg)translate(1px,-1px)}.dash-check:checked:after{clip-path:inset(-2px);transition:clip-path .2s var(--ease) 50ms}.dash-pill{color:var(--blue);background:var(--blue-soft);border-radius:999px;padding:1px 10px;font-size:.75rem;font-weight:600}.dash-due{color:var(--ink-2);font-size:.9rem}.dash-due.late{color:var(--rose)}.dash-empty{text-align:center;color:var(--ink-2);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 0 22px;display:flex}.dash-empty svg{margin-bottom:8px}.dash-empty b{color:var(--ink);font-size:1.1rem;font-weight:500}.dash-empty.small{padding:4px 0 6px}.dash-empty.small b{font-size:1rem}.dash-notes{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dash-note{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;display:flex}.dash-notes li:first-child .dash-note{border-top:0}.dash-note b{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.dash-note small{color:var(--ink-2);flex:none}.dash-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.dash-day{border-radius:var(--radius-sm);color:var(--ink-2);transition:transform var(--t-move) var(--ease-pop);background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;padding:12px 4px;display:flex}.dash-day:active{transition-duration:var(--t-press);transform:scale(.97)}@media (hover:hover){.dash-day:hover{background:var(--bg-2)}}.dash-day.on{background:var(--accent-soft);color:var(--ink)}.dash-day b{color:var(--ink);font-weight:500}.dash-day small{font-size:.78rem}.dash-day span{color:var(--ink-2);align-items:center;gap:6px;margin-top:10px;font-weight:500;display:flex}.dash-day span i{background:var(--line);border-radius:50%;width:8px;height:8px}.dash-day span.has{color:var(--ink)}.dash-day span.has i{background:var(--accent)}.dash-weekcard{container-type:inline-size}.dash-stats{grid-template-columns:auto repeat(3,auto);justify-content:space-between;align-items:center;gap:6px;display:grid}.dash-ring{width:118px;height:118px}.dash-ring-bg{fill:none;stroke:var(--line);stroke-width:7px}.dash-ring-fg{fill:none;stroke:var(--accent);stroke-width:7px;stroke-linecap:round;transition:stroke-dashoffset .36s var(--ease-glide)}.first .dash-ring-fg{transition-duration:.42s}@starting-style{.first .dash-ring-fg{stroke-dashoffset:var(--c)}}.dash-ring-n{fill:var(--ink);font-size:16px;font-weight:600}.dash-ring-l{fill:var(--ink-2);font-size:8.5px}.dash-stat{border-left:1px solid var(--line);text-align:center;color:var(--ink-2);flex-direction:column;align-items:center;gap:2px;padding:0 6px;font-size:.8rem;display:flex}.dash-stat span{overflow-wrap:normal;white-space:nowrap}.dash-stat b{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:600;line-height:1.1}.dash-stat b.g{color:var(--green)}.dash-stat b.r{color:var(--rose)}.dash-stat b.b{color:var(--blue)}@container (width<=320px){.dash-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-ring{grid-column:1/-1;justify-self:center}.dash-stat{padding:0 2px}.dash-stat:first-of-type{border-left:0}}@media (width<=1100px){.dash-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=900px){.dash-hero-art{opacity:.55;width:100%}.dash-date,.dash-summary{color:var(--ink)}}@media (width<=520px){.dash-today .dash-head{flex-wrap:nowrap}.dash-today h2{white-space:nowrap;flex-wrap:wrap;flex:1;align-content:flex-start;min-width:0;max-height:1.4em;overflow:hidden}.dash-nav{flex:none;gap:0}.dash-today-btn{padding-inline:6px}}@media (width<=359px){.dash-today .dash-head{flex-wrap:wrap}.dash-today h2{flex-basis:100%}.dash-nav{margin-left:auto}}@media (width<=520px),(height<=500px){.dash{gap:14px}.dash-hero{min-height:128px}.dash-hero-text{gap:2px;padding:12px 6px}.dash-hero h1{font-size:1.7rem}.dash-date{font-size:.9rem}.dash-summary{font-size:1.02rem}.dash-day{padding:10px 2px}}@media (width<=380px){.dash-week{gap:2px}.dash-day{padding-inline:0}.dash-day b{overflow-wrap:normal;font-size:.85rem}.dash-day small{white-space:nowrap;font-size:.7rem}}@media (pointer:coarse){.dash-picker{pointer-events:auto;border:0;width:100%;min-width:0;height:100%;padding:0;inset:0}.dash-check:before{content:"";place-self:stretch stretch;position:absolute;inset:-9px}.dash-icon{width:40px;height:40px}.dash-today-btn{min-height:40px}.dash-btn{min-height:32px;position:relative}.dash-btn:after{content:"";position:absolute;inset:-4px 0}.dash-link{min-height:40px;margin-block:-8px}.dash-task{padding-block:0}.dash-task-title,.dash-note{padding-block:11px}}.board-page{flex-direction:column;gap:22px;display:flex}.board-cover{display:none}.board-tabs{background:var(--bg-2);border-radius:999px;gap:6px;padding:5px;display:none}.board-tab{color:var(--ink-2);transition:color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);background:0 0;border:0;border-radius:999px;flex:1;padding:8px 6px;font-size:.85rem;font-weight:600}.board-tab:active{transition-duration:var(--t-1), var(--t-press);transform:scale(.97)}.board-tab span{font-weight:500;display:inline-block}.board-tab span,.col-count{font-variant-numeric:tabular-nums}.board-tab.on{background:var(--card);color:var(--accent);box-shadow:var(--shadow)}.board-empty{text-align:center;color:var(--ink-2);flex-direction:column;align-items:center;gap:8px;display:flex}.board-empty h2{color:var(--ink);font-size:1.3rem}.board-empty~.board-cols .col-empty{display:none}.board-empty~.board-cols .col-list{min-height:0}.board-cols{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px;display:grid}.board-col{border-radius:var(--radius);background:var(--bg-2);transition:border-color var(--t-2) var(--ease), background var(--t-2) var(--ease);border:2px solid #0000;flex-direction:column;gap:12px;padding:14px;display:flex}.board-col.is-over{border-color:color-mix(in srgb, var(--accent) 50%, transparent);background:color-mix(in srgb, var(--accent-soft) 40%, var(--bg-2))}.col-head{align-items:center;gap:12px;display:flex}.col-head h2{align-items:center;gap:8px;font-size:1.15rem;display:flex}.col-head p{color:var(--ink-2);font-size:.8rem;font-weight:500}.col-count{font-family:var(--font-body);background:var(--card);color:var(--ink-2);border-radius:999px;padding:1px 9px;font-size:.75rem;font-weight:600}.col-todo .col-count{color:var(--accent)}.col-doing .col-count{color:var(--blue)}.col-done .col-count{color:var(--green)}.col-list{flex-direction:column;gap:10px;min-height:64px;display:flex}.col-slot{position:relative}.drop-line{background:var(--accent);height:4px;animation:drop-in var(--t-1) var(--ease) backwards;border-radius:4px;margin:-7px 0}.col-slot>.drop-line{z-index:1;margin:0;position:absolute;top:-7px;left:0;right:0}@keyframes drop-in{0%{opacity:0;transform:scaleX(.4)}to{opacity:1;transform:none}}.col-empty{color:var(--ink-2);border:2px dashed var(--line);border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:6px;padding:10px;font-size:.85rem;font-weight:500;display:flex}.col-add{gap:8px;display:flex}.col-add input{border:1px dashed var(--line);background:color-mix(in srgb, var(--card) 70%, transparent);border-radius:var(--radius-sm);flex:1;min-width:0;padding:10px 14px}.col-add input:focus{background:var(--card);border-style:solid;border-color:var(--accent);outline:none}.col-add-btn{border-radius:var(--radius-sm);background:var(--accent);width:42px;color:var(--accent-ink);transition:transform var(--t-move) var(--ease-pop);border:0;font-size:1.4rem;font-weight:600;line-height:1}.col-add-btn:active:not(:disabled){transition-duration:var(--t-press);transform:scale(.97)}.col-add-btn:disabled{background:var(--card);color:var(--ink-2);cursor:default}.card{--tone:var(--line);background:var(--card);border-radius:var(--radius-sm);border:1px solid var(--line);border-left:5px solid var(--tone);box-shadow:var(--shadow);transition:transform var(--t-1) var(--ease), box-shadow var(--t-1) var(--ease), opacity var(--t-1) var(--ease);flex-direction:column;gap:8px;padding:12px 12px 10px;display:flex}.card.due-overdue{--tone:var(--rose)}.card.due-today{--tone:var(--accent)}.card.due-soon{--tone:var(--gold)}.card.due-later{--tone:var(--green)}.card.is-dragging{opacity:.45;box-shadow:none;transform:rotate(-2deg)scale(.98)}.card-top{align-items:flex-start;gap:8px;display:flex}.card-grip{cursor:grab;opacity:.5;touch-action:none;transition:opacity var(--t-1) var(--ease);flex:none;grid-template-columns:repeat(2,4px);gap:3px;margin-left:-6px;padding:8px 4px;display:grid}.card-grip:active{cursor:grabbing}.card-grip i{background:var(--ink-2);border-radius:50%;width:4px;height:4px}.card-check{border:1.5px solid var(--ink-2);width:22px;height:22px;transition:background var(--t-1) var(--ease), border-color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);background:0 0;border-radius:6px;flex:none;place-items:center;margin-top:3px;padding:0;display:grid}.card-check:active{transition-duration:var(--t-1), var(--t-1), var(--t-press);transform:scale(.9)}.card-check.on{background:var(--accent);border-color:var(--accent)}.card-check:after{content:"";border-left:2px solid var(--accent-ink);border-bottom:2px solid var(--accent-ink);clip-path:inset(-2px 100% -2px -2px);width:10px;height:5px;transition:clip-path 90ms linear;transform:rotate(-45deg)translate(1px,-1px)}.card-check.on:after{clip-path:inset(-2px);transition:clip-path .2s var(--ease) 50ms}.card-title,.card-details{resize:none;background:0 0;border:0;border-radius:8px;width:100%;padding:3px 6px;font-weight:600;line-height:1.35;overflow:hidden}.card-title{min-height:28px;transition:color .2s var(--ease);-webkit-text-decoration:line-through #0000;text-decoration:line-through #0000}.card-details{color:var(--ink-2);background:var(--bg);padding:8px 10px;font-size:.9rem;font-weight:500;overflow:auto}.card-details.enter{animation:rise .2s var(--ease-glide) backwards}.card-title:focus,.card-details:focus{background:var(--bg);box-shadow:0 0 0 2px var(--accent);outline:none}.card-due{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.due-pill{background:var(--bg-2);color:var(--ink-2);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:3px 11px;font-size:.8rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.due-pill:before{content:"";background:currentColor;flex:none;width:13px;height:13px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Crect x='4' y='5' width='16' height='15' rx='2'/%3E%3Cpath d='M4 10h16M9 3v4M15 3v4'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Crect x='4' y='5' width='16' height='15' rx='2'/%3E%3Cpath d='M4 10h16M9 3v4M15 3v4'/%3E%3C/svg%3E") 50%/contain no-repeat}.due-pill:focus-within{outline:2px solid var(--accent);outline-offset:2px}.due-pill input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.due-pill input::-webkit-calendar-picker-indicator{cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.due-pill.due-overdue{background:var(--rose-soft);color:var(--rose)}.due-pill.due-today{background:var(--accent-soft);color:var(--accent)}.due-pill.due-soon{background:var(--gold-soft);color:var(--gold)}.due-pill.due-later{background:var(--green-soft);color:var(--green)}.due-chips{flex-wrap:wrap;gap:4px;display:flex}.card-foot{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:4px;padding-top:6px;display:flex}.card-move{flex-wrap:wrap;gap:4px;margin-right:auto;display:flex}.card-steps{gap:4px;display:inline-flex}.mini{border:1px solid var(--line);color:var(--ink-2);transition:background var(--t-1) var(--ease), color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);background:0 0;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:600}.mini.step{padding-inline:8px}.mini:active:not([aria-disabled=true]){transition-duration:var(--t-1), var(--t-1), var(--t-press);transform:scale(.9)}.mini[aria-disabled=true]{opacity:.5;cursor:default}.mini.quiet{border-color:#0000}.mini.del.sure{background:var(--rose);border-color:var(--rose);color:var(--accent-ink)}.card.is-done{box-shadow:none;background:color-mix(in srgb, var(--card) 70%, var(--bg-2));--tone:var(--green-soft)}.card.is-done .card-title,.card.struck .card-title{-webkit-text-decoration:line-through var(--ink-2);text-decoration:line-through var(--ink-2);color:var(--ink-2);transition:color .2s var(--ease), text-decoration-color .2s var(--ease)}.card.is-done .due-pill{background:var(--bg-2);color:var(--ink-2)}.card.is-done .due-chips{display:none}@media (width<=960px),(width<=1200px) and (pointer:coarse){.board-tabs{z-index:5;display:flex;position:sticky;top:0}.board-cols{grid-template-columns:minmax(0,1fr)}.board-col{display:none}.board-col.active{display:flex}.mini{padding:5px 9px;font-size:.8rem}.card-title{font-size:1rem}.card{scroll-margin:62px 0 16px}.card-move{flex-basis:100%}.board-tab.on{box-shadow:none;background:0 0}.board-tabs:before{content:"";z-index:-1;background:var(--card);width:calc(33.3333% - 7.33333px);box-shadow:var(--shadow);transform:translateX(calc(var(--i,0) * (100% + 6px)));transition:transform .3s var(--ease-glide);border-radius:999px;position:absolute;top:5px;bottom:5px;left:5px}.board-cols[data-dir] .board-col.active{animation:col-in .22s var(--ease-glide) backwards}.board-cols[data-dir="1"]{--cx:18px}.board-cols[data-dir="-1"]{--cx:-18px}}@keyframes col-in{0%{opacity:0;transform:translateX(var(--cx))}}@media (width<=960px){.board-tabs{top:calc(8px + env(safe-area-inset-top))}html:has(.board-page){scroll-padding-top:calc(72px + env(safe-area-inset-top))}.card{scroll-margin:0}.board-tab{min-height:40px}.board-head{z-index:5;position:relative}.board-cover{z-index:4;height:calc(58px + env(safe-area-inset-top));background:var(--bg);margin:calc(-8px - env(safe-area-inset-top)) calc(-1 * max(16px, env(safe-area-inset-right))) -72px calc(-1 * max(16px, env(safe-area-inset-left)));display:block;position:sticky;top:0}}@media (width<=330px){.board-tab{white-space:nowrap;padding-inline:2px;font-size:.8rem}}@media (width<=960px) and (hover:none){.card-grip{display:none}}@media (hover:hover){.card:hover{transform:translateY(-1px)}.card.is-dragging:hover{transform:rotate(-2deg)scale(.98)}.card-grip:hover{opacity:.8}.card-check:hover{border-color:var(--accent)}.board-tab:hover{color:var(--ink)}.board-tab.on:hover{color:var(--accent)}.mini:hover:not([aria-disabled=true]){background:var(--bg-2);color:var(--ink)}.mini.del:hover{color:var(--rose)}.mini.del.sure:hover{background:var(--rose);color:var(--accent-ink)}.card .due-chips,.card .card-foot{display:none}.col-slot.is-open .card{z-index:2;position:relative;box-shadow:0 8px 24px #0000002e}:root[data-theme=dark] .col-slot.is-open .card{border-top-color:#3a413d;border-bottom-color:#3a413d;border-right-color:#3a413d;box-shadow:0 10px 28px #0009}.col-slot.is-open .card:not(.is-done) .due-chips,.col-slot.is-open .card-foot{display:flex}.col-slot.is-open .card-foot,.col-slot.is-open .due-chips{animation:fade var(--t-2) var(--ease) backwards}}@media (pointer:coarse){.board-tab{min-height:40px}.mini,.due-pill{min-height:32px}.mini{align-items:center;padding:5px 9px;font-size:.8rem;display:inline-flex;position:relative}.mini:after{content:"";position:absolute;inset:-5px -1px}.mini.step{border-color:#0000;justify-content:center;min-width:36px}.mini.step:after{inset:-5px -3px}.card-due,.card-foot,.card-move,.due-chips{gap:8px 4px}.due-pill{overflow:visible}.due-pill input{height:calc(100% + 8px);top:-4px}.card-check{position:relative}.card-check:before{content:"";position:absolute;inset:-10.5px}.card-grip{margin-left:-12px;padding:12px 10px}}.board-head{flex-wrap:wrap;align-items:baseline;gap:14px;display:flex}.board-head p{color:var(--ink-2);font-weight:500}.col-dot{background:var(--accent);border-radius:50%;flex:none;width:10px;height:10px}.col-doing .col-dot{background:var(--blue)}.col-done .col-dot{background:var(--green)}.board-empty svg,.col-empty svg{color:var(--ink-2);opacity:.7}.notes{grid-template-columns:clamp(260px,50% - 130px,360px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.nl{flex-direction:column;gap:14px;min-width:0;display:flex}.nl-bar{gap:10px;display:flex}.nl-search{border:1px solid var(--line);background:var(--card);border-radius:999px;flex:1;min-width:0;padding:10px 16px}.nl-bar .btn{white-space:nowrap;padding:10px 18px}.nl-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.nl-row{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);transition:transform var(--t-move) var(--ease-pop), box-shadow var(--t-1) var(--ease), border-color var(--t-1) var(--ease);gap:12px;padding:10px;display:flex}@media (hover:hover){.nl-row:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.ne-back:hover{text-underline-offset:3px;text-decoration:underline}.ne .chip.quiet:hover{background:var(--bg-2)}.chip.danger:hover{background:color-mix(in srgb, var(--rose) 22%, var(--rose-soft))}}.nl-row:active{transition-duration:var(--t-press), var(--t-1), var(--t-1);transform:scale(.985)}.nl-row.on{border-color:var(--accent);background:var(--accent-soft)}.nl-thumb{background:var(--bg-2);width:40px;height:40px;color:var(--ink-2);border-radius:10px;flex:none;place-items:center;display:grid}.nl-text{flex-direction:column;gap:1px;min-width:0;display:flex}.nl-text strong{font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.nl-pin{color:var(--gold);margin-right:6px;font-style:normal}.nl-snip{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.88rem;display:-webkit-box;overflow:hidden}.nl-text small{color:var(--ink-2)}.nl-list li:has(.nl-row.on){z-index:1;position:relative}li.left-behind{list-style:none}.nl-empty{text-align:center;color:var(--ink-2);flex-direction:column;align-items:center;gap:10px;padding:20px 0;display:flex}.ne-wrap{min-width:0;top:min(20px, calc(100dvh - var(--ne-h,0px) - 20px));position:sticky}.ne{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);animation:rise var(--t-2) var(--ease) backwards;flex-direction:column;gap:12px;padding:14px 14px 22px;display:flex}.page-ghost .ne,.page-ghost .ne-confirm{animation:none}.ne-back{color:var(--accent);margin-right:auto;padding:2px 6px;font-weight:600;display:none}.chip.on{color:var(--gold);border-color:var(--gold)}.chip.danger{background:var(--rose-soft);color:var(--rose);border-color:var(--rose)}.ne-title{font-family:var(--font-display);background:0 0;border:0;outline:none;width:100%;padding:4px 8px;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:600}.ne-title:not(:focus){text-overflow:ellipsis;overflow:hidden}.ne-title::placeholder,.ne-body::placeholder{color:var(--ink-2);opacity:.8}.ne-meta{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:10px;padding:0 8px;font-size:.82rem;font-weight:500;display:flex}.ne-spacer{flex:1}.ne-confirm{color:var(--rose);animation:fade var(--t-1) var(--ease) backwards;flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.ne-body{resize:none;white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;border:0;outline:none;order:1;width:100%;min-height:220px;padding:8px;font-size:1.05rem;line-height:1.7;overflow:hidden}.ne-full{color:var(--rose);order:2;padding:0 8px;font-size:.82rem;font-weight:500}.ne-none{color:var(--ink-2);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:50px 0;display:flex}@media (width<=960px){.notes{grid-template-columns:minmax(0,1fr)}.notes.editing .nl,.notes:not(.editing) .ne-wrap{display:none}.ne-wrap{position:static}.ne-back{display:inline-block}.ne{padding:10px 10px 18px}.ne-title{font-size:1.6rem!important}html:has(.ne-body){scroll-padding-top:calc(44px + env(safe-area-inset-top))}}@media (pointer:coarse){.ne-back{padding:10px 6px}}@media (width<=340px){.ne-ask{flex-basis:100%}}.page-title{font-size:1.9rem;font-weight:700}.ne-bar{justify-content:flex-end;align-items:center;display:flex}.nl-empty svg,.ne-none svg{color:var(--ink-2);opacity:.7}.md{overflow-wrap:anywhere}.md pre{background:var(--card-2);border-radius:var(--radius-sm);padding:12px 14px;font-size:.9rem;line-height:1.5;overflow-x:auto}.md pre code{overflow-wrap:normal;background:0 0;padding:0}.md-table{overflow-x:auto}.md table{border-collapse:collapse;font-size:.95rem;line-height:1.5}.md th,.md td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:normal;padding:6px 12px 6px 0}.md th{font-weight:600}.md li>ul,.md li>ol{margin-top:.3em}.main.moving .ne-title,.main.moving .ne-body,.main.under .nl{pointer-events:none}.feed{flex-direction:column;gap:18px;display:flex}.feed-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.feed-head h1{font-size:1.9rem;font-weight:700}.feed>.form-error{z-index:2;background:var(--bg);padding:6px 0;position:sticky;top:12px}.feed-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.feed-actions .btn{padding:9px 18px}.fd-banner{border-radius:var(--radius-sm);background:var(--gold-soft);border:1px solid var(--gold);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;font-weight:600;display:flex}.feed-grid{grid-template-columns:minmax(220px,280px) 1fr;align-items:start;gap:24px;display:grid}.feed-list{flex-direction:column;gap:8px;display:flex;position:sticky;top:20px}.fl-err{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;color:var(--rose)!important}.feed-main{flex-direction:column;gap:16px;min-width:0;display:flex}.fd-none{color:var(--ink-2);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:30px 0;display:flex}.fa-list{flex-direction:column;gap:12px;display:flex}.fa-list>.btn{align-self:center}.ac{border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);transition:border-color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);flex-direction:column;gap:4px;min-width:0;padding:16px 18px;display:flex}.ac h3{font-size:1.25rem;font-weight:600}.ac p{color:var(--ink-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ac-meta{color:var(--ink-2);align-items:center;gap:8px;font-size:.8rem;font-weight:500;display:flex}.ac-dot{background:var(--accent);border-radius:50%;flex:none;width:9px;height:9px}.ac-row{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.ap{flex-direction:column;gap:14px;max-width:720px;margin:0 auto;display:flex}.ap h1{font-size:clamp(1.8rem,4vw,2.6rem);font-weight:700}.ap-back{color:var(--accent);align-self:flex-start;font-weight:600}.ap-meta{color:var(--ink-2);font-size:.85rem;font-weight:500}.fa-sources{color:var(--ink-2);font-size:.88rem}.fa-sources ul{margin:4px 0 0;padding-left:18px}.fa-sources a,.md a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.fa-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fa-confirm{flex-wrap:wrap;gap:8px;display:inline-flex}.fa-confirm,.fd-left.feed-actions{animation:fade var(--t-1) var(--ease) backwards}.fa-model{color:var(--ink-2);margin-left:auto;font-size:.78rem}.md{font-size:1.04rem;line-height:1.7}.md>*+*{margin-top:.8em}.md h2{margin-top:1.2em;font-size:1.3rem}.md h3{font-size:1.1rem}.md ul,.md ol{padding-left:1.3em}.md blockquote{border-left:3px solid var(--accent);color:var(--ink-2);margin-left:0;padding-left:14px}.md code{background:var(--card-2);border-radius:6px;padding:1px 6px}.md hr{border:0;border-top:1px solid var(--line)}.ap .md code,.ap .md pre{background:var(--bg-2)}.ap .md pre code{background:0 0}.fd-form{width:min(520px,100%);scroll-padding:12px 0 100px}.fd-form label{color:var(--ink-2);gap:4px;font-size:.8rem;font-weight:600;display:grid}.fd-form textarea,.fd-form select{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:var(--radius-sm)}.fd-form input,.fd-form textarea,.fd-form select{padding:11px 14px;font-size:1rem;font-weight:400}.fd-form textarea{resize:vertical}.fd-form .modal-actions{background:var(--card);flex-wrap:wrap;margin-bottom:-22px;padding:10px 0 22px;position:sticky;bottom:-22px}.fd-form .modal-actions .form-error{flex:1 0 100%}.modal-back:has(>.fd-form){container-type:size}@container (height<=240px){.fd-form{scroll-padding-bottom:12px}.fd-form .modal-actions{position:static}}.fd-form .seg button{flex:auto}.fd-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.fd-check{align-items:center;gap:10px;display:flex!important}.fd-form .fd-check{color:var(--ink);font-size:1rem;font-weight:500}.fd-check input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0;padding:0}.fd-note{color:var(--ink-2);font-size:.85rem}.fd-topics-head{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.fd-topics-head h2{font-size:1.15rem}.fd-topics{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.fd-topic{border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);transition:border-color var(--t-1) var(--ease);align-items:center;gap:8px;padding:8px 8px 8px 10px;list-style:none;display:flex}.fd-topic.off{opacity:.6}.fd-num{background:var(--accent-soft);width:24px;height:24px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:600;display:grid}.fd-tname{text-align:left;background:0 0;border:0;flex-direction:column;flex:1;min-width:0;padding:0;display:flex}.fd-tname strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.fd-tname small{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fd-move{flex-direction:column;display:flex}.fd-move button{color:var(--ink-2);transition:transform var(--t-move) var(--ease-pop);background:0 0;border:0;padding:1px 6px;font-size:.7rem;line-height:1.2}.fd-move button[aria-disabled=true]{opacity:.25;cursor:default}.fd-left{margin-right:auto}.fd-form input[type=time]{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:var(--radius-sm);padding:10px 12px}@media (width<=960px){.feed-grid{grid-template-columns:minmax(0,1fr)}.feed-list{position:static}.fd-row{grid-template-columns:minmax(0,1fr)}.feed>.form-error{top:calc(8px + env(safe-area-inset-top))}}.fd-schedule{border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:16px;padding:16px 20px;display:flex}.fd-schedule-icon{color:var(--accent)}.fd-schedule.off .fd-schedule-icon{color:var(--ink-2)}.fd-schedule-text{flex-direction:column;flex:1;gap:2px;min-width:220px;display:flex}.fd-schedule-text small{color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:600}.fd-schedule-text b{font-size:1.15rem;font-weight:600}.fd-schedule-text span{color:var(--ink-2);font-size:.9rem}.fd-schedule-text strong{color:var(--ink);font-weight:600}.dash-sched{min-height:21px;color:var(--ink-2);flex-wrap:wrap;align-items:flex-start;gap:4px 16px;font-size:.92rem;display:flex}.dash-sched b{color:var(--ink);font-weight:600}.dash-sched-main{align-items:flex-start;gap:8px;display:inline-flex}.dash-sched-main svg{margin-top:2px}.dash-featured{flex-direction:column;gap:10px;display:flex}.af{border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);transition:border-color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);flex-direction:column;gap:8px;padding:20px 24px;display:flex}.af.quiet h3{font-size:1.25rem}.af.unread{border-color:color-mix(in srgb, var(--accent) 55%, var(--line))}.af h3{font-size:clamp(1.4rem,2.6vw,1.9rem);font-weight:600}.af p{color:var(--ink-2);-webkit-line-clamp:4;-webkit-box-orient:vertical;max-width:78ch;font-size:1.02rem;display:-webkit-box;overflow:hidden}.af-read{color:var(--accent);align-items:center;gap:6px;margin-top:4px;font-weight:600;display:inline-flex}.dash-sched svg{color:var(--accent)}.dash-skel{flex-direction:column;gap:10px;display:flex}.dash-skel i{border-radius:var(--radius);background:var(--bg-2);height:192px;display:block}.dash-skel>i{height:189px}.dash-skel.none>i{height:155px}@media (width>=521px) and (height>=501px){.dash-skel.two span i{height:148px}}@media (width<=1100px){.dash-skel span i{height:214px}.dash-skel>i{height:181px}.dash-skel.none>i{height:155px}}@media (width>=961px) and (width<=1060px){.dash-skel span i{height:235px}.dash-skel>i{height:198px}}.fd-skel{flex-direction:column;gap:18px;display:flex}.fd-skel i{border-radius:var(--radius);background:var(--bg-2);height:104px;display:block}.fd-skel i+i{height:320px}:root[data-theme=dark] .dash-skel i,:root[data-theme=dark] .fd-skel i{background:var(--card)}@media (hover:hover){.ac:hover,.af:hover{border-color:var(--accent);transform:translateY(-1px)}.ap-back:hover{text-underline-offset:3px;text-decoration:underline}.fd-move button:hover:not([aria-disabled=true]){color:var(--accent)}.fd-topic:has(.fd-tname:hover){border-color:var(--accent)}}.ac:active,.af:active{transition-duration:var(--t-1), var(--t-press);transform:scale(.985)}.fd-move button:active:not([aria-disabled=true]){color:var(--accent);transition-duration:var(--t-press);transform:scale(.9)}@media (pointer:coarse){.fd-move{flex-direction:row;gap:2px}.fd-move button{width:36px;height:40px;padding:0;font-size:.8rem}.fd-tname{justify-content:center;min-height:40px}.dash-sched{min-height:24px}.ap-back{margin:-10px 0;padding:10px 12px 10px 0}.fa-sources li+li{margin-top:8px}.feed .chip,.fa-tools .chip,.fd-form .chip,.fd-form .seg button,.fd-form .ai-opt{min-height:40px}}@media (width<=520px),(height<=500px){.dash-featured{gap:8px}.af{gap:4px;padding:14px 16px}.af h3{font-size:1.15rem;line-height:1.25}.af p{-webkit-line-clamp:2;font-size:.92rem}.af-read{display:none}.ac-row{gap:8px}.dash-featured .ac{gap:2px;padding:10px 16px}.dash-featured .ac h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.98rem;line-height:1.3;display:-webkit-box;overflow:hidden}.dash-featured .ac p{display:none}.dash-featured .ac-meta{font-size:.75rem}.dash-skel{gap:8px}.dash-skel i,.dash-skel span i{height:79px}.dash-skel>i{height:118px}.dash-skel.none>i{height:99px}}@media (width<=520px){.ac-row{grid-template-columns:minmax(0,1fr)}}@media (width<=440px){.dash-skel>i{height:139px}}@media (width<=418px){.dash-skel.none>i{height:120px}}.ai-card{width:min(480px,100%);max-height:92dvh;scroll-padding-bottom:86px;overflow-y:auto}.ai-card:focus{outline:none}.ai-head{justify-content:space-between;align-items:center;display:flex}.ai-task{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.ai-choices{gap:10px;display:grid}.ai-choice{text-align:left;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);transition:border-color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);gap:4px;padding:14px 16px;display:grid}.ai-choice:active{transition-duration:var(--t-1), var(--t-press);transform:scale(.985)}.ai-choice span{color:var(--ink-2);font-size:.88rem}.ai-wait{color:var(--ink-2);align-items:center;gap:10px;padding:18px 0;display:flex}.ai-spin{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite ai-turn}@keyframes ai-turn{to{transform:rotate(360deg)}}.ai-q,.ai-sug{gap:12px;display:grid}.ai-q small,.ai-sug small{color:var(--ink-2);font-weight:600}.ai-q h3{font-size:1.15rem}.ai-q textarea,.ai-q input[type=number],.ai-q input[type=date],.ai-hint{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:var(--radius-sm);resize:vertical;padding:10px 12px}.ai-opts{flex-wrap:wrap;gap:8px;display:flex}.ai-opt{border:1px solid var(--line);background:var(--bg);transition:border-color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);border-radius:999px;padding:7px 14px;font-weight:500}.ai-opt:active{transition-duration:var(--t-1), var(--t-press);transform:scale(.9)}.ai-opt.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text);font-weight:600}@media (hover:hover){.ai-choice:hover,.ai-opt:hover{border-color:var(--accent)}}@media (pointer:coarse){.ai-opt,.ai-card .chip,.ai-card .seg button{min-height:40px}}.ai-actions{z-index:1;background:var(--card);box-shadow:0 3px 0 var(--card);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:-22px;padding:10px 0 22px;display:flex;position:sticky;bottom:-22px}.ai-box{border:1px solid var(--accent);background:var(--accent-soft);border-radius:var(--radius-sm);gap:8px;padding:14px 16px;display:grid}.ai-details{white-space:pre-wrap;font-size:.95rem}.ai-note{color:var(--ink-2);font-size:.85rem}.ai-btn{color:var(--accent);font-weight:600}.set-card{gap:18px;width:min(440px,100%);max-height:92dvh;overflow-y:auto}.set-time{border:1px solid var(--line);background:var(--bg);width:130px;color:var(--ink);border-radius:var(--radius-sm);padding:8px 12px}.fd-check{align-items:center;gap:10px;font-weight:500;display:flex}.fd-check input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}
