:root,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f6f2;--bg-sidebar:#ecefe9;--surface:#fff;--surface-2:#f8faf6;--sunken:#e9eee7;--hover:#1414120b;--press:#14141214;--scrim:#1818142e;--border:#dde4da;--border-strong:#c2cfc0;--divider:#e5ebe1;--text:#17201a;--text-2:#58645b;--text-3:#68746a;--text-inverse:#f0f3ed;--primary:#d1fa52;--primary-hover:#c1ef39;--primary-text:#17201a;--accent:#1a7f4e;--accent-hover:#146a40;--accent-soft:#e2f0e6;--accent-softer:#f0f7f2;--accent-line:#b9d9c4;--accent-text:#125f39;--warn:#8a5000;--warn-soft:#fff1d6;--warn-line:#ecd3a2;--danger:#b3261e;--danger-text:#fff;--danger-soft:#fbe7e5;--danger-line:#efc2bd;--focus:#1a7f4e;--shadow-overlay:0 1px 2px #1414120f, 0 12px 32px -8px #1414122e;--shadow-drag:0 2px 4px #1414120f, 0 16px 36px -10px #14141247;--shadow-card:0 1px 0 #14141208;--c-moss:#5d7f36;--c-clay:#b1633c;--c-sky:#3b73a3;--c-amber:#b07f1f;--c-plum:#7a4f8a;--c-teal:#2b7d78;--c-rose:#b04962;--c-slate:#5f6a76}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#121615;--bg-sidebar:#0e1210;--surface:#1b211e;--surface-2:#222b25;--sunken:#161d18;--hover:#f0f0e80d;--press:#f0f0e817;--scrim:#00000073;--border:#303c33;--border-strong:#46574a;--divider:#29352d;--text:#f0f3ed;--text-2:#abb6ae;--text-3:#8d9b92;--text-inverse:#17201a;--primary:#d1fa52;--primary-hover:#dfff82;--primary-text:#17201a;--accent:#3fae74;--accent-hover:#53bf85;--accent-soft:#1b3326;--accent-softer:#16241c;--accent-line:#2d5a41;--accent-text:#7fd4a4;--warn:#f3ba65;--warn-soft:#382a19;--warn-line:#5a4526;--danger:#ec7a70;--danger-text:#17201a;--danger-soft:#3a1f1c;--danger-line:#5e2d28;--focus:#53bf85;--shadow-overlay:0 1px 2px #0006, 0 16px 40px -8px #0009;--shadow-drag:0 2px 6px #0006, 0 18px 40px -10px #000000b3;--shadow-card:none;--c-moss:#8db35f;--c-clay:#dd8a5f;--c-sky:#6fa6d6;--c-amber:#d9a748;--c-plum:#b184c2;--c-teal:#5cb3ad;--c-rose:#de7d93;--c-slate:#98a3af}:root{--action:#d1fa52;--action-text:#17201a;--hero-bg:#17201a;--hero-text:#f0f3ed;--hero-muted:#b9c8bc;--hero-border:#354337;--work:var(--accent);--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Segoe UI", system-ui, sans-serif;--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", "Segoe UI", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--r-sm:8px;--r:10px;--r-lg:16px;--r-xl:20px;--ease:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--t-fast:.12s;--t:.18s;--t-slow:.22s;--sidebar-w:216px;--rail-w:64px;--tabbar-h:64px;--dock-h:0px;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px)}@media (prefers-reduced-motion:reduce){:root{--t-fast:0s;--t:0s;--t-slow:0s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg)}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11", "ss01";overscroll-behavior-y:none;margin:0;font-size:14px;line-height:1.45}h1,h2,h3,p{margin:0}h1{font-family:var(--font-display);letter-spacing:-.02em;font-size:24px;font-weight:650;line-height:1.2}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}button:disabled{cursor:default}code{font-family:var(--mono);background:var(--sunken);border-radius:4px;padding:1px 5px;font-size:.92em}kbd{font-family:var(--font);border:1px solid var(--border);min-width:18px;height:18px;color:var(--text-3);background:var(--surface);border-bottom-width:2px;border-radius:4px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;line-height:1;display:inline-flex}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-sm)}::selection{background:var(--accent-soft)}.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{z-index:100;background:var(--primary);color:var(--primary-text);border-radius:var(--r);padding:8px 12px;position:absolute;top:-40px;left:8px}.skip-link:focus{top:8px}.num{font-variant-numeric:tabular-nums}.muted{color:var(--text-3)}.small{font-size:13px}.strong{font-weight:600}.pad{padding:24px 0}.text-warn{color:var(--warn)}.text-danger{color:var(--danger)}.spacer{flex:1}.row{align-items:center;display:flex}.stack{flex-direction:column;display:flex}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.dot-sep{color:var(--text-3);margin:0 6px}.btn{border-radius:var(--r);white-space:nowrap;height:32px;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13.5px;font-weight:550;display:inline-flex}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.5}.btn-sm{height:28px;padding:0 9px;font-size:13px}.btn-lg{height:40px;padding:0 16px;font-size:14.5px}.btn-primary{background:var(--primary);color:var(--primary-text)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-card)}.btn-secondary:hover:not(:disabled){border-color:var(--border-strong)}.btn-ghost{color:var(--text-2)}.btn-ghost:hover:not(:disabled){background:var(--hover);color:var(--text)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(1.08)}.btn-danger-text{color:var(--danger)}.btn-danger-text:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}.btn-stop{background:var(--primary);color:var(--primary-text);height:32px;padding:0 12px}.btn-stop:hover:not(:disabled){background:var(--primary-hover)}.icon-btn{border-radius:var(--r);width:32px;height:32px;color:var(--text-2);transition:background var(--t-fast) var(--ease);justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--hover);color:var(--text)}.link-btn{color:var(--accent-text);font-weight:550}.link-btn:hover{text-decoration:underline}.link-btn.plain{color:inherit;font-weight:inherit;align-items:center;gap:6px;display:inline-flex}.link-muted{color:var(--text-3);align-items:center;gap:4px;font-size:13px;display:inline-flex}.link-muted:hover{color:var(--text)}.chip-btn{border:1px solid var(--accent-line);height:22px;color:var(--accent-text);font-variant-numeric:tabular-nums;border-radius:999px;padding:0 7px;font-size:12px;font-weight:600}.chip-btn:hover:not(:disabled){background:var(--accent-soft)}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:var(--text-2);font-size:12.5px;font-weight:550}.field-hint{color:var(--text-3);font-size:12px}.input{border-radius:var(--r);border:1px solid var(--border);background:var(--surface);width:100%;height:36px;transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);appearance:none;min-width:0;padding:0 11px;font-size:14px}.input:hover{border-color:var(--border-strong)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input::placeholder{color:var(--text-3)}.input-lg{height:42px;font-size:16px;font-weight:550}.input-sm{height:30px;font-size:13px}.input-static{color:var(--accent-text);background:var(--accent-softer);border-color:var(--accent-line);align-items:center;display:flex}.input-quiet{background:0 0;border-color:#0000;height:32px;padding:0 8px}.input-quiet:hover{background:var(--hover);border-color:#0000}.input-quiet:focus{background:var(--surface)}.textarea{resize:vertical;height:auto;padding:9px 11px;line-height:1.5}.select{text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 20 20' fill='none' stroke='%238b887e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}input[type=date].input,input[type=time].input{font-variant-numeric:tabular-nums}.fieldset{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);flex-direction:column;gap:12px;margin:0;padding:14px;display:flex}.fieldset legend{color:var(--text-2);padding:0 6px;font-size:12.5px;font-weight:600}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.grid-price{grid-template-columns:1fr 110px;gap:12px;display:grid}.form-actions{align-items:center;gap:8px;padding-top:4px;display:flex}.form-error{color:var(--danger);background:var(--danger-soft);border:1px solid var(--danger-line);border-radius:var(--r);padding:8px 10px;font-size:13px}.form-warning{color:var(--warn);background:var(--warn-soft);border:1px solid var(--warn-line);border-radius:var(--r);padding:8px 10px;font-size:13px}.form-notice{color:var(--accent-text);background:var(--accent-softer);border-radius:var(--r);padding:8px 10px;font-size:13px}.budget-explain{color:var(--text-2);font-size:13px}.budget-explain strong{color:var(--text);font-variant-numeric:tabular-nums}.seg{background:var(--sunken);border-radius:calc(var(--r) + 2px);scrollbar-width:none;gap:2px;max-width:100%;padding:2px;display:inline-flex;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg>button{border-radius:var(--r);height:28px;color:var(--text-2);white-space:nowrap;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);align-items:center;gap:6px;padding:0 11px;font-size:13px;font-weight:550;display:inline-flex}.seg>button:hover{color:var(--text)}.seg>button.is-on{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border), 0 1px 2px #0000000a}.seg-sm>button{height:26px;padding:0 9px;font-size:12.5px}.mini-seg{gap:2px;display:inline-flex}.mini-seg button{border-radius:var(--r);width:32px;height:30px;color:var(--text-3);justify-content:center;align-items:center;display:inline-flex}.mini-seg button:hover{background:var(--hover)}.mini-seg button.is-on{background:var(--sunken);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{width:26px;height:26px;transition:transform var(--t-fast) var(--ease);border-radius:50%;box-shadow:inset 0 0 0 1px #00000014}.swatch.is-on{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--text)}.swatch:hover{transform:scale(1.08)}.boot{place-items:center;min-height:100dvh;padding:24px;display:grid}.boot-mark{animation:breathe 1.6s var(--ease) infinite}.boot-card{flex-direction:column;align-items:flex-start;gap:12px;max-width:420px;display:flex}.boot-card h1{font-size:20px}.boot-card p{color:var(--text-2)}.auth{min-height:100dvh;padding:max(24px, var(--safe-t)) 16px max(24px, var(--safe-b));place-items:center;display:grid}.auth-card{flex-direction:column;gap:16px;width:100%;max-width:380px;display:flex}.auth-brand{letter-spacing:-.01em;align-items:center;gap:10px;margin-bottom:12px;font-size:16px;font-weight:650;display:flex}.auth-lede{color:var(--text-2);margin-top:-8px}.auth-switch{color:var(--text-2);font-size:13.5px}@keyframes breathe{50%{opacity:.45}}.app{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100dvh;display:grid}.app:has(.sidebar.is-rail){grid-template-columns:var(--rail-w) minmax(0, 1fr)}.app.is-mobile{display:block}.main{outline:none;min-width:0}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--divider);flex-direction:column;gap:14px;height:100dvh;padding:14px 12px;display:flex;position:sticky;top:0}.sidebar.is-rail{align-items:center;padding:14px 8px}.sidebar-brand{align-items:center;gap:10px;padding:4px 6px;display:flex}.sidebar-brand-text{flex-direction:column;min-width:0;line-height:1.15;display:flex}.brand-name{letter-spacing:-.01em;font-weight:650}.brand-ws{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.nav{flex-direction:column;gap:1px;display:flex}.nav-link{border-radius:var(--r);height:34px;color:var(--text-2);transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);align-items:center;gap:10px;padding:0 10px;font-weight:520;display:flex}.is-rail .nav-link{justify-content:center;width:44px;height:40px;padding:0}.nav-link:hover{background:var(--hover);color:var(--text)}.nav-kbd{opacity:0;transition:opacity var(--t-fast) var(--ease);margin-left:auto}.nav-link:hover .nav-kbd{opacity:1}.sidebar-foot{justify-content:space-between;align-items:center;margin-top:auto;padding:0 4px;display:flex}.sync{color:var(--text-3);align-items:center;gap:7px;font-size:12px;display:inline-flex}.sync-dot{background:var(--text-3);border-radius:50%;width:7px;height:7px}.sync-live .sync-dot{background:var(--accent)}.sync-reconnecting .sync-dot,.sync-connecting .sync-dot{background:var(--warn);animation:breathe 1.4s var(--ease) infinite}.sync-offline .sync-dot{background:var(--danger)}.banner{padding:8px 16px;padding-top:max(8px, var(--safe-t));background:var(--warn-soft);color:var(--warn);border-bottom:1px solid var(--warn-line);z-index:30;align-items:center;gap:8px;font-size:13px;display:flex;position:sticky;top:0}.banner-offline{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-line)}.now{border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface);transition:background var(--t) var(--ease), border-color var(--t) var(--ease);flex-direction:column;gap:6px;padding:12px;display:flex}.now.is-running{background:var(--accent-softer);border-color:var(--accent-line)}.now-label{letter-spacing:.02em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:7px;font-size:11.5px;font-weight:600;display:inline-flex}.is-running .now-label,.nowcard .now-label{color:var(--accent-text)}.now-dot{background:var(--border-strong);border-radius:50%;width:7px;height:7px}.is-running .now-dot,.nowcard .now-dot{background:var(--accent);animation:pulse 2.4s var(--ease) infinite}.now-task{text-align:left;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.now-task:hover{text-decoration:underline;-webkit-text-decoration-color:var(--accent-line);text-decoration-color:var(--accent-line)}.now-project{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:12.5px;display:flex;overflow:hidden}.now-row{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.now-clock{font-family:var(--mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--accent-text);font-size:22px;font-weight:500}.now-hint{color:var(--text-3);font-size:12.5px}.now-resume{text-align:left;border-radius:var(--r);transition:background var(--t-fast) var(--ease);align-items:center;gap:9px;margin:0 -6px -4px;padding:6px;display:flex}.now-resume:hover{background:var(--hover)}.now-resume kbd{margin-left:auto}.now-resume-play{border:1px solid var(--border-strong);width:26px;height:26px;color:var(--text-2);border-radius:50%;flex:none;place-items:center;display:grid}.now-resume:hover .now-resume-play{border-color:var(--accent);color:var(--accent)}.now-resume-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.now-resume-k{color:var(--text-3);font-size:11.5px}.now-resume-title{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:550;overflow:hidden}.now-rail{flex-direction:column;align-items:center;gap:4px;min-height:36px;display:flex}.now-rail-clock{font-family:var(--mono);color:var(--accent-text);font-variant-numeric:tabular-nums;font-size:10.5px}@keyframes pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 40%, transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 0%, transparent)}}.timer-btn{border:1px solid var(--border-strong);color:var(--text-2);background:var(--surface);transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);border-radius:50%;flex:none;place-items:center;display:inline-grid}.timer-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.timer-btn:active:not(:disabled){transform:scale(.92)}.timer-btn.is-running{background:var(--accent);border-color:var(--accent);color:#fff}.timer-btn.is-running:hover:not(:disabled){background:var(--accent-hover);color:#fff}.timer-btn:disabled{opacity:.6}.timer-btn svg{transform:translate(.5px)}.timer-btn.is-running svg{transform:none}.timer-btn-sm{width:26px;height:26px}.timer-btn-md{width:32px;height:32px}.timer-btn-lg{width:48px;height:48px}.clock{font-family:var(--mono);font-variant-numeric:tabular-nums}.tabbar{z-index:40;height:calc(var(--tabbar-h) + var(--safe-b));padding-bottom:var(--safe-b);background:color-mix(in srgb, var(--bg-sidebar) 92%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);border-top:1px solid var(--divider);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tab{color:var(--text-3);-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:10.5px;font-weight:550;display:flex}.tab.active{color:var(--text)}.tab:active{opacity:.6}.dock{left:8px;right:8px;bottom:calc(var(--tabbar-h) + var(--safe-b) + 6px);z-index:41;background:var(--primary);height:54px;color:var(--primary-text);box-shadow:var(--shadow-overlay);animation:dock-in var(--t-slow) var(--ease-out);border-radius:14px;align-items:center;gap:4px;padding:0 6px 0 4px;display:flex;position:fixed}.dock-main{text-align:left;min-width:0;height:100%;color:inherit;flex:1;align-items:center;gap:10px;padding:0 8px;display:flex}.dock-pulse{background:var(--accent);width:8px;height:8px;animation:pulse 2.4s var(--ease) infinite;border-radius:50%;flex:none}.dock-text{flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.dock-title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.dock-project{opacity:.65;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;font-size:12px;display:flex;overflow:hidden}.dock-clock{color:color-mix(in srgb, var(--accent) 70%, var(--primary-text));font-size:17px;font-weight:500}.dock-stop{background:color-mix(in srgb, var(--primary-text) 12%, transparent);width:44px;height:44px;color:var(--primary-text);border-radius:11px;place-items:center;display:grid}.dock-stop:active{transform:scale(.94)}@keyframes dock-in{0%{opacity:0;transform:translateY(12px)}}.page{max-width:1160px;margin:0 auto;padding:28px 36px 64px}.is-mobile .page{padding:max(16px, var(--safe-t)) 16px calc(var(--tabbar-h) + var(--dock-h) + var(--safe-b) + 28px)}.page-header{flex-direction:column;gap:14px;margin-bottom:22px;display:flex}.page-header-row{align-items:flex-start;gap:12px;display:flex}.page-header-titles{flex:1;min-width:0}.page-sub{color:var(--text-2);margin-top:3px;font-size:13.5px}.page-sub a:hover{text-decoration:underline}.page-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.section{margin-bottom:28px}.section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.section-title,.section-head h3{color:var(--text-2);letter-spacing:.005em;font-size:13px;font-weight:600}.prose{color:var(--text-2);white-space:pre-wrap;max-width:68ch}.crumbs{color:var(--text-3);align-items:center;gap:6px;margin-bottom:14px;font-size:13px;display:flex}.crumbs a:hover{color:var(--text)}.tabs{border-bottom:1px solid var(--divider);scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.tab-pill{height:34px;color:var(--text-3);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:0 10px;font-weight:550;display:inline-flex}.tab-pill:hover{color:var(--text)}.tab-pill.is-on{color:var(--text);border-color:var(--text)}.count{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:11.5px}.empty{flex-direction:column;align-items:flex-start;gap:8px;max-width:460px;padding:36px 0;display:flex}.empty-icon{background:var(--surface);border:1px solid var(--border);width:44px;height:44px;color:var(--text-2);border-radius:12px;place-items:center;margin-bottom:6px;display:grid}.empty h3{letter-spacing:-.01em;font-size:17px;font-weight:620}.empty p{color:var(--text-2)}.empty-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.skeleton{flex-direction:column;gap:10px;padding:12px 0;display:flex}.skeleton span{background:linear-gradient(90deg, var(--sunken), var(--hover), var(--sunken));background-size:200% 100%;border-radius:4px;height:14px;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.notice{border-radius:var(--r);background:var(--sunken);color:var(--text-2);align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.notice .link-btn{margin-left:auto}.project-dot{border-radius:50%;flex:none;display:inline-block}.project-mark{letter-spacing:-.02em;color:var(--pc);background:color-mix(in srgb, var(--pc) 14%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--pc) 22%, transparent);border-radius:28%;flex:none;place-items:center;font-weight:700;display:inline-grid}.pace{white-space:nowrap;background:var(--sunken);height:22px;color:var(--text-2);border-radius:999px;align-items:center;gap:5px;padding:0 8px 0 6px;font-size:12px;font-weight:600;display:inline-flex}.pace-glyph{background:color-mix(in srgb, currentColor 16%, transparent);border-radius:50%;place-items:center;width:14px;height:14px;font-size:11px;line-height:1;display:grid}.pace-ok{background:var(--accent-soft);color:var(--accent-text)}.pace-warn{background:var(--warn-soft);color:var(--warn)}.pace-danger{background:var(--danger-soft);color:var(--danger)}.burn{flex-direction:column;gap:3px;width:100%;display:flex}.burn-track{background:var(--sunken);border-radius:3px;height:5px;position:relative;overflow:hidden}.burn-compact .burn-track{height:4px}.burn-fill{height:100%;transition:width var(--t-slow) var(--ease);border-radius:3px}.burn-work{background:var(--accent)}.burn-time{background:var(--text-2)}.burn-time.tone-warn{background:var(--warn)}.burn-time.tone-danger{background:var(--danger)}.burn-time.tone-muted{background:var(--border-strong)}.legend{color:var(--text-3);align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.legend-work,.legend-time{background:var(--accent);border-radius:2px;width:10px;height:4px;margin-left:4px}.legend-time{background:var(--text-2)}.stat{flex-direction:column;gap:2px;min-width:0;display:flex}.stat-label{color:var(--text-3);font-size:12px;font-weight:550}.stat-value{letter-spacing:-.015em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:19px;font-weight:620}.stat-sub{color:var(--text-3);font-size:12px}.stat-warn .stat-value,.stat-warn .stat-sub{color:var(--warn)}.stat-danger .stat-value,.stat-danger .stat-sub{color:var(--danger)}.today-head{flex-direction:row;justify-content:space-between;align-items:flex-end}.today-total{align-items:baseline;gap:6px;display:flex}.today-total-value{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:24px;font-weight:620}.today-total-label{color:var(--text-3)}.today-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);align-items:start;gap:36px;display:grid}.nowcard{border-radius:var(--r-xl);background:var(--accent-softer);border:1px solid var(--accent-line);animation:fade-up var(--t-slow) var(--ease-out);flex-direction:column;gap:6px;margin-bottom:28px;padding:18px 20px;display:flex}.nowcard-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.nowcard-project{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;min-width:0;font-size:13px;display:inline-flex;overflow:hidden}.nowcard-title{text-align:left;letter-spacing:-.015em;font-size:19px;font-weight:620;line-height:1.3}.nowcard-row{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.nowcard-clock{font-family:var(--mono);letter-spacing:-.03em;color:var(--accent-text);font-variant-numeric:tabular-nums;font-size:40px;font-weight:450;line-height:1}.nowcard-foot{color:var(--text-2);font-size:12.5px}.clist,.alist,.tt-list,.entries,.mlist,.entry-mini-list,.clients{margin:0;padding:0;list-style:none}.crow{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:9px 0;display:flex}.crow-main{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.crow-title{white-space:nowrap;text-overflow:ellipsis;font-weight:550;overflow:hidden}.crow-main:hover .crow-title{text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong)}.crow-sub{color:var(--text-3);white-space:nowrap;align-items:center;gap:5px;font-size:12.5px;display:flex;overflow:hidden}.crow-time{white-space:nowrap;font-size:13px}.week{grid-template-columns:repeat(7,1fr);gap:6px;height:116px;display:grid}.week-day{flex-direction:column;align-items:center;gap:4px;display:flex}.week-bar-wrap{background:var(--sunken);border-radius:5px;flex:1;align-items:flex-end;width:100%;display:flex;overflow:hidden}.week-bar{background:var(--text-2);width:100%;transition:height var(--t-slow) var(--ease);border-radius:5px 5px 0 0}.week-day.is-today .week-bar{background:var(--accent)}.week-day.is-future .week-bar-wrap{background:repeating-linear-gradient(-45deg, var(--sunken), var(--sunken) 3px, transparent 3px, transparent 6px)}.week-label{color:var(--text-3);font-size:11.5px;font-weight:550}.week-day.is-today .week-label{color:var(--accent-text)}.week-value{color:var(--text-2);font-variant-numeric:tabular-nums;height:14px;font-size:11px}.alist{flex-direction:column;gap:2px;display:flex}.arow{border-radius:var(--r-lg);transition:background var(--t-fast) var(--ease);flex-direction:column;gap:8px;margin:0 -10px;padding:10px;display:flex}.arow:hover{background:var(--hover)}.arow-top{align-items:center;gap:9px;display:flex}.arow-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:580;overflow:hidden}.arow-foot{color:var(--text-3);justify-content:space-between;font-size:12px;display:flex}@keyframes fade-up{0%{opacity:0;transform:translateY(4px)}}.page-board{flex-direction:column;max-width:none;min-height:100dvh;padding:20px 24px 24px;display:flex}.is-mobile .page-board{padding-left:0;padding-right:0;padding-top:max(10px, var(--safe-t))}.is-mobile .board-head{margin-bottom:6px;padding:0 16px}.board-head-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.switcher{border-radius:var(--r);max-width:100%;height:36px;transition:background var(--t-fast) var(--ease);align-items:center;gap:9px;margin-left:-10px;padding:0 10px;display:inline-flex;position:relative}.switcher:hover{background:var(--hover)}.switcher-select{appearance:none;font-family:var(--font-display);letter-spacing:-.02em;cursor:pointer;text-overflow:ellipsis;background:0 0;border:0;min-width:0;max-width:100%;margin-right:-18px;padding-right:18px;font-size:20px;font-weight:650}.switcher-select:focus{outline:none}.switcher:focus-within{box-shadow:0 0 0 2px var(--focus)}.switcher-chev{color:var(--text-3);pointer-events:none}.pulse{border-radius:var(--r-lg);color:var(--text-2);transition:background var(--t-fast) var(--ease);align-items:center;gap:12px;min-width:0;margin-left:auto;padding:6px 10px;font-size:13px;display:flex}.pulse:hover{background:var(--hover)}.pulse-bars{flex:none;width:96px}.pulse-text strong{color:var(--text);font-variant-numeric:tabular-nums;font-weight:620}.pulse-text{white-space:nowrap;font-variant-numeric:tabular-nums}.pulse-sep{color:var(--text-3);margin:0 6px}.board{flex:1;grid-template-columns:repeat(4,minmax(208px,1fr));align-items:start;gap:12px;padding-bottom:12px;display:grid;overflow-x:auto}.column{border-radius:var(--r-xl);background:var(--sunken);min-height:160px;max-height:calc(100dvh - 120px);transition:background var(--t) var(--ease), box-shadow var(--t) var(--ease);flex-direction:column;display:flex}.column-head{align-items:center;gap:8px;padding:11px 12px 8px;display:flex}.column-count{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12px}.column-body{flex-direction:column;flex:1;gap:6px;min-height:80px;padding:2px 8px 10px;display:flex;overflow-y:auto}.column-empty{color:var(--text-3);text-align:center;border:1px dashed var(--border);border-radius:var(--r-lg);padding:14px 6px;font-size:12.5px}.status-icon{flex:none}.status-todo{color:var(--text-3)}.status-in_progress{color:var(--c-amber)}.status-qa{color:var(--c-sky)}.status-done{color:var(--accent)}.priority-icon{color:var(--text-3);flex:none}.priority-icon.p3{color:var(--danger)}.priority-icon.p2{color:var(--warn)}.card{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--shadow-card);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease), opacity var(--t-fast) var(--ease);flex-direction:column;gap:7px;padding:10px 10px 10px 12px;display:flex;position:relative}.card:hover{border-color:var(--border-strong)}.card:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.card.is-running{border-color:var(--accent-line);background:linear-gradient(0deg, var(--accent-softer), var(--accent-softer)), var(--surface)}.card.is-running:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-1px}.card.is-dragging{opacity:.35}.card.is-overlay{box-shadow:var(--shadow-drag);cursor:grabbing;transform:rotate(1.2deg)}.card[data-status=done] .card-title{color:var(--text-2)}.card-top{align-items:flex-start;gap:8px;display:flex}.card-title{-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;flex:1;min-width:0;font-size:13.5px;font-weight:550;line-height:1.35;display:-webkit-box;overflow:hidden}.card-meta{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:4px 10px;min-height:14px;font-size:12px;display:flex}.card-meta:empty{display:none}.card-project{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;max-width:100%;display:inline-flex;overflow:hidden}.card-time{font-variant-numeric:tabular-nums;color:var(--text-2)}.card-time.is-live{color:var(--accent-text);font-weight:600}.card-time.is-over{color:var(--warn)}.card-est{color:var(--text-3);font-weight:400}.card-tag:before{content:"#";opacity:.6}.card-lg{gap:8px;padding:12px 12px 12px 14px}.card-lg .card-title{font-size:15px}.card-lg .card-meta{font-size:12.5px}.quick-add-trigger{border-radius:var(--r);height:32px;color:var(--text-3);transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);align-items:center;gap:6px;padding:0 8px;font-size:13px;font-weight:550;display:flex}.quick-add-trigger:hover{background:var(--hover);color:var(--text)}.quick-add-trigger.is-big{height:44px;font-size:14px}.quick-add{background:var(--surface);border:1px solid var(--accent-line);border-radius:var(--r-lg);box-shadow:0 0 0 3px var(--accent-softer);animation:fade-up var(--t) var(--ease-out);flex-direction:column;gap:6px;padding:6px;display:flex}.quick-add .input{height:32px;box-shadow:none;border:0;padding:0 6px}.quick-add .quick-add-project{border-color:var(--border);height:28px;font-size:12.5px}.mboard{flex-direction:column;display:flex}.mtabs{z-index:20;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--divider);padding-top:var(--safe-t);grid-template-columns:repeat(4,1fr);display:grid;position:sticky;top:0}.mtab{letter-spacing:-.01em;height:46px;color:var(--text-3);white-space:nowrap;justify-content:center;align-items:center;gap:4px;min-width:0;padding:0 2px;font-size:12.5px;font-weight:580;display:flex}.mtab.is-on{color:var(--text)}.mtab .status-icon{display:none}@media (width>=420px){.mtab .status-icon{display:block}}.mtab-label{text-overflow:ellipsis;overflow:hidden}.mtab-count{font-variant-numeric:tabular-nums;background:var(--sunken);border-radius:9px;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:11px;display:inline-grid}.mtab.is-on .mtab-count{background:var(--primary);color:var(--primary-text)}.mtabs-ink{background:var(--text);width:25%;height:2px;transition:transform var(--t) var(--ease);position:absolute;bottom:-1px;left:0}.mpanes{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.mpanes::-webkit-scrollbar{display:none}.mpane{scroll-snap-align:start;scroll-snap-stop:always;flex-direction:column;flex:0 0 100%;gap:8px;width:100%;min-height:50dvh;padding:10px 16px 0;display:flex}.mlist{flex-direction:column;gap:8px;display:flex}.panel-root{z-index:60;pointer-events:none;position:fixed;inset:0}.panel-scrim{background:var(--scrim);opacity:0;transition:opacity var(--t-slow) var(--ease);pointer-events:auto;position:absolute;inset:0}.is-drawer .panel-scrim{background:color-mix(in srgb, var(--scrim) 40%, transparent)}.panel-root[data-state=open] .panel-scrim{opacity:1}.panel{background:var(--surface);pointer-events:auto;box-shadow:var(--shadow-overlay);transition:transform var(--t-slow) var(--ease-out), opacity var(--t-slow) var(--ease-out);outline:none;flex-direction:column;display:flex;position:absolute}.is-drawer .panel{border-radius:var(--r-xl);border:1px solid var(--border);opacity:0;max-width:calc(100vw - 16px);top:8px;bottom:8px;right:8px;transform:translate(24px)}.is-drawer[data-state=open] .panel{opacity:1;transform:none}.is-sheet .panel{max-height:calc(100dvh - max(28px, var(--safe-t) + 12px));padding-bottom:var(--safe-b);border-radius:16px 16px 0 0;bottom:0;left:0;right:0;transform:translateY(100%)}.is-sheet[data-state=open] .panel{transform:none}.panel-root[data-state=exit] .panel-scrim{opacity:0}.is-drawer[data-state=exit] .panel{opacity:0;transform:translate(24px)}.is-sheet[data-state=exit] .panel{transform:translateY(100%)}.sheet-grip{touch-action:none;cursor:grab;flex:none;place-items:center;height:22px;display:grid}.sheet-grip span{background:var(--border-strong);border-radius:3px;width:36px;height:5px}.panel-head{flex:none;align-items:center;gap:8px;padding:12px 12px 4px 20px;display:flex}.is-sheet .panel-head{padding-top:0;padding-left:16px}.panel-head-main{flex:1;min-width:0}.panel-title{font-size:15px;font-weight:620}.panel-crumb{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:8px;max-width:100%;font-size:13px;font-weight:550;display:inline-flex;overflow:hidden}.panel-crumb:hover{color:var(--text)}.panel-body{overscroll-behavior:contain;flex:1;padding:8px 20px 24px;overflow-y:auto}.is-sheet .panel-body{padding:6px 16px 20px}.dialog-root{z-index:80;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog-scrim{background:var(--scrim);animation:fade var(--t) var(--ease);position:absolute;inset:0}.dialog{background:var(--surface);border-radius:var(--r-xl);width:100%;max-width:420px;box-shadow:var(--shadow-overlay);border:1px solid var(--border);animation:pop var(--t) var(--ease-out);flex-direction:column;gap:8px;padding:20px;display:flex;position:relative}.dialog h2{letter-spacing:-.01em;font-size:16px;font-weight:640}.dialog p{color:var(--text-2);font-size:13.5px}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px;display:flex}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:scale(.97)translateY(4px)}}.toaster{z-index:90;pointer-events:none;position:fixed;bottom:16px;right:16px}.toaster>div{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.toast{pointer-events:auto;border-radius:var(--r-lg);background:var(--primary);max-width:min(440px,100vw - 32px);color:var(--primary-text);box-shadow:var(--shadow-overlay);animation:toast-in var(--t-slow) var(--ease-out);align-items:center;gap:10px;padding:9px 8px 9px 14px;font-size:13.5px;display:flex}.toast-error{background:var(--danger);color:#fff}.toast-msg{flex:1;min-width:0}.toast-action{color:color-mix(in srgb, var(--accent) 60%, var(--primary-text));border-radius:5px;padding:4px 6px;font-weight:650}.toast-error .toast-action{color:#fff;text-decoration:underline}.toast-x{opacity:.6;border-radius:5px;place-items:center;width:24px;height:24px;display:grid}.toast-x:hover{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media (width<=767px){.toaster{bottom:auto;left:12px;right:12px;top:max(10px, var(--safe-t))}.toaster>div{align-items:stretch}.toast{max-width:none}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}}}.task-detail{flex-direction:column;gap:16px;display:flex}.task-title-input{resize:none;width:100%;font-family:var(--font-display);letter-spacing:-.015em;border-radius:var(--r);background:0 0;border:0;margin:0 -6px;padding:4px 6px;font-size:20px;font-weight:640;line-height:1.3;overflow:hidden}.task-title-input:hover{background:var(--hover)}.task-title-input:focus{background:var(--surface);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.status-seg{border-radius:calc(var(--r) + 2px);background:var(--sunken);grid-template-columns:repeat(4,1fr);gap:2px;padding:2px;display:grid}.status-seg-item{border-radius:var(--r);height:34px;color:var(--text-2);white-space:nowrap;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:560;display:flex}.status-seg-item kbd{display:none}.status-seg-item:hover{color:var(--text)}.status-seg-item:hover kbd{display:inline-flex}.status-seg-item.is-on{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border), 0 1px 2px #0000000a}.task-timer{border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface-2);transition:background var(--t) var(--ease), border-color var(--t) var(--ease);align-items:center;gap:14px;padding:12px 14px;display:flex}.task-timer.is-running{background:var(--accent-softer);border-color:var(--accent-line)}.task-timer-main{flex:1;min-width:0}.task-timer-clock{font-family:var(--mono);letter-spacing:-.02em;color:var(--accent-text);font-variant-numeric:tabular-nums;font-size:26px;line-height:1.1}.task-timer-total{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:20px;font-weight:620}.task-timer-total-sm{font-variant-numeric:tabular-nums;font-weight:600}.task-timer-sub{color:var(--text-3);font-size:12.5px}.task-timer-side{text-align:right}.running-start{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;font-size:12.5px;display:flex}.est-meter{align-items:center;gap:10px;margin-top:-6px;display:flex}.est-track{background:var(--sunken);border-radius:2px;flex:1;height:4px;overflow:hidden}.est-fill{background:var(--text-2);height:100%;transition:width var(--t-slow) var(--ease)}.est-fill.is-near{background:var(--warn)}.est-fill.is-over{background:var(--danger)}.est-label{color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}.props{grid-template-columns:1fr 1fr;gap:4px 12px;display:grid}.prop{flex-direction:column;gap:2px;min-width:0;display:flex}.prop-label{color:var(--text-3);padding-left:8px;font-size:12px;font-weight:550}.task-entries{border-top:1px solid var(--divider);padding-top:14px}.entry-mini-list{flex-direction:column;display:flex}.entry-mini{border-radius:var(--r);text-align:left;grid-template-columns:56px auto 1fr auto;align-items:center;gap:10px;width:calc(100% + 16px);margin:0 -8px;padding:7px 8px;font-size:13px;display:grid}.entry-mini:hover:not(:disabled){background:var(--hover)}.entry-mini-day{color:var(--text-3)}.entry-mini-range{font-variant-numeric:tabular-nums;color:var(--text-2)}.entry-mini-note{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.entry-mini-dur{font-variant-numeric:tabular-nums;font-weight:560}.entry-mini-dur.is-running{color:var(--accent-text)}.inline-editor{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);animation:fade-up var(--t) var(--ease-out);margin:6px 0;padding:12px}.entry-times{grid-template-columns:1.3fr 1fr 1fr;gap:8px;display:grid}.task-actions{border-top:1px solid var(--divider);align-items:center;gap:4px;padding-top:12px;display:flex}.task-meta{color:var(--text-3);font-size:12px}.plist{flex-direction:column;display:flex}.plist-head,.prow{grid-template-columns:minmax(200px,2.2fr) minmax(140px,1.4fr) 110px 90px 110px 130px;align-items:center;gap:18px;display:grid}.plist-head{color:var(--text-3);border-bottom:1px solid var(--divider);padding:0 10px 8px;font-size:12px;font-weight:550}.plist-head .num,.prow .num{text-align:right}.prow{border-bottom:1px solid var(--divider);transition:background var(--t-fast) var(--ease);padding:12px 10px}.prow:hover{background:var(--hover)}.prow-name{align-items:center;gap:11px;min-width:0;display:flex}.prow-titles{flex-direction:column;min-width:0;display:flex}.prow-title{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.prow-sub{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.prow-bars{flex-direction:column;gap:5px;display:flex}.prow-bar-labels{color:var(--text-3);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:11.5px;display:flex}.prow-rate.is-warn{color:var(--warn)}.prow-tracked,.prow-price,.prow-rate{white-space:nowrap;font-size:13.5px}.project-head{align-items:center;gap:14px;margin-bottom:24px;display:flex}.project-head-titles{flex:1;min-width:0}.econ{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);flex-direction:column;gap:18px;margin-bottom:32px;padding:20px 22px;display:flex}.econ-head{align-items:flex-start;gap:12px;display:flex}.econ-sentence{color:var(--text);max-width:72ch;font-size:15px;line-height:1.5}.econ-bars{flex-direction:column;gap:10px;display:flex}.econ-bar-row{grid-template-columns:84px 1fr 170px;align-items:center;gap:14px;display:grid}.econ-bar-label{color:var(--text-2);font-size:12.5px;font-weight:550}.econ-track{background:var(--sunken);border-radius:6px;height:12px;position:relative;overflow:hidden}.econ-fill{transition:width var(--t-slow) var(--ease);border-radius:6px;position:absolute;top:0;bottom:0;left:0}.econ-qa{background:repeating-linear-gradient(-45deg, var(--accent), var(--accent) 3px, color-mix(in srgb, var(--accent) 35%, transparent) 3px, color-mix(in srgb, var(--accent) 35%, transparent) 6px);border-radius:0 6px 6px 0}.econ-over{background:repeating-linear-gradient(-45deg, var(--danger), var(--danger) 3px, transparent 3px, transparent 6px);opacity:.6;position:absolute;top:0;bottom:0;right:0}.econ-bar-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13.5px}.econ-foot{color:var(--text-3);padding-left:98px;font-size:12px}.stats{border-top:1px solid var(--divider);grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-top:16px;display:grid}.project-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:36px;display:grid}.status-counts{color:var(--text-2);font-variant-numeric:tabular-nums;gap:10px;font-size:12.5px;display:flex}.status-counts span{align-items:center;gap:4px;display:inline-flex}.tt-list{flex-direction:column;display:flex}.tt-row{border-bottom:1px solid var(--divider);align-items:center;gap:10px;padding:7px 0;display:flex}.tt-main{text-align:left;flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.tt-title{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;font-size:13.5px;font-weight:540;display:flex;overflow:hidden}.tt-main:hover .tt-title{text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong)}.tt-track{background:var(--sunken);border-radius:2px;height:4px;position:relative}.tt-fill{background:var(--text-2);border-radius:2px;position:absolute;inset:0 auto 0 0}.tt-fill.is-over{background:var(--warn)}.tt-est{background:var(--text);border-radius:1px;width:2px;margin-left:-1px;position:absolute;top:-3px;bottom:-3px}.tt-value{white-space:nowrap;text-align:right;min-width:96px;font-size:13px}.mini-stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;display:grid}.mini-stats .stat-value{font-size:17px}.spark{grid-template-columns:repeat(14,1fr);gap:4px;height:96px;display:grid}.spark-col{flex-direction:column;align-items:center;gap:4px;display:flex}.spark-bar-wrap{background:var(--sunken);border-radius:3px;flex:1;align-items:flex-end;width:100%;display:flex;overflow:hidden}.spark-bar{background:var(--text-2);width:100%}.spark-bar.is-today{background:var(--accent)}.spark-day{color:var(--text-3);font-size:10.5px}.filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filters>.select{width:auto;max-width:240px}.filter-task .select{width:auto;max-width:260px;height:30px;font-size:13px}.split{margin-bottom:20px}.split-bar{border-radius:4px;gap:2px;height:8px;margin-bottom:10px;display:flex;overflow:hidden}.split-bar span{min-width:3px}.split-legend{flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.split-legend li{align-items:center;gap:8px;display:flex}.days{flex-direction:column;gap:22px;display:flex}.day-head{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:baseline;padding-bottom:6px;display:flex}.day-head h2{font-size:13.5px;font-weight:620}.entry{text-align:left;border-radius:var(--r);width:calc(100% + 16px);transition:background var(--t-fast) var(--ease);grid-template-columns:156px minmax(0,1fr) auto 14px;align-items:center;gap:14px;margin:0 -8px;padding:9px 8px;display:grid}.entry:hover{background:var(--hover)}.entry.is-running{background:var(--accent-softer)}.entry-range{color:var(--text-2);white-space:nowrap;font-size:13px}.entry-dash{color:var(--text-3);margin:0 3px}.entry-main{flex-direction:column;min-width:0;display:flex}.entry-task{white-space:nowrap;text-overflow:ellipsis;font-weight:550;overflow:hidden}.entry-sub{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;font-size:12.5px;display:flex;overflow:hidden}.entry-note{text-overflow:ellipsis;overflow:hidden}.entry-dur{white-space:nowrap;font-size:13.5px;font-weight:600}.entry-dur.is-live{color:var(--accent-text)}.entry-chev{color:var(--text-3);opacity:0;transition:opacity var(--t-fast) var(--ease)}.entry:hover .entry-chev{opacity:1}.clients{border-top:1px solid var(--divider);flex-direction:column;display:flex}.client{border-bottom:1px solid var(--divider);grid-template-columns:minmax(200px,1.2fr) minmax(0,2fr) 120px;align-items:center;gap:18px;padding:12px 0;display:grid}.client.is-archived{opacity:.6}.client-main{text-align:left;align-items:center;gap:12px;min-width:0;display:flex}.client-main:hover .client-name{text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong)}.client-avatar{width:32px;height:32px;color:var(--pc);background:color-mix(in srgb, var(--pc) 14%, var(--surface));border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.client-text{flex-direction:column;min-width:0;display:flex}.client-name{font-weight:600}.client-notes{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.client-projects{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border);background:var(--surface);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;height:24px;padding:0 9px;font-size:12.5px;display:inline-flex}.chip:hover{border-color:var(--border-strong)}.chip.is-muted{opacity:.6}.client-stats{flex-direction:column;align-items:flex-end;font-size:13px;display:flex}.settings-section{margin-bottom:30px}.settings-section h2{color:var(--text-2);border-bottom:1px solid var(--divider);padding-bottom:8px;font-size:13px;font-weight:620}.setting{border-bottom:1px solid var(--divider);align-items:center;gap:16px;padding:12px 0;display:flex}.setting-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.setting-title{font-weight:550}.setting-desc{color:var(--text-3);font-size:12.5px}.setting-input{flex:none;width:240px}.shortcuts{flex-direction:column;margin:0;display:flex}.shortcut{border-bottom:1px solid var(--divider);grid-template-columns:160px 1fr;align-items:center;gap:16px;padding:8px 0;display:grid}.shortcut dt{gap:4px;display:flex}.shortcut dd{color:var(--text-2);margin:0;font-size:13.5px}.settings-foot{margin-top:8px}.hide-desktop{display:none}@media (width<=1099px){.page{padding:24px 28px 56px}.plist-head,.prow{grid-template-columns:minmax(180px,2fr) minmax(120px,1.3fr) 100px 110px 120px}.plist-head>:nth-child(4),.prow-price{display:none}.today-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.9fr);gap:28px}.pulse-text .pulse-sep:last-of-type,.pulse-rate{display:none}}@media (width<=900px){.project-grid,.today-grid{grid-template-columns:minmax(0,1fr)}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){body{font-size:15px}h1{font-size:26px}.hide-mobile{display:none}.hide-desktop{display:inline-flex}.page-header{margin-bottom:18px}.page-header-row{flex-wrap:wrap}.page-actions{justify-content:flex-start}.btn{height:36px}.btn-lg{height:44px}.input{height:42px;font-size:16px}.input-sm,.filter-task .select{height:36px;font-size:16px}.input-quiet{height:40px}.textarea{font-size:16px}.icon-btn{width:40px;height:40px}.seg>button{height:34px}.timer-btn-sm{width:34px;height:34px}.timer-btn-md{width:40px;height:40px}.timer-btn-lg{width:52px;height:52px}.today-head{align-items:flex-start}.today-total{flex-direction:column;align-items:flex-end;gap:0}.nowcard{padding:16px}.nowcard-clock{font-size:36px}.crow{padding:10px 0}.board-head-row{gap:8px}.pulse{flex-wrap:wrap;gap:6px 10px;width:calc(100% + 20px);margin-left:-10px;padding:6px 10px}.pulse-bars{order:3;width:100%}.pulse .pace{margin-left:auto}.switcher-select{font-size:22px}.plist-head{display:none}.prow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name pace""bars bars""tracked rate";gap:10px 12px;padding:14px 4px}.prow-name{grid-area:name}.prow-pace{grid-area:pace}.prow-bars{grid-area:bars}.prow-tracked{grid-area:tracked;text-align:left!important}.prow-rate{grid-area:rate}.prow-price{display:none}.project-head{flex-wrap:wrap}.project-head .page-actions{width:100%}.econ{margin-left:-4px;margin-right:-4px;padding:16px}.econ-head{flex-direction:column;gap:8px}.econ-bar-row{grid-template-columns:1fr auto;grid-template-areas:"label value""track track";gap:6px 10px}.econ-bar-label{grid-area:label}.econ-track{grid-area:track}.econ-bar-value{grid-area:value}.econ-foot{padding-left:0}.entry{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main dur""range range";gap:2px 12px;padding:11px 8px}.entry-main{grid-area:main}.entry-dur{grid-area:dur}.entry-range{color:var(--text-3);grid-area:range;font-size:12.5px}.entry-chev{display:none}.filters>.select,.filter-task,.filter-task .select{width:100%;max-width:none}.filters .seg{width:100%}.filters .seg>button{flex:1}.client{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main stats""projects projects";gap:10px}.client-main{grid-area:main}.client-projects{grid-area:projects;padding-left:44px}.client-stats{grid-area:stats}.setting{flex-wrap:wrap;gap:10px}.setting-input,.setting .seg{width:100%}.setting .seg>button{flex:1;justify-content:center}.props{grid-template-columns:1fr}.prop{flex-direction:row;align-items:center}.prop-label{flex:none;width:88px;padding-left:0}.prop .input,.prop .mini-seg{flex:1}.mini-seg button{flex:1;height:38px}.status-seg-item{flex-direction:column;gap:2px;height:40px;font-size:11.5px}.entry-mini{grid-template-columns:52px 1fr auto;min-height:44px}.entry-mini-note{display:none}.entry-times{grid-template-columns:1fr 1fr}.entry-times>:first-child{grid-column:1/-1}.grid-2{grid-template-columns:1fr}.task-title-input{font-size:21px}.form-actions .btn{height:44px;padding:0 16px}.dialog-root{padding:12px 12px calc(12px + var(--safe-b));align-items:end}.dialog-actions .btn{flex:1;height:44px}}@media (width>=768px){.hide-desktop{display:none!important}}@media (hover:none){.nav-kbd,kbd{display:none!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}h1{letter-spacing:-.045em;overflow-wrap:anywhere;font-size:40px;font-weight:700;line-height:1.12}.page{max-width:1240px;padding:36px 40px 64px}.page-header{margin-bottom:28px}.page-sub{margin-top:8px;font-size:14px}.section-title{letter-spacing:-.015em;font-size:15px;font-weight:650}.section-head{margin-bottom:16px}.btn{height:38px;padding-inline:14px;font-weight:620}.btn-lg{height:46px;padding-inline:20px}.btn-sm{height:32px;padding-inline:10px}.btn-primary,.btn-stop{border:1px solid #0000}.btn-primary:hover:not(:disabled),.btn-stop:hover:not(:disabled){box-shadow:0 3px 12px #17201a12}.btn-secondary{border-color:var(--border-strong)}.btn-danger{color:var(--danger-text)}input,select,textarea{border-radius:var(--r)}.icon-btn{border-radius:var(--r);width:36px;height:36px}.sidebar{gap:22px;padding:24px 12px 16px}.sidebar-brand{padding-inline:10px}.brand-name{letter-spacing:-.03em;font-size:16px;font-weight:700}.brand-ws{margin-top:5px}.nav{gap:5px}.nav-link{height:42px;padding-inline:12px}.nav-link.active{background:var(--text);color:var(--bg);box-shadow:none}.sidebar .now,.sidebar .now-rail{margin-top:auto}.sidebar-foot{margin-top:0}.sidebar .now{border-color:var(--border);background:0 0;padding:12px}.sidebar .now.is-running{background:var(--surface);border-color:var(--accent-line)}.sidebar .now-label{font-size:10px}.sidebar .now-clock{font-size:20px}.sidebar .now-resume-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.sidebar .now-resume kbd{display:none}.is-rail .nav-link{height:44px}.tabbar{padding:5px 8px calc(5px + var(--safe-b));gap:4px}.tab{border-radius:12px;gap:4px;font-size:11px}.tab.active{background:var(--sunken);color:var(--text)}.dock{background:var(--hero-bg);color:var(--hero-text);border:1px solid var(--hero-border)}.dock-clock,.dock-pulse{color:var(--action)}.dock-pulse{background:var(--action)}.dock-project{color:var(--hero-muted);opacity:1}.dock-stop{background:var(--action);color:var(--action-text)}.panel-head{border-bottom:1px solid var(--divider);padding:20px 16px 16px 24px}.panel-title{letter-spacing:-.025em;font-size:18px}.panel-body{padding:20px 24px 24px}.form{gap:20px}.field-label{font-size:12px;font-weight:650}.form-actions{border-top:1px solid var(--divider);padding-top:16px}.panel-body>.form>.form-actions{z-index:2;background:var(--surface);margin:4px -24px -24px;padding:16px 24px;position:sticky;bottom:-24px}.empty{border-radius:var(--r-xl)}.today-head{align-items:center}.today-total{flex-direction:column;align-items:flex-end;gap:0}.today-total-value{letter-spacing:-.04em;font-size:32px;font-weight:700}.today-total-label{font-size:12px}.today-grid{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:28px}.today-focus,.today-risk,.today-continue,.today-week{min-width:0}.today-focus{grid-area:1/1;height:100%}.today-risk{grid-area:1/2}.today-continue{grid-area:2/1}.today-week{grid-area:2/2}.nowcard{background:var(--hero-bg);height:100%;min-height:262px;color:var(--hero-text);border-color:var(--hero-border);gap:16px;margin:0;padding:24px}.nowcard .now-label{color:var(--hero-muted);letter-spacing:.08em;font-size:11px}.nowcard .now-dot{background:var(--action)}.nowcard.is-idle .now-dot{background:var(--hero-muted);animation:none}.nowcard-project{color:var(--hero-muted);font-size:12px}.nowcard-project:hover{color:var(--hero-text)}.nowcard-title{letter-spacing:-.035em;overflow-wrap:anywhere;font-size:26px;font-weight:650}.nowcard-title:hover{text-decoration:underline;-webkit-text-decoration-color:var(--hero-border);text-decoration-color:var(--hero-border);text-underline-offset:5px}.nowcard-row{margin-top:auto}.nowcard-clock{font-family:var(--font-display);letter-spacing:-.04em;color:var(--action);font-size:54px;font-weight:650}.nowcard-ready{color:var(--hero-muted);font-size:14px}.nowcard-foot{color:var(--hero-muted);border-top:1px solid var(--hero-border);padding-top:12px}.riskcard{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);flex-direction:column;gap:17px;height:100%;min-height:262px;padding:24px;display:flex}.riskcard.is-warning{border-color:var(--warn-line);background:var(--warn-soft)}.riskcard-label{letter-spacing:.07em;text-transform:uppercase;color:var(--text-2);justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:650;display:flex}.is-warning .riskcard-label{color:var(--warn)}.riskcard-title{letter-spacing:-.03em;overflow-wrap:anywhere;min-width:0;font-size:21px;font-weight:650;line-height:1.25}.riskcard-values{grid-template-columns:1fr 1fr;gap:16px;display:grid}.riskcard-value{color:var(--text-2);flex-direction:column;gap:4px;font-size:12px;display:flex}.riskcard-value strong{color:var(--text);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:36px;font-weight:700;line-height:1}.riskcard.is-warning .riskcard-value:first-child strong{color:var(--warn)}.riskcard-value:last-child strong{color:var(--accent-text)}.riskcard-foot{border-top:1px solid var(--border);color:var(--text-2);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:12px;font-size:12px;display:flex}.riskcard.is-warning .riskcard-foot{border-color:var(--warn-line)}.riskcard:hover{box-shadow:0 4px 18px #17201a0a}.today-continue>.section,.today-week{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);padding:24px}.crow{grid-template-columns:36px minmax(0,1fr) auto;gap:10px;padding:16px 0;display:grid}.crow-title{white-space:normal;overflow-wrap:anywhere;font-size:14px;line-height:1.35}.crow-sub{white-space:normal;overflow-wrap:anywhere;color:var(--text-2);flex-wrap:wrap;gap:4px;margin-top:3px;font-size:12px}.crow-time{flex-direction:column;align-items:flex-end;gap:3px;font-size:13px;display:flex}.crow-time .muted{font-size:11px}.clist{border-top:0}.clist .crow:first-child{padding-top:0}.clist .crow:last-child{border-bottom:0;padding-bottom:0}.week{gap:8px;height:140px}.week-bar-wrap{background:var(--sunken);border-radius:8px}.week-bar{background:var(--text-2);border-radius:6px 6px 0 0}.today-projects{border-top:1px solid var(--divider);margin-top:28px;padding-top:24px}.arow{margin:0;padding:12px 0}.arow-name{white-space:normal;overflow-wrap:anywhere;font-size:13px}.arow-top{flex-wrap:wrap}@media (width<=1099px){.page{padding-inline:28px}h1{font-size:36px}.today-grid{gap:20px}.nowcard,.riskcard,.today-continue>.section,.today-week{padding:20px}.nowcard-top{flex-wrap:wrap}.nowcard-clock{font-size:44px}}@media (width<=767px){h1{font-size:34px}.is-mobile .page{padding-top:max(24px, var(--safe-t))}.page-header{margin-bottom:24px}.page-sub{font-size:13px}.btn,.btn-sm,.icon-btn{height:44px;min-height:44px}.icon-btn{width:44px}.is-sheet .panel-head{padding:8px 12px 16px 20px}.is-sheet .panel-body{padding:20px}.is-sheet .panel-body>.form>.form-actions{margin:4px -20px -20px;padding:16px 20px;bottom:-20px}.today-head{align-items:flex-start;gap:12px}.today-head h1{font-size:30px}.today-total-value{white-space:nowrap;font-size:24px}.today-total-label{font-size:11px}.today-grid{flex-direction:column;gap:20px;display:flex}.today-grid>*{width:100%}.nowcard,.riskcard{min-height:0;padding:20px}.nowcard-title{font-size:23px}.nowcard-clock{font-size:44px}.nowcard-row{flex-wrap:wrap;margin-top:8px}.riskcard-values{gap:16px}.riskcard-value strong{font-size:34px}.today-continue>.section,.today-week{padding:20px}.crow{grid-template-columns:44px minmax(0,1fr);gap:2px 12px;padding-block:16px}.crow .timer-btn{grid-row:span 2;width:44px;height:44px}.crow-time{flex-direction:row;grid-column:2;align-items:center;gap:6px;margin-top:6px}.crow-main{min-height:44px}.crow-sub .dot-sep{display:none}.crow-sub{column-gap:6px}.crow-sub-project{flex-basis:100%;align-items:center;gap:5px;display:flex}.arow{min-height:44px}}@media (width<=359px){.today-head h1{font-size:26px}.today-total-value{font-size:21px}.nowcard-top{gap:8px}.nowcard,.riskcard,.today-continue>.section,.today-week{padding:16px}.riskcard-title{font-size:20px}.nowcard-clock{font-size:38px}.nowcard-row .btn{padding-inline:14px}}.page-projects .project-list-caption{color:var(--text-2);justify-content:space-between;gap:16px;margin:4px 0 18px;font-size:12px;display:flex}.page-projects .project-list-caption>:last-child{align-items:center;gap:7px;display:inline-flex}.page-projects .project-list-caption>:last-child:before{content:"";background:var(--text-2);border-radius:50%;width:5px;height:5px}.page-projects .plist-head,.page-projects .prow{grid-template-columns:minmax(180px,1.75fr) minmax(150px,1.2fr) minmax(90px,.7fr) minmax(85px,.65fr) minmax(135px,1fr);grid-template-areas:none;gap:20px}.page-projects .plist-head{color:var(--text-2);padding:0 14px 12px;font-size:11px}.page-projects .prow{border-radius:var(--r-lg);border-bottom-color:var(--border);min-height:114px;padding:20px 14px}.page-projects .prow:hover{background:var(--surface)}.page-projects .prow-name{align-items:flex-start;gap:12px}.page-projects .prow-titles{gap:4px}.page-projects .prow-title{letter-spacing:-.3px;white-space:normal;overflow-wrap:anywhere;font-size:16px;line-height:1.35}.page-projects .prow-sub{color:var(--text-2);white-space:normal;overflow-wrap:anywhere;font-size:12px}.page-projects .prow-pace{margin-top:4px}.page-projects .prow-pace .pace{font-size:11px}.page-projects .prow-history{color:var(--text-2);font-size:11px}.page-projects .prow-bars{gap:12px}.page-projects .prow-meter-row{flex-direction:column;gap:6px;display:flex}.page-projects .prow-meter-label{color:var(--text-2);font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;font-size:11px;display:flex}.page-projects .prow-meter-label strong{color:var(--text);font-size:inherit;font-weight:550}.page-projects .prow-meter{background:var(--sunken);border-radius:8px;height:6px;display:block;overflow:hidden}.page-projects .prow-meter>span{border-radius:inherit;height:100%;display:block}.page-projects .prow-work-fill{background:var(--work,var(--accent))}.page-projects .prow-time-fill{background:var(--text-2)}.page-projects .prow-time-fill.tone-warn{background:var(--warn)}.page-projects .prow-time-fill.tone-danger{background:var(--danger)}.page-projects .prow-tracked,.page-projects .prow-price,.page-projects .prow-rate{white-space:normal;flex-direction:column;gap:5px;min-width:0;display:flex}.page-projects .prow-tracked strong,.page-projects .prow-price strong{font-size:16px;font-weight:550}.page-projects .prow-rate strong{letter-spacing:-.6px;overflow-wrap:anywhere;font-size:21px;font-weight:550}.page-projects .prow-value-sub{color:var(--text-2);font-size:11px;line-height:1.4}.page-projects .prow-mobile-label{display:none}.page-project .crumbs{overflow-wrap:anywhere;flex-wrap:wrap}.page-project .project-head{align-items:flex-start;gap:16px;margin-bottom:28px}.page-project .project-head-titles h1{letter-spacing:-1.3px;overflow-wrap:anywhere;font-size:clamp(30px,2.8vw,40px);line-height:1.1}.page-project .project-head .project-mark{margin-top:3px}.page-project .project-head .page-sub{flex-wrap:wrap;gap:5px;margin-top:12px;display:flex}.page-project .project-head .page-actions{flex:none;margin-top:2px}.page-project .project-economics{border-radius:var(--r-xl);gap:28px;margin:0 0 32px;padding:28px}.page-project .econ-risk{border-color:var(--warn-line);background:color-mix(in srgb, var(--warn-soft) 24%, var(--surface))}.page-project .econ-risk-danger{border-color:var(--danger-line);background:color-mix(in srgb, var(--danger-soft) 20%, var(--surface))}.page-project .econ-head{justify-content:space-between;gap:24px}.page-project .econ-intro{min-width:0}.page-project .econ-intro>.pace{font-size:11px}.page-project .econ-eyebrow{color:var(--text-2);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.page-project .econ-intro h2{letter-spacing:-.7px;margin:12px 0 8px;font-size:clamp(22px,2.1vw,28px);font-weight:550;line-height:1.2}.page-project .econ-sentence{color:var(--text-2);font-size:13px;line-height:1.5}.page-project .econ-gap{border-radius:var(--r-lg);background:var(--warn-soft);color:var(--warn);letter-spacing:-.5px;font-variant-numeric:tabular-nums;flex-direction:column;flex:none;gap:4px;padding:13px 16px;font-size:21px;display:flex}.page-project .econ-gap span{letter-spacing:0;font-size:10px}.page-project .econ-risk-danger .econ-gap{background:var(--danger-soft);color:var(--danger)}.page-project .econ-bars{gap:20px}.page-project .econ-bar-row{flex-direction:column;align-items:stretch;gap:10px;display:flex}.page-project .econ-bar-heading{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.page-project .econ-bar-label{color:var(--text);flex-wrap:wrap;align-items:baseline;gap:7px 12px;font-size:13px;display:flex}.page-project .econ-bar-label span{color:var(--text-2);font-size:12px;font-weight:400}.page-project .econ-percentage{font-variant-numeric:tabular-nums;letter-spacing:-.8px;flex:none;font-size:28px;font-weight:550;line-height:1}.page-project .econ-track{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:8px;height:13px}.page-project .econ-main-metrics{border-top:1px solid var(--border);grid-template-columns:1.2fr 1fr 1fr;gap:22px;padding-top:24px;display:grid}.page-project .econ-main-metrics .stat-label{color:var(--text-2);font-size:12px}.page-project .econ-main-metrics .stat-value{letter-spacing:-1.4px;overflow-wrap:anywhere;font-size:clamp(28px,3vw,38px);font-weight:550;line-height:1.15}.page-project .econ-main-metrics>:first-child .stat-value{font-size:clamp(32px,3.5vw,44px)}.page-project .econ-completed .econ-main-metrics>:first-child .stat-value{color:var(--accent-text)}.page-project .econ-main-metrics .stat-sub,.page-project .econ-support-metrics .stat-sub{color:var(--text-2);margin-top:5px;font-size:11px}.page-project .econ-support-metrics{grid-template-columns:1.2fr 1fr 1fr;gap:22px;display:grid}.page-project .econ-support-metrics .stat-label{color:var(--text-2);font-size:11px}.page-project .econ-support-metrics .stat-value{letter-spacing:-.4px;font-size:19px;font-weight:550}.page-project .econ-task-link{min-height:44px;color:var(--text-2);justify-content:flex-end;align-self:center;align-items:center;gap:10px;font-size:12px;display:inline-flex}.page-project .econ-task-link:hover{color:var(--text)}.page-project .econ-details{border-top:1px solid var(--border);color:var(--text-2);margin-top:-6px;padding-top:6px;font-size:12px;line-height:1.6}.page-project .econ-details summary{cursor:pointer;min-height:44px;padding:10px 0}.page-project .econ-details p{max-width:80ch;margin:8px 0}.page-project .project-grid{gap:32px}.page-project .project-tracked-tasks{scroll-margin-top:24px}.page-project .section-title{letter-spacing:-.3px;font-size:16px}.page-project .section-head{flex-wrap:wrap;gap:12px;margin-bottom:14px}.page-project .tt-row{align-items:flex-start;padding:14px 0}.page-project .tt-row .timer-btn{width:44px;height:44px}.page-project .tt-main{gap:5px;min-height:44px}.page-project .tt-title{white-space:normal;overflow-wrap:anywhere;align-items:flex-start;font-size:14px;line-height:1.35}.page-project .tt-title .status-icon{flex:none;margin-top:3px}.page-project .tt-task-meta{color:var(--text-2);font-size:11px;line-height:1.4}.page-project .tt-track{margin-top:3px}.page-project .tt-value{flex-direction:column;gap:4px;min-width:76px;font-size:13px;line-height:1.35;display:flex}.page-project .tt-value strong{font-weight:550}.page-project .tt-value .muted{font-size:11px}.page-project .mini-stats .stat-value{letter-spacing:-.7px;font-size:23px}.page-project .spark{gap:5px;height:112px}.project-form{gap:20px}.project-form .field{min-width:0;scroll-margin-bottom:110px}.project-form .project-budget-fields{background:var(--surface-2);gap:16px;padding:18px}.project-form .project-budget-fields legend{color:var(--text);font-size:13px}.project-form .project-budget-fields .grid-price .input{font-variant-numeric:tabular-nums;font-size:18px}.project-form .project-budget-fields .seg>button{flex:1;min-height:44px;padding:0 8px;font-size:12px}.project-form .project-budget-preview{border-radius:var(--r-lg);background:var(--hero-bg);color:var(--hero-text);flex-direction:column;align-items:flex-start;gap:8px;padding:20px;display:flex}.project-form .project-preview-label{color:var(--hero-muted);font-size:11px}.project-form .project-preview-value{letter-spacing:-1.5px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;max-width:100%;font-size:40px;font-weight:550;line-height:1.1}.project-form .project-preview-value>span{color:var(--hero-muted);letter-spacing:-.5px;margin-left:4px;font-size:19px}.project-form .project-preview-equation{color:var(--hero-muted);font-size:12px;line-height:1.5}.project-form .project-preview-note{color:var(--hero-muted);font-size:10px}.project-form .budget-explain{color:var(--text-2);font-size:11px;line-height:1.5}.project-form .project-form-section-title{letter-spacing:-.1px;margin-top:4px;margin-bottom:-8px;font-size:13px;font-weight:550}.project-form .project-form-actions{z-index:3;background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -12px 20px -20px var(--text);margin:8px -20px -24px;padding:16px 20px 24px;position:sticky;bottom:-24px}.project-form .project-form-actions .btn{min-height:44px}@media (width<=1150px) and (width>=768px){.page-projects .plist-head{display:none}.page-projects .prow{grid-template-columns:minmax(160px,1.25fr) minmax(150px,1fr) minmax(120px,.8fr);grid-template-areas:"name bars rate""name tracked price";gap:14px 20px;padding:20px 14px}.page-projects .prow-name{grid-area:name}.page-projects .prow-bars{grid-area:bars}.page-projects .prow-tracked{grid-area:tracked}.page-projects .prow-price{grid-area:price}.page-projects .prow-rate{grid-area:rate}.page-projects .prow-tracked{text-align:left}.page-projects .prow-mobile-label{color:var(--text-2);font-size:10px;display:block}.page-project .project-head{flex-wrap:wrap}.page-project .project-head .page-actions{margin-left:56px}}@media (width<=900px){.page-project .project-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=767px){.page-projects .project-list-caption{margin-bottom:14px;font-size:11px}.page-projects .plist{gap:14px}.page-projects .plist-head{display:none}.page-projects .prow{border:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"name name""bars bars""tracked price""rate rate";gap:18px 12px;padding:20px}.page-projects .prow-name{grid-area:name}.page-projects .prow-bars{grid-area:bars}.page-projects .prow-tracked{grid-area:tracked}.page-projects .prow-price{grid-area:price;display:flex}.page-projects .prow-rate{grid-area:rate}.page-projects .prow-title{font-size:18px}.page-projects .prow-sub{font-size:12px}.page-projects .prow .num{text-align:left}.page-projects .prow-rate{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 10px;padding-top:14px;display:grid}.page-projects .prow-rate .prow-value-sub{grid-column:1/-1}.page-projects .prow-rate strong{text-align:right;font-size:25px}.page-projects .prow-mobile-label{color:var(--text-2);font-size:11px;display:block}.page-project .project-head{gap:12px}.page-project .project-head-titles h1{letter-spacing:-1px;font-size:30px}.page-project .project-head .page-actions{gap:8px;margin-top:6px}.page-project .project-economics{gap:24px;margin-left:0;margin-right:0;padding:20px}.page-project .econ-head{gap:14px}.page-project .econ-gap{flex-direction:row;align-items:center;gap:8px;padding:9px 12px;font-size:16px}.page-project .econ-intro h2{font-size:24px}.page-project .econ-bar-label{flex-direction:column;gap:3px}.page-project .econ-percentage{font-size:27px}.page-project .econ-main-metrics,.page-project .econ-support-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.page-project .econ-main-metrics>:first-child{grid-column:1/-1}.page-project .econ-main-metrics>:first-child .stat-value{font-size:44px}.page-project .econ-main-metrics .stat-value{letter-spacing:-1px;font-size:29px}.page-project .econ-task-link{grid-column:1/-1;justify-content:flex-start;min-height:44px;margin:-2px 0 -10px}.page-project .tt-row{grid-template-columns:44px minmax(0,1fr);gap:5px 10px;display:grid}.page-project .tt-row .timer-btn{grid-row:1/3}.page-project .tt-main{grid-column:2}.page-project .tt-title{font-size:15px}.page-project .tt-value{text-align:left;flex-direction:row;grid-column:2;align-items:baseline;gap:8px;padding-top:5px}.page-project .mini-stats .stat-value{font-size:21px}.project-form .project-budget-fields{padding:14px}.project-form .project-budget-preview{padding:18px}.project-form .project-preview-value{font-size:36px}.project-form .project-form-actions{padding:14px 16px calc(20px + var(--safe-b));margin:8px -16px -20px;bottom:-20px}.project-form .project-form-actions .spacer{display:none}.project-form .project-form-actions .btn{flex:1;padding-inline:12px}}@media (width<=359px){.page-projects .prow,.page-project .project-economics{padding:16px}.page-project .econ-main-metrics .stat-value{font-size:25px}.page-project .econ-main-metrics>:first-child .stat-value{font-size:39px}.page-project .econ-percentage{font-size:24px}.project-form .project-budget-fields .grid-price{grid-template-columns:minmax(0,1fr) 88px;gap:8px}.project-form .project-budget-fields .seg>button{font-size:11px}}.page-board{gap:8px;padding:30px 28px}.board-head{margin-bottom:14px}.board-head h1{margin-bottom:18px}.board-head-row{gap:14px 24px}.page-board .switcher{border:1px solid var(--border);background:var(--surface);border-radius:12px;max-width:100%;min-height:44px;margin-left:0}.page-board .switcher-select{min-width:0;font-size:15px}.page-board .pulse{background:0 0;padding:8px 0}.board{grid-template-columns:repeat(4,minmax(205px,1fr));gap:16px}.column{background:color-mix(in srgb, var(--surface-2) 48%, transparent);border-radius:14px;max-height:calc(100dvh - 195px)}.column.is-over{background:color-mix(in srgb, var(--action) 7%, var(--surface-2));box-shadow:inset 0 0 0 1px var(--border-strong)}.column-head{gap:9px;padding:14px 10px 15px}.column-head h2{font-size:14px;font-weight:600}.column-count{background:var(--surface-2);border-radius:8px;place-items:center;min-width:25px;height:25px;margin-left:auto;font-size:12px;display:grid}.column-body{gap:10px;padding:0 6px 10px}.column-empty{text-align:left;border:0;padding:16px 8px;line-height:1.6}.page-board .card{box-shadow:none;border-color:var(--border);border-radius:14px;gap:11px;padding:15px 13px}.page-board .card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card)}.page-board .card.is-running{background:var(--surface);border-color:color-mix(in srgb, var(--action) 40%, var(--border))}.page-board .card.is-running:before{background:var(--action);width:3px;top:14px;bottom:14px}.card.is-overlay{transform:none}.page-board .card.is-overlay{box-shadow:var(--shadow-drag)}.page-board .card-title{font-size:15px;font-weight:580;line-height:1.45}.card-project{font-size:12px;line-height:1.5}.card-project>span:last-child{text-overflow:ellipsis;overflow:hidden}.card-time-row{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.card-time-row:empty{display:none}.page-board .card-time{font-size:14px;font-weight:580}.page-board .card-time.is-live{color:var(--text)}.page-board .card-time.is-over{color:var(--danger)}.page-board .card-est{color:var(--text-3);font-size:12px;font-weight:400}.card-running{color:var(--text-2);align-items:center;gap:5px;font-size:11px;display:inline-flex}.card-running>span{background:var(--work);border-radius:50%;width:5px;height:5px}.page-board .card-meta{gap:5px 8px;padding-top:2px}.page-board .card-tag{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;overflow:hidden}.card-tag-extra{color:var(--text-3);font-size:11px}.page-board .quick-add-trigger{height:auto;min-height:44px;color:var(--text-2);padding:10px 12px}.page-board .quick-add-trigger.is-big{background:var(--primary);color:var(--primary-text);border:1px solid var(--border);border-radius:12px;justify-content:center;margin-bottom:4px}.quick-add{border-color:var(--border-strong);box-shadow:none;gap:8px;padding:10px}.quick-add .input{height:44px;min-height:44px;padding:0 5px}.quick-add .quick-add-project{height:44px}.quick-add-hint{color:var(--text-3);padding:0 5px;font-size:11px}.quick-add-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.quick-add-actions .btn{min-height:40px;padding:0 10px}.mtabs{border-bottom:0;gap:4px;padding:6px 10px}.mtab{height:60px;color:var(--text-2);white-space:normal;border-radius:11px;flex-direction:column;gap:5px;padding:6px 3px}.mtab-label{font-size:12px;line-height:1.2;overflow:visible}.mtab.is-on{background:var(--text);color:var(--bg)}.mtab-count{background:var(--surface-2);min-width:19px;height:19px}.mtab.is-on .mtab-count{color:var(--action-text);background:var(--action)}.mtabs-ink{display:none}.mpane{gap:12px;min-width:0;padding-top:14px}.mlist{gap:12px}.task-detail{gap:24px}.task-title-input{letter-spacing:-.035em;font-size:28px;font-weight:620;line-height:1.25}.task-detail .status-seg{background:var(--surface-2);border-radius:12px;gap:4px;padding:4px}.task-detail .status-seg-item{flex-direction:row;gap:5px;height:auto;min-height:44px;padding:8px 4px;font-size:12px}.task-detail .status-seg-item.is-on{background:var(--text);color:var(--bg);box-shadow:none}.task-detail .status-seg-item.is-on .status-icon{color:inherit}.task-detail .status-seg-item:hover kbd{display:none}.task-detail .task-timer{background:var(--hero-bg);border:1px solid var(--hero-border);color:var(--hero-text);border-radius:18px;padding:22px;display:block}.task-timer-heading{letter-spacing:.08em;text-transform:uppercase;color:var(--hero-muted);align-items:center;gap:8px;margin-bottom:18px;font-size:11px;display:flex}.task-timer-dot{background:var(--hero-muted);border-radius:50%;width:6px;height:6px}.task-timer.is-running .task-timer-dot{background:var(--action)}.task-timer-row{align-items:center;gap:14px;display:flex}.task-detail .task-timer-clock{font-family:var(--mono);color:var(--hero-text);letter-spacing:-.06em;font-size:clamp(32px,3.6vw,46px);font-weight:550}.task-detail .task-timer-total{color:var(--hero-text);letter-spacing:-.045em;font-size:38px;line-height:1.1}.task-detail .task-timer-sub{color:var(--hero-muted);margin-top:7px;font-size:12px;line-height:1.45}.task-detail .task-timer .timer-btn{background:var(--action);width:auto;height:48px;color:var(--action-text);border:0;border-radius:11px;flex:none;gap:8px;padding:0 15px;display:flex}.task-detail .task-timer .timer-btn:after{content:attr(data-label);font-size:14px;font-weight:650}.task-timer-footer{border-top:1px solid var(--hero-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:15px;display:flex}.task-detail .running-start{color:var(--hero-muted);gap:8px;margin:0}.task-detail .running-start .chip-btn{color:var(--hero-text);background:var(--hero-border);min-height:32px;padding:0 8px}.task-timer-footer .task-timer-sub{margin:0}.task-detail .est-meter{flex-direction:column;align-items:stretch;gap:8px;margin-top:-10px}.task-detail .est-track{border-radius:6px;flex:none;height:6px}.task-detail .est-label{white-space:normal}.task-detail .props{background:var(--surface-2);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;padding:16px 12px}.task-detail .prop-label{font-size:11px}.task-detail .prop .input{background:var(--surface);width:100%;min-width:0;font-size:13px}.task-detail .mini-seg{align-self:start;min-height:38px}.task-detail .task-notes{gap:10px}.task-notes .field-label,.task-entries h3{color:var(--text);font-size:15px;font-weight:600}.task-notes .textarea{background:var(--surface-2);border-color:#0000;height:auto;min-height:112px;padding:14px;line-height:1.65}.task-entries{padding-top:20px}.task-history{margin-top:8px}.task-history summary{cursor:pointer;min-height:48px;color:var(--text-2);align-items:center;gap:10px;padding:8px 0;font-size:13px;list-style:none;display:flex}.task-history summary::-webkit-details-marker{display:none}.task-history summary>svg{transition:transform var(--t-fast) var(--ease)}.task-history[open] summary>svg{transform:rotate(180deg)}.task-history-count{color:var(--text-3);margin-left:auto;font-size:12px}.task-history .entry-mini{border-radius:10px;grid-template-columns:53px auto 1fr auto;gap:8px;min-height:48px;font-size:12px}.task-history .entry-mini-dur{font-size:13px}.task-detail .task-actions{flex-wrap:wrap;gap:8px}.task-detail .task-meta{text-align:right}.entry-form{gap:18px}.entry-duration-preview{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.entry-duration-preview>span{color:var(--text-2);font-size:12px}.entry-duration-preview>strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--text);font-size:32px;font-weight:600}.entry-form .entry-times{align-items:start;gap:10px}.entry-form .entry-times .field{min-width:0}.entry-form .entry-times .input{width:100%;min-width:0;padding-left:10px;padding-right:8px;font-size:13px}.entry-timezone{overflow-wrap:anywhere;font-size:11px;line-height:1.5}.entry-issues{flex-direction:column;gap:8px;display:flex}.entry-issues:empty{display:none}.entry-issues .form-error,.entry-issues .form-warning{border-radius:10px;padding:12px;line-height:1.5}.entry-issues .form-error{background:var(--danger-soft)}.entry-issues .form-warning{background:var(--warn-soft)}.task-detail .inline-editor{background:var(--surface-2);padding:14px}.panel-body .inline-editor .form-actions{box-shadow:none;background:0 0;border:0;margin:0;padding:10px 0 0;position:static}@media (width<=1100px){.page-board{padding-left:22px;padding-right:22px}.board{gap:10px}}@media (width<=767px){.task-detail .input,.task-detail .prop .input,.entry-form .input,.entry-form .entry-times .input,.page-board .quick-add .input,.page-board .switcher-select{font-size:16px}}@media (width<=600px){.is-mobile .page-board{padding-top:24px}.is-mobile .board-head{margin-bottom:10px;padding:0 16px}.board-head h1{margin-bottom:14px}.page-board .switcher,.page-board .switcher-select{width:100%}.page-board .pulse{gap:8px;width:100%;margin:0;font-size:12px}.page-board .card-title{-webkit-line-clamp:2;font-size:16px}.page-board .card{padding:16px}.page-board .card .timer-btn{width:44px;height:44px;margin-top:-3px}.card-time-row{gap:8px 12px}.page-board .card-time{font-size:15px}.quick-add-actions .btn{min-height:44px}.task-detail{gap:22px}.task-title-input{font-size:26px}.task-detail .status-seg{grid-template-columns:repeat(2,minmax(0,1fr))}.task-detail .status-seg-item{font-size:13px}.task-detail .task-timer{padding:18px}.task-detail .task-timer-clock{font-size:36px}.task-detail .task-timer-total{font-size:34px}.task-detail .task-timer .timer-btn{padding:0 12px}.task-detail .running-start .chip-btn,.task-detail .prop .input{min-height:44px}.task-detail .prop{flex-direction:column;align-items:stretch;gap:5px}.task-detail .prop-label{width:auto}.task-detail .mini-seg{width:100%}.task-detail .mini-seg>button{flex:1;min-width:0;min-height:44px}.task-entries .section-head .btn{min-height:44px}.task-history .entry-mini{grid-template-columns:1fr auto;gap:4px 10px;padding:10px 8px}.task-history .entry-mini-range{grid-area:2/1}.task-history .entry-mini-dur{grid-area:1/2/3}.task-history .entry-mini-note{white-space:normal;grid-column:1/-1;display:block}.task-detail .task-meta{width:100%}.entry-form .entry-times{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-form .entry-times>.field:first-child{grid-column:1/-1}.entry-duration-preview{padding:16px}.entry-duration-preview>strong{font-size:30px}}@media (width<=359px){.task-detail .task-timer-row{flex-wrap:wrap}.task-detail .task-timer-main{flex-basis:100%}.task-detail .task-timer .timer-btn{justify-content:center;width:100%}.task-detail .props{grid-template-columns:minmax(0,1fr)}.panel-body .inline-editor .form-actions{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.task-history summary>svg{transition:none}}.page-time .btn,.page-clients .btn,.page-settings .btn,.support-client-form .btn{height:auto;min-height:44px;padding-top:10px;padding-bottom:10px}.page-time .time-summary{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:20px;padding:26px 28px;display:flex}.page-time .time-summary-label,.page-time .time-summary-caption{color:var(--text-2);font-size:13px;display:block}.page-time .time-summary-label{font-weight:600}.page-time .time-summary-total{font-family:var(--font-display);letter-spacing:-.05em;overflow-wrap:anywhere;margin:7px 0;font-size:clamp(34px,4vw,52px);font-weight:550;line-height:1.1;display:block}.page-time .time-summary-caption{overflow-wrap:anywhere}.page-time .time-summary-meta{text-align:right;color:var(--text-2);flex:none;gap:8px;font-size:13px;display:grid}.page-time .time-summary-meta span{justify-content:flex-end;align-items:center;gap:6px;display:flex}.page-time .time-summary-meta strong{color:var(--text);font-size:18px;font-weight:550}.page-time .time-toolbar{gap:10px;margin-bottom:28px}.page-time .time-toolbar .seg{flex:1;min-width:0;padding:3px}.page-time .time-toolbar .seg>button{flex:1;justify-content:center;height:auto;min-height:44px}.page-time .time-toolbar>.select,.page-time .time-toolbar .filter-task{width:220px;min-width:0;max-width:100%}.page-time .time-toolbar .input{height:48px;font-size:13px}.page-time .time-toolbar .filter-task .select{width:100%;max-width:100%;height:48px;font-size:13px}.page-time .time-section-title{margin-bottom:14px;font-size:15px;font-weight:600}.page-time .split{border-bottom:1px solid var(--divider);margin-bottom:28px;padding-bottom:24px}.page-time .split-bar{border-radius:6px;height:12px;margin-bottom:12px}.page-time .split-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 24px;display:grid}.page-time .split-legend li{justify-content:space-between;gap:14px;min-width:0}.page-time .split-legend .link-btn{text-align:left;overflow-wrap:anywhere;align-items:center;gap:7px;min-width:0;min-height:44px;display:flex}.page-time .split-legend strong{white-space:nowrap;font-weight:550}.page-time .days{gap:32px}.page-time .day-head{align-items:center;gap:14px;padding:0 0 12px}.page-time .day-head h2{font-size:17px;font-weight:600;line-height:1.4}.page-time .day-count{color:var(--text-2);margin-top:2px;font-size:12px;display:block}.page-time .day-total{white-space:nowrap;letter-spacing:-.03em;font-size:22px;font-weight:550}.page-time .entry{border-radius:var(--r-lg);grid-template-columns:minmax(0,1fr) 168px auto 14px;grid-template-areas:"main range dur chev";gap:18px;width:calc(100% + 24px);min-height:86px;margin:3px -12px;padding:16px 12px}.page-time .entry-main{grid-area:main;gap:5px}.page-time .entry-task{white-space:normal;overflow-wrap:anywhere;font-size:15px;line-height:1.4}.page-time .entry-sub{color:var(--text-2);white-space:normal;overflow-wrap:anywhere;flex-wrap:wrap;gap:4px}.page-time .entry-note{overflow-wrap:anywhere}.page-time .entry-range{grid-area:range;align-self:center;font-size:12px}.page-time .entry-source{font-family:var(--font);color:var(--text-2);margin-top:4px;font-size:11px;display:block}.page-time .entry-dur{grid-area:dur;font-size:16px;font-weight:550}.page-time .entry-chev{grid-area:chev}.page-clients .clients{border:0;gap:14px}.page-clients .client{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);grid-template-columns:minmax(0,1fr) 232px;grid-template-areas:"main stats""projects stats";gap:14px 28px;padding:24px}.page-clients .client-main{grid-area:main;gap:14px;min-height:52px}.page-clients .client-avatar{border-radius:14px;width:52px;height:52px;font-size:19px;font-weight:650}.page-clients .client-name{letter-spacing:-.025em;overflow-wrap:anywhere;font-size:20px;line-height:1.3}.page-clients .client-detail-hint{color:var(--text-2);overflow-wrap:anywhere;margin-top:5px;font-size:12px;display:block}.page-clients .client-projects{grid-area:projects;gap:8px;min-width:0;padding-left:66px}.page-clients .client-projects .chip{border-radius:var(--r);white-space:normal;overflow-wrap:anywhere;max-width:100%;height:auto;min-height:44px;padding:8px 11px}.page-clients .client-projects .project-dot{flex:none}.page-clients .client-stats{text-align:right;grid-area:stats;grid-template-columns:repeat(2,minmax(0,1fr));align-self:center;align-items:start;gap:18px;display:grid}.page-clients .client-stat-label{color:var(--text-2);font-size:11px;font-family:var(--font);margin-bottom:5px;display:block}.page-clients .client-stats strong{letter-spacing:-.035em;overflow-wrap:anywhere;font-size:21px;font-weight:550;line-height:1.3;display:block}.page-clients .client-archive-toggle{align-self:flex-start;min-height:44px}.support-client-form .form-actions{background:var(--surface);border-top:1px solid var(--divider);padding-top:14px;padding-bottom:4px;position:sticky;bottom:0}.support-client-form .swatch{width:44px;height:44px}.page-settings{max-width:960px}.page-settings .settings-section{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);margin-bottom:20px;padding:24px}.page-settings .settings-section-heading{padding-bottom:20px}.page-settings .settings-section h2{letter-spacing:-.02em;color:var(--text);border:0;padding:0;font-size:18px;font-weight:600}.page-settings .settings-section-heading p{color:var(--text-2);margin-top:5px;font-size:13px;line-height:1.5}.page-settings .setting{gap:24px;padding:18px 0}.page-settings .setting:last-child{border-bottom:0;padding-bottom:0}.page-settings .setting-title{font-size:14px;font-weight:550}.page-settings .setting-desc{color:var(--text-2);overflow-wrap:anywhere;font-size:12px;line-height:1.5}.page-settings .setting-text{gap:4px}.page-settings .setting-input{width:260px;min-width:0;max-width:100%;height:44px}.page-settings .setting .link-btn{min-height:44px}.page-settings .theme-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.page-settings .theme-option{border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);padding:10px;display:block;position:relative}.page-settings .theme-option:hover{border-color:var(--border-strong)}.page-settings .theme-option.is-selected{border-color:var(--text);background:var(--surface-2)}.page-settings .theme-option:focus-within{outline:2px solid var(--focus);outline-offset:3px}.page-settings .theme-option input{opacity:0;width:1px;height:1px;position:absolute}.page-settings .theme-preview{--preview-bg:#f5f6f2;--preview-side:#ecefe9;--preview-surface:#fff;--preview-ink:#17201a;border:1px solid var(--border);background:var(--preview-bg);border-radius:6px;grid-template-columns:28% 1fr;height:92px;display:grid;overflow:hidden}.page-settings .theme-preview-dark{--preview-bg:#121615;--preview-side:#0e1210;--preview-surface:#1b211e;--preview-ink:#f0f3ed}.page-settings .theme-preview-system{--preview-bg:linear-gradient(90deg, #f5f6f2 50%, #121615 50%);--preview-side:linear-gradient(90deg, #ecefe9 50%, #0e1210 50%);--preview-surface:linear-gradient(90deg, #fff 50%, #1b211e 50%)}.page-settings .theme-preview-sidebar{background:var(--preview-side);align-content:start;gap:7px;padding:12px 8px;display:grid}.page-settings .theme-preview-sidebar i{opacity:.35;background:#7e8a80;border-radius:3px;height:4px}.page-settings .theme-preview-sidebar i:first-child{opacity:1;background:#d1fa52;height:8px;margin-bottom:5px}.page-settings .theme-preview-content{align-content:start;gap:8px;padding:13px 12px;display:grid}.page-settings .theme-preview-content i{background:var(--preview-surface);border-radius:3px;height:15px}.page-settings .theme-preview-content i:first-child{background:var(--preview-ink);width:56%;height:5px}.page-settings .theme-preview-content i:last-child{height:23px}.page-settings .theme-option-label{align-items:center;gap:7px;padding:12px 2px 3px;font-size:13px;font-weight:550;display:flex}.page-settings .theme-choice{border:1px solid var(--border-strong);border-radius:50%;width:15px;height:15px;margin-left:auto}.page-settings .is-selected .theme-choice{border:4px solid var(--text);background:var(--action)}.page-settings .theme-system-note{color:var(--text-2);margin-top:14px;font-size:12px}.page-settings .settings-secondary{border-top:1px solid var(--border);margin-top:34px;padding-top:28px}.page-settings .settings-demo{background:var(--surface-2)}.page-settings .shortcuts{gap:0}.page-settings .shortcut{min-height:48px;padding:10px 0}.page-settings .shortcut:last-child{border:0}.page-settings .settings-foot{color:var(--text-2);padding:8px 0}.auth-refresh{padding:40px 32px}.auth-refresh .auth-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:84px;width:100%;max-width:1040px;display:grid}.auth-refresh .auth-card{gap:24px;max-width:400px;margin:0 auto}.auth-refresh .auth-brand{letter-spacing:-.04em;gap:12px;margin:0 0 16px;font-size:22px}.auth-refresh .auth-eyebrow{letter-spacing:.12em;color:var(--text-2);margin-bottom:10px;font-size:10px;font-weight:650;display:block}.auth-refresh .auth-heading h1{font-family:var(--font-display);letter-spacing:-.05em;font-size:40px;font-weight:550;line-height:1.12}.auth-refresh .auth-lede{max-width:350px;margin:12px 0 0;font-size:14px;line-height:1.6}.auth-refresh .input{min-height:46px}.auth-refresh .field{gap:7px}.auth-refresh form{gap:16px}.auth-refresh .btn-lg{height:48px;margin-top:4px}.auth-refresh .auth-providers{flex-direction:column;gap:10px;display:flex}.auth-refresh .auth-provider{gap:10px;width:100%;margin-top:0}.auth-refresh .auth-provider-apple svg,.auth-refresh .auth-provider-github svg{color:var(--text)}.auth-refresh .auth-divider{color:var(--text-2);align-items:center;gap:12px;margin:-4px 0;font-size:12px;display:flex}.auth-refresh .auth-divider:before,.auth-refresh .auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-refresh .auth-switch{flex-wrap:wrap;align-items:center;gap:4px;font-size:13px;display:flex}.auth-refresh .auth-switch .link-btn{align-items:center;min-height:44px;display:inline-flex}.auth-refresh .form-error,.auth-refresh .form-notice{overflow-wrap:anywhere}.auth-refresh .auth-example{background:var(--hero-bg);color:var(--hero-text);border:1px solid var(--hero-border);border-radius:24px;padding:36px}.auth-refresh .auth-example-label{color:var(--action);letter-spacing:.12em;margin-bottom:26px;font-size:10px;font-weight:650;display:block}.auth-refresh .auth-example h2{font-family:var(--font-display);letter-spacing:-.05em;font-size:38px;font-weight:550;line-height:1.12}.auth-refresh .auth-example>p{color:var(--hero-muted);margin-top:14px;font-size:13px;line-height:1.6}.auth-refresh .auth-example-project{border:1px solid var(--hero-border);background:color-mix(in srgb, var(--hero-text) 3%, var(--hero-bg));border-radius:14px;margin-top:30px;padding:22px}.auth-refresh .auth-example-project-name{font-size:16px;font-weight:550;line-height:1.4;display:block}.auth-refresh .auth-example-status{color:#f3ba65;margin:5px 0 22px;font-size:11px;display:block}.auth-refresh .auth-example-meter{margin-top:18px}.auth-refresh .auth-example-meter>div:first-child{color:var(--hero-muted);justify-content:space-between;align-items:baseline;gap:12px;font-size:12px;display:flex}.auth-refresh .auth-example-meter strong{color:var(--hero-text);font-family:var(--font-display);letter-spacing:-.04em;font-size:27px;font-weight:550}.auth-refresh .auth-example-track{background:var(--hero-border);border-radius:6px;height:9px;margin-top:7px;overflow:hidden}.auth-refresh .auth-example-track span{background:#f3ba65;border-radius:6px;height:100%;display:block}.auth-refresh .auth-example-work .auth-example-track span{background:var(--work,var(--accent))}.auth-refresh .auth-example-rate{border-top:1px solid var(--hero-border);justify-content:space-between;gap:18px;margin-top:24px;padding-top:20px;display:flex}.auth-refresh .auth-example-rate>span{color:var(--hero-muted);font-size:11px}.auth-refresh .auth-example-rate strong{color:var(--hero-text);font-family:var(--font-display);letter-spacing:-.04em;margin-top:4px;font-size:27px;font-weight:550;display:block}.auth-refresh .auth-example-rate>span:first-child strong{color:#f3ba65}.auth-refresh .auth-example>.auth-example-disclaimer{margin-top:20px;font-size:11px;line-height:1.6}@media (width<=1100px){.page-time .time-toolbar .seg{flex-basis:100%}.page-time .time-toolbar>.select,.page-time .time-toolbar .filter-task{flex:1}.page-time .entry{grid-template-columns:minmax(0,1fr) 138px auto 14px;gap:12px}.page-clients .client{grid-template-columns:minmax(0,1fr) 170px;gap:14px 20px}.page-clients .client-stats{grid-template-columns:1fr;gap:14px}.auth-refresh .auth-layout{gap:40px}.auth-refresh .auth-example{padding:28px}}@media (width<=800px){.auth-refresh .auth-layout{max-width:420px;display:block}.auth-refresh .auth-example{display:none}.auth-refresh .auth-card{max-width:none}}@media (width<=767px){.page-time .input,.page-time .time-toolbar .input,.page-time .time-toolbar .filter-task .select,.page-clients .input,.support-client-form .input,.page-settings .input,.auth-refresh .input{font-size:16px}}@media (width<=600px){.page-time .page-header-row{flex-direction:column;align-items:stretch;gap:16px}.page-time .page-actions{justify-content:flex-start}.page-time .time-summary{flex-direction:column;align-items:stretch;gap:20px;padding:22px}.page-time .time-summary-meta{text-align:left;border-top:1px solid var(--divider);flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:16px;display:flex}.page-time .time-summary-meta span{overflow-wrap:anywhere;justify-content:flex-start}.page-time .time-summary-meta strong{font-size:14px}.page-time .time-toolbar .seg{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:visible}.page-time .time-toolbar .seg>button{white-space:normal;min-width:0;padding:8px}.page-time .time-toolbar>.select,.page-time .time-toolbar .filter-task{flex-basis:100%;width:100%}.page-time .split-legend{grid-template-columns:minmax(0,1fr);gap:0}.page-time .day-head h2{font-size:16px}.page-time .day-total{font-size:20px}.page-time .entry{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main main""range dur";gap:10px 12px;width:calc(100% + 20px);margin:3px -10px;padding:16px 10px}.page-time .entry-range{font-size:12px}.page-time .entry-source{margin-top:4px;font-size:11px;display:block}.page-time .entry-dur{font-size:14px}.page-time .entry-chev{display:none}.page-clients .client{grid-template-columns:minmax(0,1fr);grid-template-areas:"main""projects""stats";gap:16px;padding:20px}.page-clients .client-avatar{border-radius:12px;width:44px;height:44px;font-size:16px}.page-clients .client-main{gap:12px}.page-clients .client-name{font-size:18px}.page-clients .client-projects{padding-left:0}.page-clients .client-stats{text-align:left;border-top:1px solid var(--divider);grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:16px}.page-clients .client-stats strong{font-size:22px}.page-settings .settings-section{padding:20px}.page-settings .settings-section-heading{padding-bottom:8px}.page-settings .setting{flex-direction:column;align-items:stretch;gap:12px;display:flex}.page-settings .setting-input{width:100%}.page-settings .setting .btn{align-self:flex-start}.page-settings .theme-options{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:16px}.page-settings .theme-option{grid-template-columns:88px minmax(0,1fr);align-items:center;gap:14px;padding:10px;display:grid}.page-settings .theme-preview{height:58px}.page-settings .theme-preview-sidebar{gap:5px;padding:9px 5px}.page-settings .theme-preview-content{gap:5px;padding:9px 7px}.page-settings .theme-preview-content i{height:8px}.page-settings .theme-preview-content i:last-child{height:14px}.page-settings .theme-option-label{min-width:0;padding:0}.page-settings .theme-choice{flex:none}.auth-refresh{padding:max(30px, var(--safe-t)) 24px max(30px, var(--safe-b))}.auth-refresh .auth-card{gap:20px}.auth-refresh .auth-brand{margin-bottom:14px;font-size:21px}.auth-refresh .auth-heading h1{font-size:34px}.auth-refresh .auth-lede{font-size:13px}}
