@layer tokens{@font-face{font-family:Figtree;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/figtree-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/figtree-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-app:#f6f7f9;--surface:#fff;--surface-2:#f0f2f5;--surface-3:#e6e9ee;--border:#e3e6eb;--border-input:#8a94a3;--text-primary:#1d2532;--text-secondary:#475263;--text-muted:#5d6878;--text-placeholder:var(--text-muted);--accent:#3f5ba9;--accent-hover:#344d92;--accent-press:#2b4079;--on-accent:#fff;--accent-soft:#eaeef9;--brand:#d92d20;--good:#2b7356;--good-soft:#e5f3ec;--watch:#8a5a12;--watch-soft:#fbf1dc;--danger:#b4271d;--danger-soft:#fdecea;--on-danger:#fff;--focus-ring:#3f5ba9;--overlay:#0f131973;--chart-busy:#b8c1ce;--chart-task:#7b90cc;--chart-over:#e0a63f;--chart-line:#5d6878;--chart-track:#f0f2f5;--font-ui:"Figtree", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:var(--font-ui);--font-mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.5rem;--text-xs-lh:1.4;--text-sm-lh:1.45;--text-md-lh:1.5;--text-lg-lh:1.4;--text-xl-lh:1.3;--text-2xl-lh:1.25;--text-3xl-lh:1.2;--text-4xl-lh:1.1;--lh-tight:1.2;--lh-snug:1.35;--lh-body:1.5;--lh-reading:1.65;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--sidebar-w:240px;--topbar-h:56px;--bottombar-h:64px;--content-max:1280px;--reading-max:680px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-pill:999px;--shadow-1:0 1px 2px #1018280d;--shadow-2:0 4px 16px #10182814, 0 1px 3px #1018280f;--shadow-3:0 20px 48px #1018282e;--dur-1:.12s;--dur-2:.18s;--dur-3:.24s;--ease-out:cubic-bezier(.2, 0, 0, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--paper:var(--bg-app);--paper-raised:var(--surface);--ink:var(--text-primary);--ink-soft:var(--text-secondary);--sage:var(--accent);--sage-deep:var(--accent-press);--sage-soft:var(--accent-soft);--ochre:var(--watch);--ochre-soft:var(--watch-soft);--clay:var(--danger);--clay-soft:var(--danger-soft);--mist:#0000000f;--border-light:var(--border);--card-bg:var(--surface);--auth-card-bg:var(--surface);--panel-bg:var(--surface);--input-bg:var(--surface);--input-border:var(--border-input);--task-card-bg:var(--surface);--schedule-item-bg:var(--surface-2);--metric-card-bg:var(--surface);--insight-card-bg:var(--surface-2);--btn-secondary-bg:var(--accent-soft);--btn-secondary-border:transparent;--btn-ghost-bg:transparent;--hero-bg:var(--surface);--hero-text:var(--text-primary);--hero-panel-bg:var(--hero-bg);--hero-panel-text:var(--hero-text);--chart-track-bg:var(--surface-2);--status-pill-critical-bg:var(--danger-soft);--status-pill-upcoming-bg:var(--watch-soft);--status-pill-overdue-bg:var(--danger-soft);--card-shadow:none;--tone-watch-fg:var(--watch);--tone-good-bg:var(--good-soft);--tone-good-fg:var(--good);--header-bg:var(--surface);--header-text:var(--brand);--header-border:var(--border);--user-info-color:var(--text-secondary);--logout-btn-color:var(--text-secondary);--logout-btn-bg:transparent;--logout-btn-border:var(--border);--logout-btn-hover-color:var(--danger);--logout-btn-hover-bg:var(--danger-soft);--logout-btn-hover-border:transparent;--menu-item-color:var(--text-secondary);--menu-item-hover-bg:var(--surface-2);--menu-item-hover-color:var(--text-primary);--reviewer-track:color-mix(in srgb, var(--text-secondary) 20%, transparent);--toastify-font-family:var(--font-ui)}.dark-theme{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-app:#0f1319;--surface:#161b23;--surface-2:#1d232d;--surface-3:#262d39;--border:#29303c;--border-input:#6a7486;--text-primary:#e7eaf0;--text-secondary:#b3bbc8;--text-muted:#949eae;--accent:#a3b6f2;--accent-hover:#b8c7f6;--accent-press:#cbd6f8;--on-accent:#0f1319;--accent-soft:#212b45;--brand:#f26b5f;--good:#82c9a5;--good-soft:#16302a;--watch:#e9c27a;--watch-soft:#33291a;--danger:#f3a39b;--danger-soft:#3b1f1d;--on-danger:#0f1319;--focus-ring:#a3b6f2;--overlay:#0009;--chart-busy:#4a5466;--chart-task:#8ea3e6;--chart-over:#d9a441;--chart-line:#949eae;--chart-track:#1d232d;--shadow-1:0 1px 2px #0006;--shadow-2:0 6px 20px #00000073;--shadow-3:0 24px 56px #0009;--mist:#ffffff0f}}@layer base{*{box-sizing:border-box}:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{min-height:100%;margin:0}body{min-height:100vh}button,input,select,textarea{font:inherit}:root{scrollbar-width:thin;scrollbar-color:var(--accent) transparent}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--accent);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{filter:brightness(.85)}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}button,a,[role=button],summary{touch-action:manipulation}button,[role=button]{-webkit-user-select:none;user-select:none}@media (pointer:coarse){input,select,textarea{font-size:max(16px,1em)}}body{font-family:var(--font-ui);font-size:var(--text-md);line-height:var(--lh-body);background:var(--bg-app);color:var(--text-primary)}h1,.eyebrow-mark{font-family:var(--font-ui);letter-spacing:-.02em;font-weight:700}h2,h3{font-family:var(--font-ui);letter-spacing:-.01em;font-weight:600}svg.lucide{stroke-width:1.75px}::placeholder{color:var(--text-placeholder);opacity:1}::selection{background:color-mix(in srgb, var(--accent) 28%, transparent);color:inherit}input,textarea{caret-color:var(--accent)}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}a{text-underline-offset:3px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--space-3);top:var(--space-3);z-index:1000;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--accent);color:var(--on-accent);font-size:var(--text-sm);font-weight:600;text-decoration:none;position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}.tabular{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){:not(.Toastify__progress-bar),:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}}@layer legacy;@layer components{.tonal-button{justify-content:center;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--dur-1) ease, color var(--dur-1) ease, transform var(--dur-1) var(--ease-out);border:0;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.tonal-button:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 10%, var(--accent-soft));color:var(--accent-press)}}.tonal-button:active:not(:disabled){background:color-mix(in srgb, var(--accent) 16%, var(--accent-soft));color:var(--accent-press);transform:scale(.98)}@media (width<=720px),(pointer:coarse){.tonal-button{min-height:44px}}.tonal-button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.tonal-button:disabled{background:var(--surface-3);color:var(--text-muted);cursor:not-allowed}.ghost-button.is-danger{color:var(--danger)}@media (hover:hover) and (pointer:fine){.ghost-button.is-danger:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}}.ghost-button.is-danger:active:not(:disabled){background:var(--danger-soft)}.ghost-button.is-danger:disabled{color:var(--text-muted)}@media (hover:hover) and (pointer:fine){.danger-button:hover:not(:disabled),.primary-button.confirm-danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 85%, var(--text-primary))}}.danger-button:active:not(:disabled),.primary-button.confirm-danger:active:not(:disabled){background:color-mix(in srgb, var(--danger) 70%, var(--text-primary))}.icon-action.is-active{background:var(--accent-soft);color:var(--accent)}.busy-spinner{flex:none;animation:.7s linear infinite busy-spin}@keyframes busy-spin{to{transform:rotate(360deg)}}[aria-busy=true]{cursor:progress}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:0;accent-color:var(--accent);flex:none;padding:0}:is(label:has(>input[type=checkbox]),label:has(>input[type=radio])){flex-direction:row;align-items:center;min-height:44px}.field{align-content:start;gap:6px;min-width:0;display:grid}.field>label,.field>.field-label{font-size:var(--text-sm);color:var(--text-primary);margin:0;font-weight:500}.field-hint{font-size:var(--text-xs);line-height:var(--text-xs-lh);color:var(--text-muted);align-self:auto}.field-error{align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);line-height:var(--text-sm-lh);color:var(--danger);display:flex}.field-error>svg{flex:none;margin-top:2px}.chip.is-neutral{background:var(--surface-2);color:var(--text-secondary)}.chip.is-accent{background:var(--accent-soft);color:var(--accent)}.notice{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text-primary);font-size:var(--text-sm);line-height:var(--text-sm-lh);display:flex}.notice>svg{flex:none;margin-top:2px}.notice.is-watch{background:var(--watch-soft);color:var(--watch)}.notice.is-danger{background:var(--danger-soft);color:var(--danger)}.notice.is-good{background:var(--good-soft);color:var(--good)}.skeleton{border-radius:var(--radius-sm);background:var(--surface-3);min-height:1em;animation:1.2s ease-in-out infinite alternate skeleton-pulse;display:block}@keyframes skeleton-pulse{0%{opacity:.6}to{opacity:1}}.progress{border-radius:var(--radius-pill);background:var(--surface-2);height:6px;overflow:hidden}.progress>span{border-radius:var(--radius-pill);background:var(--accent);transform-origin:0;height:100%;transition:transform .4s var(--ease-out);display:block}.progress.is-good>span{background:var(--good)}.table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.table th{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);font-size:var(--text-xs);text-align:left;color:var(--text-muted);font-weight:600}.table td{height:48px;padding:0 var(--space-3);border-bottom:1px solid var(--border)}.table .num{text-align:right;font-variant-numeric:tabular-nums}@keyframes sheet-in{0%{transform:translateY(100%)}}@media (width<=720px){.modal-overlay{align-items:flex-end}.modal-overlay>.modal-content{width:100%;max-width:none;max-height:90dvh;padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom,0px));border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:sheet-in var(--dur-3) var(--ease-out)}.modal-overlay .modal-header{top:calc(-1 * var(--space-4));z-index:2;margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) var(--space-3);padding:var(--space-4) var(--space-4) var(--space-2);background:var(--s-surface,var(--surface));position:sticky}.modal-overlay .modal-actions{bottom:calc(-1 * (var(--space-4) + env(safe-area-inset-bottom,0px)));z-index:2;align-items:stretch;gap:var(--space-2);margin:var(--space-4) calc(-1 * var(--space-4)) calc(-1 * (var(--space-4) + env(safe-area-inset-bottom,0px)));padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--s-line,var(--border));background:var(--s-surface,var(--surface));flex-direction:column-reverse;position:sticky}.modal-overlay .modal-actions>*{width:100%}.terms-gate-overlay{align-items:center}}@media (width<=720px),(pointer:coarse){.modal-close{width:44px;height:44px}}.toast-with-action{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.toast-action{min-height:44px;margin:-8px calc(var(--space-2) * -1) -8px 0;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--accent);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;flex:none;font-weight:600}.toast-action:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){.Toastify__progress-bar{opacity:0}}.Toastify{--toastify-color-light:var(--surface);--toastify-color-dark:var(--surface);--toastify-text-color-light:var(--text-primary);--toastify-text-color-dark:var(--text-primary);--toastify-toast-background:var(--surface);--toastify-font-family:var(--font-ui);--toastify-toast-bd-radius:var(--radius-md);--toastify-toast-shadow:var(--shadow-2);--toastify-toast-min-height:48px;--toastify-toast-padding:var(--space-3) var(--space-4);--toastify-color-info:var(--accent);--toastify-color-success:var(--good);--toastify-color-warning:var(--watch);--toastify-color-error:var(--danger);--toastify-icon-color-info:var(--accent);--toastify-icon-color-success:var(--good);--toastify-icon-color-warning:var(--watch);--toastify-icon-color-error:var(--danger);--toastify-color-progress-light:var(--accent);--toastify-color-progress-dark:var(--accent);--toastify-color-progress-info:var(--accent);--toastify-color-progress-success:var(--good);--toastify-color-progress-warning:var(--watch);--toastify-color-progress-error:var(--danger)}.Toastify__toast{border:1px solid var(--border);font-size:var(--text-sm);line-height:var(--text-sm-lh)}.Toastify--animate,.Toastify__toast[class*=-enter-],.Toastify__toast[class*=-exit-]{animation-duration:var(--dur-3)!important;animation-timing-function:var(--ease-out)!important}@media (width<=480px){.Toastify__toast-container{padding:0 var(--space-3)}.Toastify__toast{border-radius:var(--radius-md)!important}}.app.app-layout{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);grid-template-rows:1fr auto;display:grid}.app.auth-layout{flex-direction:column;display:flex}.app.auth-layout>main{flex:1}.app.auth-layout .auth-page{min-height:0}.app>main:focus,.app>main:focus-visible{outline:none}.app.app-layout>main{width:100%;max-width:var(--content-max);grid-area:1/2;margin:0 auto;padding:24px 32px 32px}@media (width>=721px) and (width<=1023px){.app.app-layout>main{padding:20px 24px 24px}}.app.app-layout>main.is-reading{max-width:calc(var(--reading-max) + 80px)}.app>main{animation:fade-in var(--dur-2) var(--ease-out)}.app>main:has(>.page-skeleton){animation:none}.about-page section[id]{scroll-margin-top:var(--space-5)}.logo-link{align-items:center;gap:var(--space-2);min-height:40px;color:var(--brand);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:700;text-decoration:none;display:inline-flex}.logo-svg{flex:none;width:28px;height:28px}.logo-text>span{color:var(--text-primary)}.sidepanel{z-index:100;height:100dvh;padding:var(--space-5) var(--space-3) var(--space-4);background:var(--surface);border-right:1px solid var(--border);flex-direction:column;grid-area:1/1/span 2;display:flex;position:sticky;top:0;overflow-y:auto}.sidepanel-logo{margin-bottom:var(--space-5);padding:0 var(--space-3)}.sidepanel-nav{justify-content:space-between;gap:var(--space-5);flex-direction:column;flex:1;display:flex}.sidepanel-menu,.sidepanel-footer{gap:var(--space-1);flex-direction:column;display:flex}.sidepanel-footer{padding-top:var(--space-3);border-top:1px solid var(--border)}.sidepanel-link,.sidepanel-logout{align-items:center;gap:var(--space-3);width:100%;min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background-color var(--dur-1) ease, color var(--dur-1) ease;background:0 0;border:0;font-weight:500;text-decoration:none;display:flex;position:relative}.sidepanel-logout svg{margin:2px}.sidepanel-profile{gap:var(--space-2);padding-left:calc(var(--space-3) - 4px)}@media (hover:hover) and (pointer:fine){.sidepanel-link:hover,.sidepanel-logout:hover{background:var(--surface-2);color:var(--text-primary)}}.sidepanel-link:active,.sidepanel-logout:active{background:var(--surface-3)}.sidepanel-link.active,.sidepanel-guide.is-open{background:var(--accent-soft);color:var(--accent);font-weight:600}.sidepanel-link.active:before{content:"";left:calc(-1 * var(--space-3));background:var(--brand);border-radius:0 3px 3px 0;width:3px;position:absolute;top:10px;bottom:10px}.sidepanel-link:focus-visible,.sidepanel-logout:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.sidepanel-link .nav-badge{margin-left:auto}.sidepanel-section{margin-top:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-1);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:600}@media (pointer:coarse){.sidepanel-link,.sidepanel-logout{min-height:44px}}.nav-badge{background:var(--accent);min-width:20px;color:var(--on-accent);font-size:var(--text-xs);padding:0 6px;font-weight:600;line-height:20px;animation:none}.topbar,.bottombar{display:none}.bell-link{border-radius:var(--radius-pill);width:44px;height:44px;color:var(--text-secondary);transition:background-color var(--dur-1) ease, color var(--dur-1) ease;place-items:center;text-decoration:none;display:grid;position:relative}.bell-link.active{background:var(--accent-soft);color:var(--accent)}@media (hover:hover) and (pointer:fine){.bell-link:hover{background:var(--surface-2);color:var(--text-primary)}}.bell-link:active{background:var(--surface-3)}.bell-link .nav-badge{margin:0;position:absolute;top:2px;right:0}.more-list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.more-link{align-items:center;gap:var(--space-3);width:100%;min-height:48px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;font-size:var(--text-md);text-align:left;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-1) ease;background:0 0;border:0;font-weight:500;text-decoration:none;display:flex}.more-link svg,.more-link .ua{color:var(--text-secondary);flex:none}.more-link .nav-badge{margin-left:auto}.more-link:active{background:var(--surface-3)}.more-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.topbar-avatar{border-radius:var(--radius-pill);place-items:center;width:44px;height:44px;text-decoration:none;display:grid}.topbar-avatar.active .ua{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--accent)}.app-footer{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) 40px;border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.app.app-layout>.footer{grid-area:2/2;width:100%}.app-footer nav,.site-footer nav{gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.app-footer a,.site-footer nav a{min-height:32px;color:var(--text-secondary);font-size:var(--text-sm);align-items:center;text-decoration:none;display:inline-flex}.app-footer a:hover,.site-footer nav a:hover{color:var(--text-primary);text-decoration:underline}.site-footer{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-5);padding:var(--space-4) 40px;border-top:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:var(--text-xs);flex-wrap:wrap;margin-top:auto;display:flex}.site-footer .logo-link{font-size:var(--text-md)}.site-footer .logo-svg{width:24px;height:24px}.header-auth{min-height:var(--topbar-h);padding:env(safe-area-inset-top,0px) max(40px, env(safe-area-inset-right,0px)) 0 max(40px, env(safe-area-inset-left,0px));align-items:center;display:flex}.page-skeleton{gap:var(--space-4);display:grid}.page-skeleton-title{width:min(280px,60%);height:36px}.page-skeleton-block{border-radius:var(--radius-lg);height:168px}.page-skeleton-block.is-short{height:96px}.tour-panel{left:calc(var(--sidebar-w) + var(--space-4));bottom:var(--space-4);z-index:900;width:min(360px, calc(100vw - var(--sidebar-w) - var(--space-5)));max-height:calc(100vh - var(--space-5));max-height:calc(100dvh - var(--space-5));padding:var(--space-4) var(--space-5) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-primary);box-shadow:var(--shadow-2);transform-origin:0 100%;opacity:1;transition:opacity var(--dur-3) var(--ease-out), transform var(--dur-3) var(--ease-out);position:fixed;overflow-y:auto;transform:none}@starting-style{.tour-panel{opacity:0;transform:translateY(8px)}}.tour-panel.is-leaving{opacity:0;transition-duration:var(--dur-1);pointer-events:none;transform:translateY(8px)}.tour-panel-top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.tour-panel-top .icon-action{margin:calc(-1 * var(--space-2)) calc(-1 * var(--space-2)) calc(-1 * var(--space-2)) 0}.tour-kicker{color:var(--text-muted);font-size:var(--text-xs);font-weight:500}.tour-panel h2{margin:var(--space-2) 0 var(--space-1);font-size:var(--text-lg);line-height:var(--lh-snug)}.tour-panel h2:focus{outline:none}.tour-panel p{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--lh-body);margin:0}.tour-panel-foot{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);display:flex}.tour-dots{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.tour-dots span{border-radius:var(--radius-pill);background:var(--surface-3);width:6px;height:6px;transition:background-color var(--dur-2) ease}.tour-dots span.is-done{background:color-mix(in srgb, var(--accent) 45%, transparent)}.tour-dots span.is-current{background:var(--accent);width:16px}.tour-nav{gap:var(--space-2);flex:none;display:flex}.tour-target{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--radius-lg)}@media (width<=720px){.app.app-layout{padding-bottom:calc(var(--bottombar-h) + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex}.app.app-layout>main{width:100%;padding:16px var(--space-4) var(--space-6)}.app.app-layout>main.is-reading{max-width:none}.about-page section[id]{scroll-margin-top:calc(var(--topbar-h) + env(safe-area-inset-top,0px) + var(--space-3))}.app.auth-layout .dashboard,.app.auth-layout .auth-page{width:min(1080px,100% - 32px);padding-top:20px}.app.app-layout>.footer,.app-footer{padding:var(--space-2) var(--space-4);margin-top:auto}.app-footer a,.site-footer nav a{min-height:44px}.sidepanel{display:none}.topbar{z-index:100;justify-content:space-between;align-items:center;gap:var(--space-2);min-height:calc(var(--topbar-h) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(var(--space-4), env(safe-area-inset-right,0px)) 0 max(var(--space-4), env(safe-area-inset-left,0px));background:var(--surface);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.topbar .logo-link{min-height:44px}.topbar-actions{align-items:center;gap:var(--space-1);margin-right:calc(-1 * var(--space-2));display:flex}.bottombar{z-index:100;padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:var(--surface);border-top:1px solid var(--border);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.bottombar-link{min-height:var(--bottombar-h);padding:var(--space-1) 2px;color:var(--text-muted);font-size:var(--text-xs);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;transition:color var(--dur-1) ease, background-color var(--dur-1) ease;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-weight:500;text-decoration:none;display:flex;position:relative}button.bottombar-link{cursor:pointer;appearance:none;background:0 0;border:0;font-family:inherit}.bottombar-icon{display:inline-flex;position:relative}.bottombar-icon .nav-badge{min-width:18px;box-shadow:0 0 0 2px var(--surface);margin:0;padding:0 5px;line-height:18px;position:absolute;top:-6px;left:calc(100% - 8px)}.nav-dot{border-radius:var(--radius-pill);background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 2px var(--surface);position:absolute;top:-2px;right:-4px}.bottombar-link svg{transition:transform var(--dur-1) var(--ease-out)}.bottombar-link:active{background:var(--surface-2)}.bottombar-link:active svg{transform:scale(.95)}.bottombar-link.active{color:var(--accent);font-weight:600}.bottombar-link.active:before{content:"";background:var(--brand);border-radius:0 0 2px 2px;height:2px;position:absolute;top:-1px;left:28%;right:28%}.bottombar-link:focus-visible{outline-offset:-2px}.header-auth{padding:env(safe-area-inset-top,0px) max(var(--space-4), env(safe-area-inset-right,0px)) 0 max(var(--space-4), env(safe-area-inset-left,0px))}.site-footer{padding:var(--space-2) max(var(--space-4), env(safe-area-inset-right,0px)) var(--space-3) max(var(--space-4), env(safe-area-inset-left,0px));text-align:center;justify-content:center}.site-footer nav{order:-1;justify-content:center;width:100%}.tour-panel{left:calc(var(--space-2) + env(safe-area-inset-left,0px));right:calc(var(--space-2) + env(safe-area-inset-right,0px));bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px));width:auto;max-height:60dvh;padding:var(--space-3) var(--space-4) var(--space-4);border-radius:var(--radius-xl);transform-origin:bottom}@starting-style{.tour-panel{opacity:0;transform:translateY(calc(100% + var(--space-4)))}}.tour-panel.is-leaving{transform:translateY(calc(100% + var(--space-4)))}}@media (width<=360px){.tour-panel-foot{flex-wrap:wrap}.tour-nav{justify-content:flex-end;width:100%}}.quick-add{padding:var(--space-4)}@media (width>=721px){.quick-add{padding:var(--space-4) var(--space-5)}}.quick-add-head{margin-bottom:var(--space-3)}.quick-add-title{font-size:var(--text-md);line-height:var(--text-md-lh);margin:0;font-weight:600}.quick-add-lead{font-size:var(--text-sm);line-height:var(--text-sm-lh);color:var(--text-muted);margin:2px 0 0}.quick-add.is-flat .quick-add-title{font-size:var(--text-sm);line-height:var(--text-sm-lh)}.quick-add-field{gap:var(--space-1);flex-direction:column;display:flex}.quick-add-input{width:100%;min-width:0}.quick-add-error{margin:var(--space-2) 0 0}.quick-add-opts{align-items:flex-end;gap:var(--space-3) var(--space-5);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.quick-add-group{align-items:flex-start;gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.quick-add-label{width:auto;font-size:var(--text-xs);line-height:var(--text-xs-lh);color:var(--text-secondary);font-weight:500;display:block}.quick-add-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.quick-add-chip{align-items:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-3);border:1px solid var(--border-input);border-radius:var(--radius-pill);background:var(--surface);color:var(--text-secondary);font:inherit;font-size:var(--text-sm);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-1) ease, border-color var(--dur-1) ease, color var(--dur-1) ease, transform var(--dur-1) var(--ease-out);font-weight:500;display:inline-flex}@media (hover:hover) and (pointer:fine){.quick-add-chip:hover:not(.is-selected){background:var(--surface-2);color:var(--text-primary)}}.quick-add-chip:active{transform:scale(.98)}.quick-add-chip.is-selected{border-color:var(--accent-soft);background:var(--accent-soft);color:var(--accent);font-weight:600}.quick-add-chip:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (width<=720px),(pointer:coarse){.quick-add-chip{min-height:44px}}.quick-add-short{display:none}@media (width<=720px){.quick-add-chips{gap:var(--space-1)}.quick-add-chip{padding:0 var(--space-2)}.quick-add-chip.is-pick{gap:var(--space-1)}.quick-add-long{display:none}.quick-add-short{display:inline}}.quick-add-pick{display:inline-flex;position:relative}.quick-add-date{width:auto;margin-left:var(--space-2);flex:0 11rem}.quick-add-date-hidden{opacity:0;pointer-events:none;border:0;width:100%;height:100%;min-height:0;padding:0;position:absolute;inset:0}.quick-add-size{flex-wrap:nowrap}.quick-add-size .segmented-option{touch-action:manipulation;-webkit-tap-highlight-color:transparent;white-space:nowrap}.quick-add-hours{color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:400}@media (width<=400px){.quick-add-hours{display:none}.quick-add-size .segmented-option{padding:0 var(--space-3)}}.quick-add-actions{align-items:center;gap:var(--space-2);flex:100%;display:flex}.quick-add-actions .primary-button,.quick-add-actions .tonal-button{flex:1 1 0;justify-content:center;min-height:44px}.quick-add-or{font-size:var(--text-sm);color:var(--text-secondary);flex:none}@media (width>=721px){.quick-add-actions{flex:none;margin-left:auto}.quick-add-actions .primary-button,.quick-add-actions .tonal-button{flex:none}}.quick-add.is-flat{padding:0 0 var(--space-4);margin-bottom:var(--space-4);border-bottom:1px solid var(--border)}.schedule-item{overflow-wrap:anywhere;min-width:0}.schedule-item>span{min-width:0}@keyframes row-in{0%{opacity:0;transform:translateY(6px)}}.is-entering{animation:row-in var(--dur-2) var(--ease-out)}.task-check{width:44px;height:44px;margin:0 calc(var(--space-1) * -1) 0 calc(var(--space-2) * -1 - 2px);color:#0000;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.task-check svg{box-sizing:content-box;border:2px solid var(--border-input);transition:background-color var(--dur-1) ease, border-color var(--dur-1) ease, color var(--dur-1) ease, transform var(--dur-1) var(--ease-out);border-radius:50%;padding:3px}@media (hover:hover) and (pointer:fine){.task-check:hover:not(.is-checked) svg{border-color:var(--accent);color:var(--accent)}}.task-check:active svg{transform:scale(.9)}.task-check.is-checked svg{background:var(--good);border-color:var(--good);color:var(--surface)}.task-check.is-settling svg{animation:check-pop var(--dur-2) var(--ease-out)}@keyframes check-pop{0%{transform:scale(.85)}}.task-check:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-4px;border-radius:50%}.task-row,.task-item{transition:opacity var(--dur-3) var(--ease-out)}:is(.task-row:has(.task-check.is-settling),.task-item:has(.task-check.is-settling)){opacity:.5}:is(.task-row:has(.task-check.is-checked) strong,.task-item:has(.task-check.is-checked) strong){color:var(--text-muted);text-decoration:line-through}.task-rows{margin:var(--space-3) 0 0;padding:0;list-style:none}.task-row{align-items:center;gap:var(--space-3);min-height:48px;padding:var(--space-1) 0;border-top:1px solid var(--border);display:flex}.task-row:first-child{border-top-color:#0000}.task-row-body{min-width:0;padding:var(--space-1) 0;border-radius:var(--radius-sm);color:inherit;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;flex:auto;justify-content:center;align-self:stretch;gap:2px;display:flex}.task-row-body strong{font-size:var(--text-md);color:var(--text-primary);overflow-wrap:anywhere;font-weight:500}.task-row-body span{font-size:var(--text-sm);color:var(--text-secondary);overflow-wrap:anywhere}.task-row-body span.is-empty{color:var(--text-muted)}.task-row-body:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (hover:hover) and (pointer:fine){.task-row-body:hover strong{color:var(--accent)}}.task-row .sched-menu{flex:none}.task-more{border-radius:var(--radius-md);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}@media (hover:hover) and (pointer:fine){.task-more:hover{background:var(--surface-2);color:var(--text-primary)}}.task-modal .modal-header{align-items:flex-start}.task-modal .modal-header h2{margin-top:2px}.task-title-input{font-size:var(--text-lg);font-weight:600}.task-chips{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.task-chips button{min-height:36px;padding:0 var(--space-3);border:1px solid var(--s-line,var(--border-input));border-radius:var(--radius-pill);background:var(--s-card,var(--surface));color:var(--s-ink,var(--text-primary));font:inherit;font-size:var(--text-sm);cursor:pointer;overflow-wrap:anywhere;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-1) ease, border-color var(--dur-1) ease, transform var(--dur-1) var(--ease-out);font-weight:500}.task-chips button:active{transform:scale(.98)}@media (hover:hover) and (pointer:fine){.task-chips button:hover{border-color:var(--s-accent,var(--accent))}}.task-chips button.is-on{border-color:var(--s-accent,var(--accent));background:color-mix(in srgb, var(--s-accent,var(--accent)) 18%, var(--s-card,var(--surface)))}.task-chips button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (width<=720px),(pointer:coarse){.task-chips button{min-height:44px}}.task-due-row{align-items:center;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.task-due-row input{flex:none;width:auto}.task-due-row .task-chips{margin-top:0}.task-stepper{align-items:center;gap:var(--space-2);align-self:flex-start;display:inline-flex}.task-stepper-value{align-items:center;gap:var(--space-2);width:auto;color:var(--s-muted,var(--text-secondary));flex-direction:row;margin:0;font-weight:600}.task-stepper-value input{text-align:center;width:78px;font-weight:700}@media (width<=720px){.task-stepper-value input{width:64px}}.task-scale-word{margin-left:var(--space-2);color:var(--s-accent-text,var(--accent));font-style:normal;font-weight:700}.task-scale{gap:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.task-scale button{border:1px solid var(--s-line,var(--border-input));border-radius:var(--radius-md);background:var(--s-card,var(--surface));min-height:44px;color:var(--s-muted,var(--text-secondary));font:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-1) ease, border-color var(--dur-1) ease;font-weight:700}.task-scale button.is-on{border-color:color-mix(in srgb, var(--s-accent,var(--accent)) 60%, transparent);background:color-mix(in srgb, var(--s-accent,var(--accent)) 22%, var(--s-card,var(--surface)));color:var(--s-ink,var(--text-primary))}.task-scale button[aria-checked=true]{box-shadow:0 0 0 2px var(--s-accent,var(--accent))}.task-scale button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.task-code{padding-top:var(--space-4);border-top:1px dashed var(--s-line,var(--border))}.task-code label{align-items:center;gap:var(--space-2);flex-direction:row}.task-code-row{gap:var(--space-3);display:flex}.task-code-row input{letter-spacing:.2em;flex:auto;width:auto;min-width:0;max-width:200px;font-weight:700}}@layer pages,utilities;
