: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;--c1:#2b6fc4;--c2:#c9711a;--c3:#7a4fb5;--c4:#008f7a;--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;--c1:#3f86dc;--c2:#c47a1c;--c3:#9b70e0;--c4:#0ea48c;--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,.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;align-self:start;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-grid.no-tasks{grid-template-columns:minmax(0,1fr)}.dash-grid.no-tasks .dash-side{flex-direction:row;align-self:stretch}.dash-tasks{align-self:start}.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-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-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-due{color:var(--ink-2);font-size:.9rem}.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-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.y{color:var(--gold)}.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<=720px){.dash-grid.no-tasks .dash-side{flex-direction:column}}@media (width<=900px){.dash-hero-art{opacity:.55;width:100%}.dash-date,.dash-summary{color:var(--ink)}}@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}}@media (pointer:coarse){.dash-check:before{content:"";place-self:stretch stretch;position:absolute;inset:-9px}.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;width:100%;max-width:760px;margin:0 auto;display:flex}.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-list{min-height:0}.board-cols{flex-direction:column;gap:18px;display:flex}.board-col{flex-direction:column;gap:12px;display:flex}.col-count{font-family:var(--font-body);font-variant-numeric:tabular-nums;background:var(--bg-2);color:var(--ink-2);border-radius:999px;padding:1px 9px;font-size:.75rem;font-weight:600}.done-tasks{flex-direction:column;gap:12px;display:flex}.done-toggle{color:var(--ink-2);transition:color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);background:0 0;border:0;align-self:flex-start;align-items:center;gap:8px;padding:6px 10px 6px 0;font-weight:600;display:inline-flex}.done-toggle svg{transition:transform var(--t-2) var(--ease)}.done-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.done-toggle span{display:inline-block}.done-toggle:active{transition-duration:var(--t-1), var(--t-press);transform:scale(.97)}.col-list{flex-direction:column;gap:10px;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);border-radius:var(--radius-sm);background:0 0;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(--bg-2);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-now{--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-now{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){.mini{padding:5px 9px;font-size:.8rem}.card-title{font-size:1rem}}@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)}.done-toggle:hover{color:var(--ink)}.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){.done-toggle{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}.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{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-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}.fa-nonews{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.88rem;display:flex}.fa-nonews strong{flex-basis:100%}.fa-nonews span{background:var(--bg-2);overflow-wrap:anywhere;border-radius:999px;padding:3px 11px;font-size:.82rem;font-weight:500}.af-read{color:var(--accent);align-items:center;gap:6px;margin-top:4px;font-weight:600;display:inline-flex}.dash-skel{flex-direction:column;gap:10px;display:flex}.dash-skel i{border-radius:var(--radius);background:var(--bg-2);height:78px;display:block}.dash-skel>i{height:135px}.dash-skel.none>i{height:155px}@media (width<=1100px){.dash-skel span i{height:99px}.dash-skel>i{height:130px}.dash-skel.none>i{height:155px}}.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}.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-meta{font-size:.75rem}.dash-skel{gap:8px}.dash-skel i,.dash-skel span i{height:60px}.dash-skel>i{height:72px}.dash-skel.none>i{height:99px}}@media (width<=520px){.ac-row{grid-template-columns:minmax(0,1fr)}}@media (width<=418px){.dash-skel.none>i{height:120px}}.bk{overflow-wrap:break-word;min-width:0;max-width:100%;font-size:1rem;line-height:1.45}.bk:empty{display:none}.bk *{min-width:0}.ap>.md{min-width:0;max-width:100%}.md>.bk,.md>.bk+*{margin-top:1.3em}.md>.bk+.bk{margin-top:.75em}.md>.bk:first-child{margin-top:0}.bk ul,.bk ol{margin:0;padding:0;list-style:none}.bk h4{color:var(--ink-2);margin:0;font-size:.85rem;font-weight:600}.bk small{color:var(--ink-2);font-size:.8rem;display:block}.bk small a,.bk .bk-soft a{color:var(--accent-text)}.bk a.bk-link,.bk a.bk-go,.bk .bk-quote a{color:inherit;text-decoration:none}.bk-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px}.bk-link{transition:border-color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);display:block}.bk-link:active{transition-duration:var(--t-1), var(--t-press);transform:scale(.985)}@media (hover:hover){.bk-link:hover{border-color:var(--accent);transform:translateY(-1px)}}.bk .bk-title{letter-spacing:-.01em;margin-bottom:10px;font-size:.95rem;font-weight:600;line-height:1.3}.bk .bk-card>.bk-title:last-child{margin-bottom:0}.bk-grid{--min:165px;grid-template-columns:repeat(auto-fit, minmax(min(var(--min), 100%), 1fr));gap:8px;display:grid}.bk-grow{flex:1 1 0;min-width:0}.bk-soft{color:var(--ink-2);font-size:.92rem}.bk-quiet{color:var(--ink-2)}.bk-tab{font-variant-numeric:tabular-nums}.bk-foot{color:var(--ink-2);margin-top:6px;font-size:.78rem}.bk-go{color:var(--accent-text);align-items:center;gap:4px;font-size:.85rem;font-weight:600;display:inline-flex}.bk a.bk-go{color:var(--accent-text);align-self:flex-start}.bk-num{background:var(--accent-soft);width:24px;height:24px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:600;display:grid}.bk-mono{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-text);border-radius:10px;flex:none;place-items:center;font-size:.85rem;font-weight:600;display:grid}.bk-mono.round{border-radius:50%;width:48px;height:48px;font-size:1.05rem}.bk-tone-info{--tone:var(--blue);--tone-soft:var(--blue-soft)}.bk-tone-good{--tone:var(--green);--tone-soft:var(--green-soft)}.bk-tone-warn{--tone:var(--gold);--tone-soft:var(--gold-soft)}.bk-tone-bad{--tone:var(--rose);--tone-soft:var(--rose-soft)}.bk-tone-watch{--tone:var(--accent-text);--tone-soft:var(--accent-soft)}.bk-tone-none{--tone:var(--ink-2);--tone-soft:var(--bg-2)}.bk-pill{background:var(--tone-soft);border-radius:999px;flex:none;align-items:center;gap:4px;max-width:100%;padding:2px 9px;font-size:.78rem;font-weight:600;display:inline-flex}.bk-pill .ico{color:var(--tone)}.bk-move{color:var(--ink-2);flex-wrap:wrap;gap:0 5px;font-size:.85rem;font-weight:600;display:flex}.bk-move.up{color:var(--green)}.bk-move.down{color:var(--rose)}.bk-move>span{white-space:nowrap}.bk-stat .bk-move{flex-wrap:nowrap}.bk-stat .bk-move>span{white-space:normal;min-width:0}.bk-track{background:var(--bg-2);border-radius:4px;height:8px;overflow:hidden}.bk-track.thin{border-radius:3px;height:6px}.bk-track i{border-radius:inherit;background:var(--tone,var(--accent));height:100%;display:block}.bk-rows>li{flex-wrap:wrap;align-items:center;gap:4px 12px;padding:9px 0;display:flex}.bk-rows>li:first-child{padding-top:0}.bk-rows>li:last-child{padding-bottom:0}.bk-rows>li+li{border-top:1px solid var(--line)}.bk-rows .bk-link:active{opacity:.7;transform:none}@media (hover:hover){.bk-rows .bk-link:hover{transform:none}.bk-rows .bk-link:hover b{color:var(--accent-text)}}.bk-bullets li{padding-left:16px;position:relative}.bk-bullets li+li{margin-top:6px}.bk-bullets li:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:.58em;left:2px}.bk-tickers .bk-q{flex-direction:column;gap:2px;display:flex;container-type:inline-size}.bk-tickers{--min:205px}.bk-tickers.one{--min:100%}.bk-q-head b{font-size:.92rem;font-weight:600;line-height:1.25;display:block}.bk-q-rep{font-style:italic}.bk-q-price{letter-spacing:-.02em;margin-top:6px;font-size:1.6rem;font-weight:600;line-height:1.15}.bk-q-price.long{font-size:1.3rem}.bk-tickers.one .bk-q-price{font-size:2.1rem}.bk-q-spark{margin-top:8px}.bk-range{margin-top:10px}.bk-range-bar{background:var(--bg-2);border-radius:2px;height:4px;margin:0 5px;position:relative}.bk-range-bar i{background:var(--ink-2);width:10px;height:10px;box-shadow:0 0 0 2px var(--card);border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.bk-range-ends{color:var(--ink-2);font-variant-numeric:tabular-nums;justify-content:space-between;gap:6px;margin-top:5px;font-size:.72rem;display:flex}.bk-range-ends span{white-space:nowrap}.bk-range-mid{opacity:.75}@container (width<=145px){.bk-range-mid{display:none}}.bk-q>.bk-go{margin-top:auto;padding-top:8px}.bk-weather-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.bk-days{gap:4px;display:grid}.bk-days li{text-align:center;font-variant-numeric:tabular-nums;flex-direction:column;align-items:center;gap:1px;display:flex}.bk-days .ico{color:var(--ink-2);margin:2px 0}.bk-days b{font-weight:600}.bk-days li>span{color:var(--ink-2);font-size:.85rem}.bk .bk-rain{color:var(--blue);font-size:.75rem;font-weight:600}.bk-stats{--min:130px}.bk-stat{flex-direction:column;gap:2px;display:flex}.bk-stat-value{letter-spacing:-.02em;font-size:1.55rem;font-weight:600;line-height:1.2}.bk-rank{flex-direction:column;gap:12px;display:flex}.bk-rank>li{gap:10px;display:flex}.bk-rank-body{flex-direction:column;flex:1;gap:5px;display:flex}.bk-rank-top{align-items:baseline;gap:8px;display:flex}.bk-rank-top b{text-align:right;font-weight:600}.bk-rank-top .bk-move{flex:none;font-size:.78rem}.bk-compare{padding:0;overflow:hidden}.bk-compare>.bk-title{margin:0;padding:14px 16px 10px}.bk-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;overflow-x:auto}.bk-scroll:focus-visible{outline:none}.bk-compare:has(.bk-scroll:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.bk-compare table{border-collapse:separate;border-spacing:0;min-width:100%;font-size:.92rem}.bk-compare th,.bk-compare td{text-align:left;vertical-align:top;overflow-wrap:anywhere;border-top:1px solid var(--line);border-bottom:0;min-width:92px;max-width:220px;padding:9px 12px}.bk-compare thead th,.bk-compare thead td{color:var(--ink-2);font-size:.8rem;font-weight:600}.bk-compare>.bk-scroll:first-child thead th,.bk-compare>.bk-scroll:first-child thead td{border-top:0}.bk-compare tr>:first-child{z-index:1;background:var(--card);min-width:96px;max-width:132px;font-weight:600;position:sticky;left:0}.bk-compare td.best{background:var(--accent-soft);font-weight:600}.bk-compare td.best .ico{vertical-align:-2px;color:var(--accent-text);margin-right:4px}.bk-change>li{justify-content:flex-end}.bk-change .bk-grow{flex-basis:130px}.bk-change-vals{flex-wrap:wrap;align-items:center;gap:2px 7px;display:inline-flex}.bk-change-vals b{font-weight:600}.bk-meters{flex-direction:column;gap:12px;display:flex}.bk-meter-top{align-items:baseline;gap:10px;margin-bottom:5px;display:flex}.bk-meter-top b{font-weight:600}.bk-split-labels{gap:10px;display:grid}.bk-split-labels>div:last-child{text-align:right}.bk-split-labels>div:nth-child(2):not(:last-child){text-align:center}.bk-split-name{color:var(--ink-2);font-size:.85rem;display:block}.bk-split-name i{border-radius:3px;width:9px;height:9px;margin-right:5px;display:inline-block}.bk-split-labels b{font-size:1.15rem;font-weight:600}.bk-split-labels small{display:inline}.bk-split-bar{border-radius:6px;gap:2px;height:12px;margin-top:8px;display:flex;overflow:hidden}.bk-split-bar i{flex:1 1 0;min-width:4px;display:block}.bk-timeline li{padding:0 0 12px 20px;position:relative}.bk-timeline li:last-child{padding-bottom:0}.bk-timeline li:before{content:"";z-index:1;background:var(--accent);width:9px;height:9px;box-shadow:0 0 0 2px var(--card);border-radius:50%;position:absolute;top:.42em;left:0}.bk-timeline li:after{content:"";background:var(--line);width:1px;position:absolute;top:.42em;bottom:-.42em;left:4px}.bk-timeline li:last-child:after{display:none}.bk-up{align-items:center;gap:12px;display:flex}.bk-upcoming .bk-up{flex:1}.bk-up.bk-link{display:flex}.bk-up b{font-weight:600;display:block}.bk-date{background:var(--bg-2);text-align:center;border-radius:10px;flex:none;width:44px;padding:4px 0;line-height:1.1}.bk-date b{font-size:1.1rem}.bk .bk-date small{text-transform:capitalize;font-size:.7rem}.bk .bk-when{color:var(--accent-text);flex:none;font-weight:600}.bk-upcoming .past{opacity:.6}.bk .past .bk-when{color:var(--ink-2)}.bk-scores{--min:240px}.bk-match{flex-direction:column;gap:3px;display:flex}.bk-match.bk-link{display:flex}.bk-match-top{gap:10px;margin-bottom:3px;display:flex}.bk-side{color:var(--ink-2);align-items:baseline;gap:12px;display:flex}.bk-side.won{color:var(--ink);font-weight:700}.bk-callout{border-radius:var(--radius-sm);background:var(--tone-soft);border:1px solid color-mix(in srgb, var(--tone) 25%, transparent);gap:10px;padding:12px 14px;display:flex}.bk-callout>.ico{color:var(--tone);margin-top:1px}.bk-callout .bk-grow>strong{font-weight:600;display:block}.bk-quote{border-left:3px solid var(--accent);margin:0;padding:4px 0 4px 18px}.bk .bk-quote blockquote{color:var(--ink);letter-spacing:-.01em;border:0;margin:0;padding:0;font-size:1.32rem;font-weight:500;line-height:1.35}.bk-quote figcaption{margin-top:8px;font-size:.9rem}.bk-quote figcaption b,.bk-quote figcaption a{font-weight:600}.bk .bk-quote figcaption a{text-underline-offset:2px;text-decoration:underline}.bk-quote figcaption small{margin-left:6px;display:inline}.bk-claims>li{flex-wrap:nowrap;align-items:baseline}.bk-claims .bk-pill{width:104px}.bk .bk-source{font-size:.85rem}.bk-sides{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px 20px;display:grid}.bk .bk-marked{margin-top:6px}.bk-marked li{gap:8px;display:flex}.bk-marked li+li{margin-top:6px}.bk-marked .ico{color:var(--tone);margin-top:3px}.bk-steps{flex-direction:column;gap:10px;display:flex}.bk-steps li{gap:10px;display:flex}.bk-steps b{font-weight:600}.bk-chain{flex-wrap:wrap;gap:8px 6px;display:flex}.bk-chain li{flex:130px;align-items:center;gap:6px;display:flex}.bk-chain li>span{background:var(--bg-2);border-radius:10px;flex:1;padding:8px 10px;font-size:.92rem}.bk-chain-arrow{color:var(--ink-2)}.bk-profile,.bk-release{flex-direction:column;gap:10px;display:flex}.bk-profile-head{align-items:center;gap:12px;display:flex}.bk-profile-head .bk-title,.bk-release-head .bk-title,.bk-weather-head .bk-title,.bk-todo-head .bk-title{margin-bottom:0;font-size:1.05rem}.bk-facts{margin:0}.bk-facts>div{border-top:1px solid var(--line);flex-wrap:wrap;gap:0 12px;padding:6px 0;display:flex}.bk-facts dt{color:var(--ink-2);flex:0 38%;font-size:.9rem}.bk-facts dd{flex:50%;margin:0}.bk-release-head{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.bk-place{gap:10px;display:flex}.bk-place.bk-link{display:flex}.bk-place b{font-weight:600;display:block}.bk-place-pin{color:var(--accent-text)}.bk-place .bk-go{margin-top:4px}.bk-define{padding:0}.bk-define summary{cursor:pointer;border-radius:var(--radius-sm);align-items:center;gap:8px;padding:10px 16px;font-weight:600;list-style:none;display:flex}.bk-define summary::-webkit-details-marker{display:none}.bk-define-mark{color:var(--ink-2);transition:transform var(--t-2) var(--ease)}.bk-define[open] .bk-define-mark{transform:rotate(90deg)}.bk-define-body{animation:fade var(--t-2) var(--ease) backwards;flex-direction:column;gap:6px;padding:0 16px 12px;display:flex}.bk-linkrow{flex:1;align-items:center;gap:12px;display:flex}.bk-linkrow.bk-link{display:flex}.bk-linkrow b{font-weight:600;display:block}.bk-linkrow .bk-soft{display:block}.bk-todo-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.bk-todo-act{flex:none;margin-left:auto}.bk-intasks{color:var(--ink-2);align-items:center;gap:5px;padding:6px 2px;font-size:.85rem;font-weight:600;display:inline-flex}.bk-intasks .ico{color:var(--accent-text)}.bk-todo .bk-rows>li .bk-grow{flex-basis:160px}@media (pointer:coarse){.bk-define summary,.bk-linkrow,.bk-up.bk-link,.bk-intasks,.bk a.bk-go{min-height:40px}}@media (width<=520px){.bk-grid{--min:132px}.bk-tickers.one,.bk-scores{--min:100%}.bk-stats{--min:124px}.bk-card{padding:12px}.bk-compare,.bk-define{padding:0}.bk-compare>.bk-title{padding:12px 12px 8px}.bk-define summary,.bk-define-body{padding-inline:12px}.bk-q-price{font-size:1.35rem}.bk-q-price.long{font-size:1.1rem}.bk-stat-value{font-size:1.3rem}.bk .bk-quote blockquote{font-size:1.15rem}.bk-claims>li{flex-direction:column;align-items:flex-start}.bk-claims .bk-pill{width:auto}.bk-claims .bk-grow{flex:none;width:100%}.bk-chain{flex-direction:column}.bk-chain li{flex-direction:column;flex:none;align-items:stretch}.bk-chain-arrow{align-self:center;transform:rotate(90deg)}}@media (width<=420px){.bk-stats>:nth-child(3):last-child{grid-column:1/-1}}.ch{--ch-5:color-mix(in srgb, var(--ink-2) 62%, var(--card));--ch-6:color-mix(in srgb, var(--ink-2) 34%, var(--card));border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line);flex-direction:column;gap:10px;min-width:0;max-width:100%;padding:14px;font-size:.92rem;line-height:1.4;display:flex}.ch-top{align-items:flex-start;gap:10px;display:flex}.ch-head{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ch-title{overflow-wrap:anywhere;font-weight:600}.ch-sub{color:var(--ink-2);margin-left:8px;font-size:.8rem;font-weight:500}.ch-small,.ch-when{color:var(--ink-2);font-size:.8rem}.ch-big{letter-spacing:-.02em;overflow-wrap:anywhere;font-size:1.7rem;font-weight:600;line-height:1.2}.ch-line{flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-height:1.4em;display:flex}.ch-delta{flex:none;font-size:.85rem;font-weight:600}.ch-delta.up{color:var(--green)}.ch-delta.down{color:var(--rose)}.ch-delta.flat{color:var(--ink-2)}.ch-tbtn{border:1px solid var(--line);color:var(--ink-2);transition:color var(--t-1) var(--ease), transform var(--t-move) var(--ease-pop);background:0 0;border-radius:999px;flex:none;padding:2px 10px;font-size:.78rem;font-weight:600}.ch-tbtn[aria-pressed=true]{background:var(--bg-2);color:var(--ink)}.ch-tbtn:active{transition-duration:var(--t-1), var(--t-press);transform:scale(.97)}@media (hover:hover){.ch-tbtn:hover{color:var(--ink)}}.seg.ch-seg{gap:2px;width:fit-content;max-width:100%;padding:3px}.seg.ch-seg button{flex:none;padding:3px 12px;font-size:.8rem}.ch ul.ch-legend,.ch ul.ch-rows,.ch ul.ch-dlegend{margin:0;padding:0;list-style:none}.ch-legend{color:var(--ink-2);flex-wrap:wrap;gap:4px 14px;font-size:.8rem;display:flex}.ch-legend li{align-items:center;gap:6px;min-width:0;max-width:100%;display:flex}.ch-legend span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ch-key{flex:none;display:block}.ch-key.line{border-radius:1px;width:14px;height:2px}.ch-key.rect{border-radius:3px;width:10px;height:10px}.ch-rows{gap:2px;font-size:.85rem;display:grid}.ch-rows li{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.ch-rows small{color:var(--ink-2);white-space:nowrap;grid-column:3;font-size:.78rem}.ch-rows span:not(.ch-delta){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ch-rows .ch-delta{font-variant-numeric:tabular-nums;grid-column:4}.ch-body{min-width:0}.ch-plot{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:crosshair;border-radius:6px;width:100%;position:relative}.ch-svg{max-width:none;display:block;position:absolute;inset:0;overflow:visible}.ch-svg text{font-family:var(--font-body)}.ch-grid{stroke:var(--line);stroke-width:1px;shape-rendering:crispedges}.ch-zero{stroke:color-mix(in srgb, var(--ink-2) 55%, var(--line));stroke-width:1px;shape-rendering:crispedges}.ch-tick{fill:var(--ink-2);font-variant-numeric:tabular-nums;font-size:11px}.ch-val,.ch-end{fill:var(--ink);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.ch-rowlabel{fill:var(--ink-2);font-size:12px}.ch-line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.ch-wash{opacity:.1}.ch-dot{stroke:var(--card);stroke-width:2px}.ch-leader{stroke:var(--ink-2);stroke-width:1px}.ch-cross{stroke:var(--ink-2);stroke-width:1px;shape-rendering:crispedges}.ch-band{fill:color-mix(in srgb, var(--ink-2) 10%, transparent)}.ch-bar,.ch-slice{transition:opacity var(--t-1) var(--ease)}.ch-bar.dim,.ch-slice.dim{opacity:.5}.ch-slice{fill:none}.ch-tip{z-index:2;background:var(--card);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);pointer-events:none;border-radius:8px;padding:6px 9px;font-size:.78rem;position:absolute;top:4px}.ch-tip-t{color:var(--ink-2);overflow-wrap:anywhere}.ch-tip-r{align-items:center;gap:6px;min-width:0;display:flex}.ch-tip-r b{font-variant-numeric:tabular-nums;flex:none;font-weight:600}.ch-tip-r span{min-width:0;color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ch-donut{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px 24px;display:flex}.ch-ring{touch-action:pan-y;border-radius:50%;flex:none;width:196px;max-width:100%;height:196px;position:relative}.ch-ring svg{display:block}.ch-mid{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:44px}.ch-mid b{font-size:1.25rem;font-weight:600;line-height:1.2}.ch-mid span{max-width:100%;color:var(--ink-2);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.75rem;display:-webkit-box;overflow:hidden}.ch-dlegend{flex:200px;gap:2px;min-width:0;font-size:.85rem;display:grid}.ch-dlegend li{border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto 3.4em;align-items:center;gap:8px;padding:2px 6px;display:grid}.ch-dlegend li.on{background:var(--bg-2)}.ch-dlegend span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ch-dlegend b,.ch-dlegend small{font-variant-numeric:tabular-nums;text-align:right}.ch-dlegend b{font-weight:600}.ch-dlegend small{color:var(--ink-2);font-size:.78rem}.ch-heat{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:2px;display:grid}.ch .ch-tile{min-width:0;min-height:64px;color:var(--ink);transition:box-shadow var(--t-1) var(--ease);border-radius:6px;flex-direction:column;justify-content:space-between;gap:4px;padding:8px;text-decoration:none;display:flex}.ch-tile span{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.78rem;line-height:1.25;display:-webkit-box;overflow:hidden}.ch-tile b{font-size:.95rem;font-weight:600}@media (hover:hover){a.ch-tile:hover{box-shadow:inset 0 0 0 1.5px var(--ink-2)}}.ch-scale{align-items:center;gap:6px;display:inline-flex}.ch-scale i{background:linear-gradient(90deg, color-mix(in srgb, var(--rose) 52%, var(--bg-2)), var(--bg-2), color-mix(in srgb, var(--green) 52%, var(--bg-2)));border-radius:3px;width:72px;height:6px;display:block}.ch-table{overscroll-behavior-x:contain;border-radius:6px;max-height:340px;font-size:.85rem;overflow:auto}.ch-table table{border-collapse:collapse;width:100%}.ch-table th,.ch-table td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:5px 10px;font-weight:400}.ch-table tbody th,.ch-table thead th:first-child{text-overflow:ellipsis;text-align:left;background:var(--card);max-width:55vw;position:sticky;left:0;overflow:hidden}.ch-table td{font-variant-numeric:tabular-nums}.ch-table thead th{z-index:1;background:var(--card);color:var(--ink-2);font-size:.78rem;font-weight:600;position:sticky;top:0}.ch-table thead th:first-child{z-index:2}.ch-empty{min-height:120px;color:var(--ink-2);place-items:center;font-size:.85rem;display:grid}.ch-foot{color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px;font-size:.78rem;display:flex}.ch-foot>span{min-width:0}.ch .ch-foot a{color:var(--ink-2);text-underline-offset:2px;text-decoration:underline}@media (hover:hover){.ch .ch-foot a:hover{color:var(--ink)}}.ch-spark{width:100%;height:100%;min-height:32px;display:block;position:relative}.ch-spark svg{max-width:none;display:block;position:absolute;inset:0;overflow:visible}.ch-spark path{fill:none;stroke:var(--spark);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.ch-spark circle{fill:var(--spark);stroke:var(--card);stroke-width:1.5px}.ch-spark.up{--spark:var(--green)}.ch-spark.down{--spark:var(--rose)}.ch-spark.flat{--spark:var(--ink-2)}.ch-fresh .ch-marks{animation:ch-in var(--t-page) var(--ease) backwards}.ch-fresh .ch-bars{animation:ch-grow-y var(--t-page) var(--ease) backwards}.ch-fresh .ch-hbars{animation:ch-grow-x var(--t-page) var(--ease) backwards}@keyframes ch-in{0%{opacity:0;transform:translateY(3px)}}@keyframes ch-grow-y{0%{opacity:0;transform:scaleY(.5)}}@keyframes ch-grow-x{0%{opacity:0;transform:scaleX(.5)}}@media (pointer:coarse){.ch-tbtn{min-height:34px;padding-inline:14px}}.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}
