*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);font-size:var(--base-font-size);line-height:var(--line-height);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}body{transition:background var(--dur-slow) var(--ease-liquid), color var(--dur-mid) var(--ease-liquid);position:relative}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none;padding:0}svg{display:block}::selection{background:var(--selection)}h1,h2,h3,h4,h5,h6,p,figure{margin:0}ul,ol{margin:0;padding:0;list-style:none}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}::-webkit-scrollbar{width:var(--scrollbar-width);height:var(--scrollbar-width)}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--scrollbar-radius);transition:background var(--dur-fast) var(--ease-drift)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}body:before,body:after{content:"";pointer-events:none;border-radius:var(--radius-pill);filter:blur(30px);opacity:.9;z-index:var(--layer-base);position:fixed}body:before{background:radial-gradient(circle at center, var(--ambient-1), transparent 68%);width:38vw;min-width:280px;height:38vw;min-height:280px;animation:16s ease-in-out infinite alternate ambient-drift-1;top:-12vw;left:-8vw}body:after{background:radial-gradient(circle at center, var(--ambient-2), transparent 64%), radial-gradient(circle at 30% 30%, var(--ambient-3), transparent 52%);width:34vw;min-width:240px;height:34vw;min-height:240px;animation:18s ease-in-out infinite alternate ambient-drift-2;bottom:-12vw;right:-10vw}#app{z-index:1;opacity:0;filter:blur(10px);height:100%;transition:opacity .9s var(--ease-liquid), transform .9s var(--ease-liquid), filter .9s var(--ease-liquid);flex-direction:column;display:flex;position:relative;transform:translateY(18px)scale(.985)}body.app-ready #app{opacity:1;filter:none;transform:none}body.first-run #app{transition:opacity 2.4s var(--ease-liquid), transform 2.4s var(--ease-liquid), filter 2.4s var(--ease-liquid)}body.first-run.app-ready .topbar{--first-run-x:-44px;--first-run-y:-26px;--first-run-r:-4deg}body.first-run.app-ready .sidebar{--first-run-x:-58px;--first-run-y:18px;--first-run-r:3deg;animation-delay:.2s}body.first-run.app-ready .workspace{--first-run-x:0px;--first-run-y:46px;--first-run-r:-1.5deg;animation-delay:.44s}body.first-run.app-ready .topbar,body.first-run.app-ready .sidebar,body.first-run.app-ready .workspace{animation:first-run-pop 3.4s var(--ease-liquid) both}.glass{background:var(--panel);-webkit-backdrop-filter:blur(var(--blur-panel)) saturate(1.08);border:1px solid var(--border);isolation:isolate;position:relative}.glass-strong{background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border)}.sheen:before{content:"";border-radius:inherit;pointer-events:none;z-index:var(--layer-under);opacity:0;transition:opacity var(--dur-mid) var(--ease-liquid);background:linear-gradient(135deg,#fff6,#0000 48%,#ffffff2e);position:absolute;inset:0}.sheen:hover:before,.sheen.active:before{opacity:1}:focus-visible{box-shadow:var(--focus-ring);border-color:var(--accent-line);outline:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scroll-x{overscroll-behavior-x:contain;overflow-x:auto}.scroll-y{overscroll-behavior-y:contain;overflow-y:auto}@media (pointer:coarse){.icon-btn{border-radius:var(--radius-card);width:44px;height:44px}}.btn{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--panel);height:34px;-webkit-backdrop-filter:blur(var(--blur-chip));color:var(--text);white-space:nowrap;transition:transform var(--dur-fast) var(--ease-soft), background var(--dur-fast) var(--ease-drift), color var(--dur-fast) var(--ease-drift), border-color var(--dur-mid) var(--ease-liquid), box-shadow var(--dur-mid) var(--ease-liquid);align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){box-shadow:var(--shadow-lift);transform:translateY(-2px)scale(1.02)}.btn:active:not(:disabled){transform:translateY(0)scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;border-color:#0000}.btn-primary:hover:not(:disabled){box-shadow:0 12px 24px var(--accent-soft)}.btn-danger{background:var(--state-canceled,#ef4444);color:#fff;border-color:#0000}.btn-danger:hover:not(:disabled){box-shadow:0 12px 24px color-mix(in srgb, var(--state-canceled,#ef4444) 35%, transparent)}.btn-ghost{background:0 0;border-color:#0000;font-weight:500}.btn-ghost:hover:not(:disabled){background:var(--chip-bg)}.icon-btn{border-radius:var(--radius-control);width:34px;height:34px;color:var(--muted);transition:transform var(--dur-fast) var(--ease-soft), background var(--dur-fast) var(--ease-drift), color var(--dur-fast) var(--ease-drift), border-color var(--dur-mid) var(--ease-liquid), box-shadow var(--dur-mid) var(--ease-liquid);border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-btn svg{width:18px;height:18px}.icon-btn:hover:not(:disabled){color:var(--text);background:var(--chip-bg);box-shadow:var(--shadow-lift);transform:translateY(-2px)scale(1.02)}.icon-btn:active:not(:disabled){transform:translateY(0)scale(.96)}.icon-btn.active{color:var(--accent);background:var(--accent-soft)}.input{border-radius:var(--radius-control);border:1px solid var(--border);background:var(--panel);width:100%;height:34px;color:var(--text);transition:border-color var(--dur-mid) var(--ease-liquid), box-shadow var(--dur-mid) var(--ease-liquid), transform var(--dur-fast) var(--ease-soft);padding:0 12px;font-size:14px}.input::placeholder{color:var(--faint)}.input:focus{border-color:var(--accent-line);box-shadow:var(--focus-ring);outline:none;transform:translateY(-1px)}.input-lg{height:44px;padding:0 16px;font-size:16px}.chip{border-radius:var(--radius-pill);border:1px solid var(--chip-border);background:var(--chip-bg);height:22px;color:var(--chip-text);white-space:nowrap;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:650;display:inline-flex}.chip-label{border-color:color-mix(in srgb, var(--chip-hue,var(--muted)) 32%, transparent);background:color-mix(in srgb, var(--chip-hue,var(--muted)) 14%, transparent);color:color-mix(in srgb, var(--chip-hue,var(--muted)) 80%, var(--text))}.chip-label:before{content:"";border-radius:var(--radius-pill);background:var(--chip-hue,var(--muted));width:7px;height:7px}.chip-button{transition:transform var(--dur-fast) var(--ease-soft), background var(--dur-fast) var(--ease-drift), border-color var(--dur-mid) var(--ease-liquid)}.chip-button:hover{transform:translateY(-1px)scale(1.04)}.state-dot{border-radius:var(--radius-pill);border:1.8px solid var(--state-hue,var(--state-unstarted));width:14px;height:14px;transition:background var(--dur-mid) var(--ease-drift), border-color var(--dur-mid) var(--ease-liquid);flex:0 0 14px;position:relative}.state-dot[data-kind=backlog]{--state-hue:var(--state-backlog);border-style:dashed}.state-dot[data-kind=unstarted]{--state-hue:var(--state-unstarted)}.state-dot[data-kind=started]{--state-hue:var(--state-started);background:conic-gradient(var(--state-started) 0 50%, transparent 50% 100%)}.state-dot[data-kind=completed]{--state-hue:var(--state-completed);background:var(--state-completed)}.state-dot[data-kind=canceled]{--state-hue:var(--state-canceled);background:var(--state-canceled);opacity:.6}.priority-mark{align-items:flex-end;gap:1.5px;height:12px;display:inline-flex}.priority-mark i{background:var(--priority-none);width:3px;transition:background var(--dur-fast) var(--ease-drift);border-radius:1px}.priority-mark i:first-child{height:5px}.priority-mark i:nth-child(2){height:8px}.priority-mark i:nth-child(3){height:11px}.priority-mark[data-level=urgent] i{background:var(--priority-urgent)}.priority-mark[data-level=high] i:nth-child(-n+3){background:var(--priority-high)}.priority-mark[data-level=medium] i:nth-child(-n+2){background:var(--priority-medium)}.priority-mark[data-level=low] i:nth-child(-n+1){background:var(--priority-low)}.avatar{width:var(--avatar-md);height:var(--avatar-md);border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);-webkit-user-select:none;user-select:none;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-sm{width:var(--avatar-sm);height:var(--avatar-sm);font-size:9px}.avatar-lg{width:var(--avatar-lg);height:var(--avatar-lg);font-size:15px}.avatar-stack{display:inline-flex}.avatar-stack .avatar{box-shadow:0 0 0 2px var(--avatar-ring);margin-left:-6px}.avatar-stack .avatar:first-child{margin-left:0}.avatar-empty{border:1.5px dashed var(--border-strong);color:var(--faint);background:0 0}.skeleton{border-radius:var(--radius-chip);background:linear-gradient(90deg, var(--chip-bg) 25%, color-mix(in srgb, var(--chip-bg) 40%, var(--panel-strong)) 50%, var(--chip-bg) 75%);animation:skeleton-sweep 1.4s var(--ease-liquid) infinite;background-size:200% 100%}.toast{z-index:var(--layer-toast);border-radius:var(--radius-pill);background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-chrome));border:1px solid var(--border);opacity:0;pointer-events:none;transition:opacity var(--dur-mid) var(--ease-drift), transform var(--dur-mid) var(--ease-soft), box-shadow var(--dur-mid) var(--ease-liquid);padding:10px 16px;font-size:13px;font-weight:600;position:fixed;bottom:28px;left:50%;transform:translate(-50%)translateY(8px)scale(.96)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)scale(1);box-shadow:0 18px 34px #0f172a29}.topbar,.topbar *{-webkit-user-select:none;user-select:none;cursor:default}.topbar button,.topbar [role=button]{cursor:pointer}.topbar input{cursor:text;-webkit-user-select:text;user-select:text}.topbar{height:var(--topbar-h);flex:0 0 var(--topbar-h);background:var(--panel);-webkit-backdrop-filter:blur(var(--blur-chrome)) saturate(1.08);border-bottom:1px solid var(--border);z-index:var(--layer-chrome);align-items:center;gap:10px;padding:0 12px;display:flex}body.platform-macos .topbar{padding-left:82px}.brand{letter-spacing:.02em;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;font-size:15px;font-weight:750;display:flex}.brand-badge{border-radius:var(--radius-chip);width:26px;height:26px;display:block;position:relative;overflow:hidden}.brand-badge img{width:100%;height:100%;display:block}.brand-badge:after{content:"";animation:badge-shimmer 6s var(--ease-liquid) infinite;background:linear-gradient(90deg,#0000,#ffffff8c,#0000);position:absolute;inset:-40%}.topbar-spacer{flex:1}.topbar-search{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--panel-strong);min-width:200px;max-width:420px;height:32px;color:var(--muted);transition:transform var(--dur-fast) var(--ease-soft), border-color var(--dur-mid) var(--ease-liquid), box-shadow var(--dur-mid) var(--ease-liquid);flex:280px;align-items:center;gap:8px;padding:0 12px;font-size:13px;display:flex}.topbar-search:hover{border-color:var(--border-strong);transform:translateY(-1px)}kbd{font-family:var(--font);border:1px solid var(--border);background:var(--chip-bg);color:var(--muted);border-radius:5px;padding:2px 5px;font-size:10px;font-weight:700}.body{flex:1;min-height:0;display:flex;position:relative}.sidebar{width:var(--sidebar-w);flex:0 0 var(--sidebar-w);gap:var(--section-gap);border-right:1px solid var(--border);background:color-mix(in srgb, var(--panel) 60%, transparent);-webkit-backdrop-filter:blur(var(--blur-chrome));transition:width var(--dur-mid) var(--ease-liquid), transform var(--dur-mid) var(--ease-liquid);flex-direction:column;padding:14px 10px;display:flex;overflow-y:auto}body.sidebar-collapsed .sidebar{flex-basis:0;width:0;padding-left:0;padding-right:0;overflow:hidden}.nav-section{flex-direction:column;gap:2px;display:flex}.nav-heading{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:0 10px 6px;font-size:11px;font-weight:750}.nav-item{height:var(--row-h);border-radius:var(--radius-control);color:var(--muted);text-align:left;width:100%;transition:transform var(--dur-fast) var(--ease-soft), background var(--dur-fast) var(--ease-drift), color var(--dur-fast) var(--ease-drift);align-items:center;gap:9px;padding:0 10px;font-size:13px;font-weight:600;display:flex}.nav-item svg{flex:0 0 16px;width:16px;height:16px}.nav-item:hover{background:var(--chip-bg);color:var(--text);transform:translate(2px)}.nav-item.active{background:var(--accent-soft);color:var(--accent)}.nav-count{color:var(--faint);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px;font-weight:700}.workspace{flex-direction:column;flex:1;min-width:0;display:flex}.view-header{flex:none;align-items:center;gap:10px;padding:14px 18px 10px;display:flex}.view-title{font-size:17px;font-weight:750}.view-subtitle{color:var(--muted);font-size:12px;font-weight:500}.segmented{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--chip-bg);gap:2px;padding:2px;display:inline-flex}.segmented button{border-radius:var(--radius-pill);height:26px;color:var(--muted);transition:transform var(--dur-fast) var(--ease-soft), background var(--dur-fast) var(--ease-drift), color var(--dur-fast) var(--ease-drift);align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:650;display:inline-flex}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--panel-strong);color:var(--text);box-shadow:var(--shadow-lift)}.view-body{flex:1;min-height:0;position:relative;overflow:hidden}.empty{text-align:center;height:100%;color:var(--muted);animation:surface-rise .5s var(--ease-liquid) both;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:40px;display:flex}.empty-icon{border-radius:var(--radius-panel);background:var(--chip-bg);width:46px;height:46px;color:var(--faint);place-items:center;margin-bottom:2px;display:grid}.empty-title{color:var(--text);font-size:15px;font-weight:700}.empty-hint{max-width:320px;font-size:13px}@media (width<=900px){.sidebar{z-index:var(--layer-chrome-over);box-shadow:var(--shadow-panel);position:absolute;inset:0 auto 0 0;transform:translate(-100%)}body.sidebar-open .sidebar{transform:none}body.sidebar-collapsed .sidebar{width:var(--sidebar-w);flex-basis:var(--sidebar-w)}}.view-content{position:absolute;inset:0}.filter-bar{flex-wrap:wrap;flex:none;align-items:center;gap:8px;padding:0 18px 10px;display:flex}.filter-icon{color:var(--faint);display:flex}.filter-search{flex:180px;width:auto;max-width:260px;height:30px;font-size:13px}.filter-chips{flex-wrap:wrap;gap:4px;display:flex}.filter-chips .chip.active{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.filter-label{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-size:11px;font-weight:700}.filter-select{width:auto;height:30px;padding:0 8px;font-size:12px}.filter-clear{height:26px;padding:0 10px;font-size:12px}.column-static .card{cursor:pointer}.nav-heading-row{align-items:center;gap:4px;padding-right:4px;display:flex}.nav-heading-row .nav-heading{flex:1;padding-bottom:0}.nav-add{border-radius:var(--radius-chip);width:22px;height:22px}.nav-add svg{width:14px;height:14px}.nav-empty{color:var(--faint);padding:2px 10px 4px;font-size:12px}.nav-item-row{align-items:center;gap:0;padding:0 4px 0 10px;display:flex}.nav-item-main{color:inherit;align-items:center;display:flex}.nav-item-label{text-align:left;min-width:0;font:inherit;color:inherit;text-overflow:ellipsis;white-space:nowrap;flex:1;padding:0 9px;overflow:hidden}.nav-remove{border-radius:var(--radius-chip);opacity:0;width:20px;height:20px}.nav-remove svg{width:12px;height:12px}.nav-item-row:hover .nav-remove,.nav-item-row:focus-within .nav-remove{opacity:1}.cycle-strip{border-radius:var(--radius-control);background:var(--chip-bg);flex-direction:column;gap:5px;margin:0 6px;padding:9px 10px;display:flex}.cycle-line{align-items:center;gap:6px;font-size:12px;display:flex}.cycle-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;overflow:hidden}.cycle-days{color:var(--muted);white-space:nowrap;font-weight:650}.cycle-bar{border-radius:var(--radius-pill);background:var(--border);height:4px;overflow:hidden}.cycle-fill{border-radius:inherit;background:var(--state-completed);height:100%;transition:width var(--dur-mid) var(--ease-liquid);display:block}.cycle-meta{color:var(--muted);font-size:11px;font-weight:600}.cycle-added{color:var(--priority-high);font-weight:700}.cycle-finish{justify-content:center;height:24px;margin-top:2px;font-size:11.5px}.presence-slot{align-items:center;display:flex}.presence{animation:surface-rise var(--dur-mid) var(--ease-soft) both;align-items:center;padding-right:4px;display:flex}.presence-face,.presence-more{width:var(--avatar-sm);height:var(--avatar-sm);box-shadow:0 0 0 2px var(--bg);background:var(--chip-bg);color:var(--text);letter-spacing:.02em;transition:transform var(--dur-fast) var(--ease-soft);border-radius:999px;place-items:center;margin-left:-6px;font-size:9px;font-weight:700;display:grid}.presence-face:first-child{margin-left:0}.presence-face:hover{z-index:1;transform:translateY(-2px)scale(1.08)}.presence-more{border:1px dashed var(--border-strong);color:var(--muted);box-shadow:none;background:0 0}@keyframes badge-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.updates-btn{position:relative}.updates-btn.has-unread{color:var(--accent)}.updates-badge{background:var(--accent);color:#fff;min-width:15px;height:15px;box-shadow:0 0 0 2px var(--bg);animation:badge-pop var(--dur-mid) var(--ease-soft) both;border-radius:999px;place-items:center;padding:0 4px;font-size:9px;font-weight:750;line-height:1;display:grid;position:absolute;top:2px;right:0}.updates-badge[hidden]{display:none}body.platform-windows .topbar{padding-left:12px}body.platform-windows .topbar,body.platform-windows .sidebar{background:color-mix(in srgb, var(--panel) 55%, transparent)}.view-title{align-items:center;gap:6px;display:flex}.view-title-clear{opacity:0;width:20px;height:20px;transition:opacity var(--dur-fast) var(--ease-drift)}.view-title:hover .view-title-clear,.view-title-clear:focus-visible{opacity:.7}.view-title-clear:hover{opacity:1}.cycle-open{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-chip);transition:color var(--dur-fast) var(--ease-drift);background:0 0;border:none;align-items:baseline;gap:8px;padding:0;display:flex}.cycle-open:hover .cycle-name{text-underline-offset:2px;text-decoration:underline}.cycle-open:focus-visible{outline:none;box-shadow:0 0 0 3px #1f6feb29}.board{scroll-snap-type:x proximity;align-items:flex-start;gap:12px;height:100%;padding:4px 18px 18px;display:flex;overflow:auto hidden}.column{border-radius:var(--radius-panel);background:color-mix(in srgb, var(--panel) 46%, transparent);border:1px solid var(--border);scroll-snap-align:start;max-height:100%;transition:background var(--dur-mid) var(--ease-drift), border-color var(--dur-mid) var(--ease-liquid), box-shadow var(--dur-mid) var(--ease-liquid);flex-direction:column;flex:0 0 300px;display:flex}.column.drop-target{background:var(--accent-soft);border-color:var(--accent-line);box-shadow:inset 0 0 0 1px var(--accent-line)}.column-header{flex:none;align-items:center;gap:8px;padding:11px 12px 9px;display:flex}.column-name{font-size:13px;font-weight:700}.column-count{color:var(--faint);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.column-add{border-radius:var(--radius-chip);width:26px;height:26px;margin-left:auto}.column-add svg{width:15px;height:15px}.column-edit-open{border-radius:var(--radius-chip);opacity:0;width:24px;height:24px;transition:opacity var(--dur-fast) var(--ease-drift)}.column-edit-open svg{width:14px;height:14px}.column:hover .column-edit-open,.column-edit-open:focus-visible{opacity:1}.column-new{scroll-snap-align:start;flex-direction:column;flex:0 0 200px;max-height:100%;display:flex}.column-new-btn{border:1px dashed var(--border-strong);border-radius:var(--radius-panel);width:100%;color:var(--muted);font:inherit;cursor:pointer;transition:transform var(--dur-fast) var(--ease-soft), border-color var(--dur-mid) var(--ease-liquid), color var(--dur-fast) var(--ease-drift);background:0 0;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:13px;font-weight:650;display:flex}.column-new-btn:hover{border-color:var(--accent);color:var(--text);transform:translateY(-2px)scale(1.02)}.column-new-btn:active{transform:translateY(0)scale(.96)}.column-new-btn svg{width:15px;height:15px}.column-cards{gap:var(--row-gap);flex-direction:column;flex:1;min-height:60px;padding:0 8px 10px;display:flex;overflow-y:auto}.card{padding:var(--card-pad);border-radius:var(--radius-card);background:var(--object-surface);border:1px solid var(--border);cursor:grab;transition:transform var(--dur-fast) var(--ease-soft), box-shadow var(--dur-mid) var(--ease-liquid), border-color var(--dur-mid) var(--ease-liquid), opacity var(--dur-fast) var(--ease-drift);flex-direction:column;gap:8px;display:flex}.card:hover{box-shadow:var(--shadow-lift);border-color:var(--border-strong);transform:translateY(-2px)}.card:active{cursor:grabbing}.card.dragging{opacity:.5;transform:scale(1.02) rotate(calc(1deg + var(--sway,0deg)));box-shadow:var(--shadow-panel);cursor:grabbing}.card.selected{border-color:var(--accent-line);box-shadow:var(--focus-ring)}.card-top{align-items:center;gap:7px;display:flex}.card-ref{color:var(--faint);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:11px;font-weight:700}.card-title{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.card-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.card-meta .avatar{margin-left:auto}.card-progress{color:var(--faint);align-items:center;gap:6px;font-size:11px;font-weight:650;display:flex}.card-progress-track{border-radius:var(--radius-pill);background:var(--chip-bg);flex:1;height:3px;overflow:hidden}.card-progress-fill{border-radius:inherit;background:var(--state-completed);height:100%;transition:width var(--dur-mid) var(--ease-liquid)}.drop-placeholder{border-radius:var(--radius-card);border:1.5px dashed var(--accent-line);background:var(--accent-soft);transition:height var(--dur-fast) var(--ease-liquid)}.list{height:100%;padding:0 18px 18px;overflow-y:auto}.list-group{margin-bottom:var(--section-gap)}.list-group-header{height:32px;z-index:var(--layer-raised);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(var(--blur-chip));align-items:center;gap:8px;padding:0 10px;font-size:12px;font-weight:700;display:flex;position:sticky;top:0}.row{height:var(--row-h);border-radius:var(--radius-control);cursor:pointer;transition:transform var(--dur-fast) var(--ease-soft), background var(--dur-fast) var(--ease-drift), border-color var(--dur-mid) var(--ease-liquid);border:1px solid #0000;align-items:center;gap:10px;padding:0 10px;display:flex}.row:hover{background:var(--chip-bg);transform:translate(2px)}.row.selected{background:var(--accent-soft);border-color:var(--accent-line)}.row-ref{color:var(--faint);font-variant-numeric:tabular-nums;flex:none;min-width:58px;font-size:11.5px;font-weight:700}.row-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13.5px;font-weight:550;overflow:hidden}.row-meta{flex:none;align-items:center;gap:8px;display:flex}.row-date,.card-date{color:var(--muted);font-size:11.5px;font-weight:600}.row-date.overdue,.card-date.overdue{color:var(--priority-urgent);font-weight:750}.row.is-done .row-title,.card.is-done .card-title{color:var(--muted);text-decoration:line-through;text-decoration-thickness:1px}.detail{width:min(var(--detail-w), 100%);background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border-left:1px solid var(--border);box-shadow:var(--shadow-panel);z-index:var(--layer-detail);animation:sheet-enter .34s var(--ease-liquid) both;flex-direction:column;display:flex;position:absolute;inset:0 0 0 auto}.detail.is-closing{animation:sheet-exit .18s var(--ease-liquid) both}.detail-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 14px;display:flex}.detail-body{flex-direction:column;flex:1;gap:16px;padding:16px 16px 28px;display:flex;overflow-y:auto}.detail-body>*{flex:none}.detail-title{resize:none;background:0 0;border:none;width:100%;padding:0;font-size:18px;font-weight:700;line-height:1.3}.detail-title:focus{outline:none}.detail-fields{flex-direction:column;gap:6px;display:flex}.field-row{grid-template-columns:92px 1fr;align-items:center;gap:10px;min-height:30px;display:grid}.field-label{color:var(--muted);font-size:12px;font-weight:650}.field-row .input{height:30px;font-size:13px}.detail-section{flex-direction:column;gap:6px;display:flex}.detail-section-head{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);align-items:center;gap:8px;padding-bottom:2px;font-size:11px;font-weight:750;display:flex}.detail-body.is-done .detail-title{color:var(--muted);text-decoration:line-through}.comment{border-radius:var(--radius-card);background:var(--chip-bg);flex-direction:column;gap:4px;padding:9px 11px;display:flex}.comment-head{align-items:center;gap:7px;display:flex}.comment-when{color:var(--faint);font-size:11px;font-weight:600}.comment-body{white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.5}.comment .icon-btn{opacity:0;transition:opacity var(--dur-fast) var(--ease-drift)}.comment:hover .icon-btn,.comment:focus-within .icon-btn{opacity:1}.activity-row{min-height:24px;color:var(--muted);align-items:center;gap:9px;font-size:12px;display:flex}.activity-dot{border-radius:var(--radius-pill);background:var(--border-strong);flex:0 0 5px;width:5px;height:5px}.activity-text{flex:1;min-width:0}.activity-when{color:var(--faint);white-space:nowrap;font-size:11px}.detail-title{overflow:hidden}.relation-row{align-items:center;gap:7px;min-height:26px;display:flex}.relation-kind{letter-spacing:.04em;text-transform:uppercase;color:var(--faint);flex:0 0 76px;font-size:10.5px;font-weight:750}.relation-row[data-relation-kind=blocks] .relation-kind{color:var(--priority-high)}.relation-link{border-radius:var(--radius-chip);text-align:left;min-width:0;transition:background var(--dur-fast) var(--ease-drift);flex:1;align-items:center;gap:6px;padding:3px 7px;font-size:12.5px;font-weight:550;display:flex}.relation-link:hover{background:var(--chip-bg)}.relation-row .icon-btn{opacity:0;transition:opacity var(--dur-fast) var(--ease-drift)}.relation-row:hover .icon-btn,.relation-row:focus-within .icon-btn{opacity:1}.follow-btn.active{color:var(--accent);background:var(--accent-soft)}body.is-dragging,body.is-dragging *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.time-section .detail-section-head{align-items:center;gap:10px;display:flex}.time-total{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.time-total.is-running{color:var(--accent)}.time-total.is-running:after{content:"";width:5px;height:5px;animation:pulse-dot 1.8s var(--ease-drift) infinite;background:currentColor;border-radius:999px;margin-left:5px;display:inline-block}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.25}}.timer-btn{margin-left:auto}.timer-btn.is-running{color:var(--accent)}.time-entries{margin:8px 0 0;padding:0;list-style:none}.time-entry{color:var(--muted);align-items:baseline;gap:8px;padding:4px 0;font-size:12px;display:flex}.time-who{color:var(--text);font-weight:550}.time-length{font-variant-numeric:tabular-nums}.time-entry.is-running .time-length{color:var(--accent)}.time-note{min-width:0;color:var(--faint);flex:auto}.note-list{margin:0;padding:0;list-style:none}.note-row{align-items:center;gap:6px;padding:3px 0;display:flex}.note-open{border:1px solid var(--border);border-radius:var(--radius-chip);min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--dur-mid) var(--ease-liquid), transform var(--dur-fast) var(--ease-soft);background:0 0;flex:auto;padding:4px 8px;font-size:12px}.note-open:hover{border-color:var(--accent);transform:translateY(-1px)}.note-row .icon-btn{opacity:0;transition:opacity var(--dur-fast) var(--ease-drift)}.note-row:hover .icon-btn,.note-row:focus-within .icon-btn{opacity:1}.column-edit{z-index:var(--layer-dialog);background:var(--panel-strong);width:min(420px,100vw - 32px);max-height:min(620px,100vh - 48px);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-modal);animation:modal-rise .42s var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;translate:-50% -50%}.column-edit.is-closing{animation:surface-fall .2s var(--ease-liquid) both}.column-edit-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:14px 14px 10px;display:flex}.column-edit-title{flex:1;font-size:15px;font-weight:750}.column-edit-body{gap:8px;padding:14px;display:grid;overflow-y:auto}.column-edit-label{color:var(--muted);font-size:11px;font-weight:700}.column-edit-hint{color:var(--faint);font-size:11px;line-height:1.45}.column-edit-name,.column-edit-kind,.column-edit-move{border:1px solid var(--border);border-radius:var(--radius-field);background:var(--panel);width:100%;color:var(--text);font:inherit;padding:9px 10px;font-size:13px}.column-edit-name:focus-visible,.column-edit-kind:focus-visible,.column-edit-move:focus-visible{border-color:#1f6feb57;outline:none;box-shadow:0 0 0 4px #1f6feb1f}.column-edit-color{border:1px solid var(--border);border-radius:var(--radius-chip);background:0 0;width:44px;height:30px;padding:0}.column-edit-icons{flex-wrap:wrap;gap:6px;display:flex}.column-edit-icon{border:1px solid var(--border);border-radius:var(--radius-chip);background:var(--panel);min-width:32px;height:32px;color:var(--muted);font:inherit;cursor:pointer;transition:transform var(--dur-fast) var(--ease-soft), border-color var(--dur-mid) var(--ease-liquid), color var(--dur-fast) var(--ease-drift);place-items:center;padding:0 7px;font-size:11px;font-weight:700;display:grid}.column-edit-icon:hover{color:var(--text);transform:translateY(-2px)scale(1.02)}.column-edit-icon:active{transform:translateY(0)scale(.96)}.column-edit-icon.active{border-color:var(--accent);color:var(--accent)}.column-edit-icon svg{width:15px;height:15px}.column-edit-danger{border-top:1px solid var(--border);gap:8px;margin-top:6px;padding-top:10px;display:grid}.column-edit-foot{border-top:1px solid var(--border);align-items:center;gap:10px;padding:12px 14px;display:flex}.column-edit-problem{color:var(--danger,#e5484d);flex:1;font-size:12px;line-height:1.4}.state-mark{width:16px;height:16px;color:var(--state-hue,var(--muted));flex:none;place-items:center;display:grid}.state-mark svg{width:14px;height:14px}.readme{flex-direction:column;height:100%;min-height:0;display:flex}.readme-tabs{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:4px;padding:8px 14px;display:flex}.readme-spacer{flex:1}.readme-tab{border-radius:var(--radius-chip);color:var(--muted);font:inherit;cursor:pointer;transition:transform var(--dur-fast) var(--ease-soft), color var(--dur-fast) var(--ease-drift), border-color var(--dur-mid) var(--ease-liquid);background:0 0;border:1px solid #0000;padding:5px 10px;font-size:12px;font-weight:650}.readme-tab:hover{color:var(--text);transform:translateY(-1px)}.readme-tab:active{transform:translateY(0)scale(.97)}.readme-tab.active{color:var(--text);border-color:var(--border-strong);background:var(--panel)}.readme-body{flex:1;min-height:0;padding:14px 18px 28px;overflow-y:auto}.readme-source{color:var(--faint);align-items:baseline;gap:10px;margin-bottom:12px;font-size:11px;display:flex}.readme-file{color:var(--muted);font-weight:700}.readme-path{text-align:left;white-space:nowrap;text-overflow:ellipsis;direction:rtl;flex:1;min-width:0;overflow:hidden}.readme-status{font-variant-numeric:tabular-nums}.readme-note{color:var(--muted);font-size:12px;line-height:1.5}.readme-problem{color:var(--danger,#e5484d);margin-bottom:8px;font-size:13px;line-height:1.5}.readme-empty{gap:6px;max-width:52ch;padding:24px 0;display:grid}.readme-empty-title{font-size:14px;font-weight:700}.readme-doc{max-width:72ch;font-size:13.5px;line-height:1.62}.readme-doc h1,.readme-doc h2,.readme-doc h3,.readme-doc h4,.readme-doc h5,.readme-doc h6{text-wrap:balance;margin:1.4em 0 .5em;line-height:1.25}.readme-doc h1{font-size:1.65em;font-weight:750}.readme-doc h2{font-size:1.32em;font-weight:700}.readme-doc h3{font-size:1.12em;font-weight:700}.readme-doc h4,.readme-doc h5,.readme-doc h6{font-size:1em;font-weight:700}.readme-doc>:first-child{margin-top:0}.readme-doc p,.readme-doc ul,.readme-doc ol,.readme-doc blockquote{margin:0 0 .85em}.readme-doc ul,.readme-doc ol{padding-left:1.35em}.readme-doc li{margin:.2em 0}.readme-doc a{color:var(--accent);text-underline-offset:2px}.readme-doc hr{border:none;border-top:1px solid var(--border);margin:1.6em 0}.readme-doc blockquote{border-left:2px solid var(--border-strong);color:var(--muted);padding-left:12px}.readme-doc code{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:5px;padding:.12em .34em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em}.readme-doc pre{border:1px solid var(--border);border-radius:var(--radius-field);background:color-mix(in srgb, var(--text) 5%, transparent);margin:0 0 .95em;padding:11px 13px;overflow-x:auto}.readme-doc pre code{background:0 0;padding:0;font-size:.86em}.readme-editor{border:1px solid var(--border);border-radius:var(--radius-field);background:var(--panel);width:100%;max-width:72ch;min-height:60vh;color:var(--text);font:inherit;resize:vertical;padding:12px 14px;font-size:13.5px;line-height:1.62}.readme-editor:focus-visible{border-color:#1f6feb57;outline:none;box-shadow:0 0 0 4px #1f6feb1f}.branch-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.branch-name{border:1px solid var(--border);border-radius:var(--radius-chip);background:color-mix(in srgb, var(--text) 5%, transparent);text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;overflow:hidden}.branch-state{border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700}.branch-state.is-waiting{color:#8a6d1f;background:#f2c94c38}.branch-state.is-clear{color:#1a7f42;background:#22c55e2e}.branch-state.is-gone{background:color-mix(in srgb, var(--text) 8%, transparent);color:var(--muted)}.branch-when{color:var(--faint);margin-top:5px;font-size:11px}body.theme-dark .branch-state.is-waiting{color:#f2c94c}body.theme-dark .branch-state.is-clear{color:#4ade80}.checks{gap:8px;max-width:72ch;margin-top:12px;list-style:none;display:grid}.check{border:1px solid var(--border);border-left:3px solid var(--faint);border-radius:var(--radius-field);background:var(--panel);gap:5px;padding:11px 12px;display:grid}.check-nothingToShow{border-left-color:#f2c94c}.check-alreadyUnderway{border-left-color:#1f6feb}.check-neverLanded{border-left-color:#a855f7}.check-task{color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:baseline;gap:8px;padding:0;display:flex}.check-task:hover .check-title{text-underline-offset:2px;text-decoration:underline}.check-title{font-size:13px;font-weight:650}.check-said{color:var(--muted);font-size:12px;line-height:1.5}.card.has-tags{isolation:isolate;position:relative}.card.has-tags:before{content:"";z-index:var(--layer-under);border-radius:inherit;background:var(--tag-wash);pointer-events:none;position:absolute;inset:0}.card-tags{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.card-tag{color:color-mix(in srgb, var(--tag) 72%, var(--text));background:color-mix(in srgb, var(--tag) 16%, transparent);border:1px solid color-mix(in srgb, var(--tag) 30%, transparent);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:12ch;padding:0 6px;font-size:10px;font-weight:700;line-height:1.6;overflow:hidden}.card-tag-more{color:var(--faint);border-color:var(--border);background:0 0}body.theme-dark .card-tag{color:color-mix(in srgb, var(--tag) 82%, white)}.table-view{flex-direction:column;height:100%;padding:0 18px 18px;display:flex}.table-head,.table-row{align-items:center;gap:10px;padding:0 10px;display:grid}.table-head{height:30px;z-index:var(--layer-raised);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(var(--blur-chip));flex:0 0 30px;position:sticky;top:0}.table-th{letter-spacing:.07em;text-transform:uppercase;color:var(--faint);text-align:left;align-items:center;gap:4px;font-size:10.5px;font-weight:750;display:flex}.table-sortable{transition:color var(--dur-fast) var(--ease-drift)}.table-sortable:hover{color:var(--text)}.table-sortable.active{color:var(--accent)}.table-caret{transition:transform var(--dur-mid) var(--ease-soft);display:flex}.table-caret.flipped{transform:rotate(180deg)}.table-body{flex:1;overflow-y:auto}.table-group{align-items:center;gap:8px;height:30px;margin-top:8px;padding:0 10px;font-size:12px;font-weight:700;display:flex}.table-row{height:var(--row-h);border-radius:var(--radius-control);border-bottom:1px solid var(--border);cursor:pointer;transition:background var(--dur-fast) var(--ease-drift)}.table-row:hover{background:var(--chip-bg)}.table-ref{color:var(--faint);font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:700}.table-title{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:550;overflow:hidden}.table-state{color:var(--muted);align-items:center;gap:6px;min-width:0;font-size:12px;display:flex}.table-date{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:600}.table-date.overdue{color:var(--priority-urgent);font-weight:750}.table-row.is-done .table-title{color:var(--muted);text-decoration:line-through}.calendar-view{flex-direction:column;height:100%;padding:0 18px 18px;display:flex}.calendar-head{flex:none;align-items:center;gap:8px;padding-bottom:10px;display:flex}.calendar-month{font-size:15px;font-weight:750}.calendar-main{flex:1;gap:12px;min-height:0;display:flex}.calendar-grid{background:var(--border);border:1px solid var(--border);border-radius:var(--radius-panel);flex:1;grid-template-rows:auto repeat(6,minmax(0,1fr));grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;min-width:0;display:grid;overflow:hidden}.calendar-dayname{background:var(--panel);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);padding:5px 8px;font-size:10.5px;font-weight:750}.calendar-day{background:var(--bg);min-height:0;transition:background var(--dur-fast) var(--ease-drift);flex-direction:column;gap:2px;padding:4px 5px;display:flex;overflow:hidden}.calendar-day:hover{background:var(--chip-bg)}.calendar-day.outside{opacity:.45}.calendar-date{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.calendar-day.today .calendar-date{color:#fff;background:var(--accent);border-radius:var(--radius-pill);place-items:center;width:18px;height:18px;display:grid}.calendar-chip{border-radius:var(--radius-chip);background:var(--object-surface);border:1px solid var(--border);text-align:left;width:100%;transition:transform var(--dur-fast) var(--ease-soft), border-color var(--dur-mid) var(--ease-liquid);align-items:center;gap:5px;padding:2px 6px;font-size:11px;font-weight:600;display:flex}.calendar-chip:hover{border-color:var(--border-strong);transform:translate(1px)}.calendar-chip.is-done{color:var(--muted);text-decoration:line-through}.calendar-rail{border-radius:var(--radius-panel);border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 46%, transparent);flex-direction:column;flex:0 0 200px;gap:4px;padding:8px;display:flex;overflow-y:auto}.timeline-view{height:100%;padding:0 18px 18px;overflow:hidden}.timeline-scroll{height:100%;overflow:auto}.timeline-ruler,.timeline-rows{--label-w:200px}.timeline-ruler{grid-template-columns:var(--label-w) repeat(var(--days), var(--col));z-index:var(--layer-raised);background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(var(--blur-chip));border-bottom:1px solid var(--border);display:grid;position:sticky;top:0}.timeline-ruler>.timeline-tick:first-child{grid-column:2}.timeline-tick{border-left:1px solid var(--border);height:30px;position:relative}.timeline-tick.weekend{background:var(--chip-bg)}.timeline-tick.today{background:var(--accent-soft)}.timeline-tick-label{color:var(--faint);white-space:nowrap;font-size:10px;font-weight:700;position:absolute;top:8px;left:4px}.timeline-row{grid-template-columns:var(--label-w) 1fr;height:var(--row-h);cursor:pointer;transition:background var(--dur-fast) var(--ease-drift);align-items:center;display:grid}.timeline-row:hover{background:var(--chip-bg)}.timeline-label{align-items:center;gap:7px;min-width:0;padding:0 10px;font-size:12.5px;font-weight:550;display:flex}.timeline-track{grid-template-columns:repeat(var(--days), var(--col));align-items:center;height:100%;display:grid;position:relative}.timeline-bar{grid-column:calc(var(--offset) + 1) / span var(--span);border-radius:var(--radius-pill);background:var(--accent);color:#fff;height:20px;transition:transform var(--dur-fast) var(--ease-soft), filter var(--dur-fast) var(--ease-liquid);align-items:center;padding:0 7px;font-size:11px;font-weight:650;display:flex;overflow:hidden}.timeline-row:hover .timeline-bar{filter:brightness(1.06);transform:translateY(-1px)}.timeline-bar.marker{border-radius:var(--radius-pill);justify-self:start;width:14px;height:14px;padding:0}.timeline-bar.is-done{background:var(--state-completed)}.timeline-bar.overdue{background:var(--priority-urgent)}.cycle-strip{border-radius:var(--radius-control);background:var(--chip-bg);align-items:center;gap:10px;padding:8px 10px;font-size:12px;display:flex}.cycle-name{font-weight:700}.cycle-days{color:var(--muted);font-weight:600}.cycle-days.over{color:var(--priority-urgent);font-weight:750}.cycle-bar{border-radius:var(--radius-pill);background:var(--border);flex:1;height:4px;overflow:hidden}.cycle-fill{border-radius:inherit;background:var(--state-completed);height:100%;transition:width var(--dur-mid) var(--ease-liquid)}.graph-view{flex-direction:column;height:100%;padding:0 18px 18px;display:flex}.graph-scroll{flex:1;min-height:0;overflow:auto}.graph-canvas{min-width:100%;position:relative}.graph-edges{pointer-events:none;position:absolute;inset:0;overflow:visible}.graph-edge{fill:none;stroke:var(--border-strong);stroke-width:1.5px;marker-end:none}.graph-edge.cyclic{stroke:var(--priority-urgent);stroke-dasharray:4 3;stroke-width:2px}.graph-node{border-radius:var(--radius-card);background:var(--object-surface);border:1px solid var(--border);text-align:left;transition:transform var(--dur-fast) var(--ease-soft), box-shadow var(--dur-mid) var(--ease-liquid), border-color var(--dur-mid) var(--ease-liquid);flex-direction:column;gap:5px;padding:10px 12px;display:flex;position:absolute}.graph-node:hover{box-shadow:var(--shadow-lift);border-color:var(--border-strong);transform:translateY(-2px)}.graph-node.is-done .graph-node-title{color:var(--muted);text-decoration:line-through}.graph-node-top{align-items:center;gap:6px;display:flex}.graph-node-title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.graph-waiting,.graph-ready{border-radius:var(--radius-pill);white-space:nowrap;margin-left:auto;padding:1px 6px;font-size:10px;font-weight:700}.graph-waiting{background:var(--chip-bg);color:var(--muted)}.graph-ready{background:color-mix(in srgb, var(--state-completed) 16%, transparent);color:var(--state-completed)}.graph-warning{border-radius:var(--radius-control);background:color-mix(in srgb, var(--priority-urgent) 12%, transparent);border:1px solid color-mix(in srgb, var(--priority-urgent) 30%, transparent);color:var(--priority-urgent);align-items:center;gap:7px;margin-bottom:10px;padding:7px 11px;font-size:12px;font-weight:650;display:flex}.insights{animation:surface-rise var(--dur-mid) var(--ease-liquid) both;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:14px;padding:4px 2px 24px;display:grid;overflow-y:auto}.insight{border:1px solid var(--border);border-radius:var(--radius-panel);background:color-mix(in srgb, var(--panel) 46%, transparent);padding:16px 18px 18px}.insight-head{margin-bottom:14px}.insight-title{letter-spacing:-.01em;margin:0;font-size:14px;font-weight:650}.insight-hint{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.5}.insight-empty{color:var(--muted);margin:0;padding:18px 0;font-size:13px}.chart{width:100%;height:auto;overflow:visible}.chart-line{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.chart-scope{fill:none;stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:3 4;opacity:.7}.chart-ideal{fill:none;stroke:var(--border-strong);stroke-width:1px;stroke-dasharray:2 6}.chart-axis{stroke:var(--border);stroke-width:1px}.chart-tick{fill:var(--faint);font-size:10px}.bars{flex-direction:column;gap:8px;display:flex}.bar-row{grid-template-columns:96px 1fr auto;align-items:center;gap:10px;font-size:12px;display:grid}.bar-label{color:var(--muted)}.bar-track{background:var(--chip-bg);border-radius:999px;height:8px;position:relative;overflow:hidden}.bar-fill{background:var(--accent);height:100%;transition:width var(--dur-mid) var(--ease-liquid);border-radius:999px}.bar-overdue{background:var(--priority-urgent);border-radius:999px;position:absolute;inset:0 auto 0 0}.bar-value{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.bar-partial .bar-fill{opacity:.55}.bar-partial .bar-label{font-style:italic}.bar-unowned{border-top:1px dashed var(--border);margin-top:4px;padding-top:8px}.bar-unowned .bar-fill{background:var(--border-strong)}.figures{flex-wrap:wrap;gap:22px;display:flex}.figure{flex-direction:column;gap:2px;display:flex}.figure-value{letter-spacing:-.02em;font-size:22px;font-weight:700}.figure-label{color:var(--text);font-size:12px;font-weight:600}.figure-hint{color:var(--faint);font-size:11px}.filter-bar[hidden]{display:none}.scrim{z-index:var(--layer-scrim);background:color-mix(in srgb, var(--bg) 40%, transparent);-webkit-backdrop-filter:blur(var(--blur-scrim));animation:fade-in var(--dur-mid) var(--ease-drift) both;position:fixed;inset:0}.scrim.is-closing{animation:fade-out var(--dur-fast) var(--ease-drift) both}.palette{width:min(560px,100vw - 32px);max-height:60vh;z-index:var(--layer-dialog);border-radius:var(--radius-panel);background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border);box-shadow:var(--shadow-modal);animation:modal-rise .34s var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;translate:-50% -50%}.palette.is-closing{animation:surface-fall .16s var(--ease-liquid) both}.palette-input{background:0 0;border:none;flex:none;height:52px;padding:0 18px;font-size:16px;font-weight:500}.palette-input:focus{outline:none}.palette-input::placeholder{color:var(--faint)}.palette-results{border-top:1px solid var(--border);flex:1;padding:6px;overflow-y:auto}.palette-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:8px 10px 4px;font-size:10.5px;font-weight:750}.palette-item{border-radius:var(--radius-control);width:100%;height:38px;color:var(--text);text-align:left;transition:background var(--dur-fast) var(--ease-drift);align-items:center;gap:10px;padding:0 10px;font-size:13.5px;font-weight:550;display:flex}.palette-item svg{width:16px;height:16px;color:var(--muted);flex:0 0 16px}.palette-item.current{background:var(--accent-soft);color:var(--accent)}.palette-item.current svg{color:var(--accent)}.palette-item-hint{color:var(--faint);margin-left:auto;font-size:11px;font-weight:600}.palette-empty{text-align:center;color:var(--muted);padding:26px 16px;font-size:13px}.menu{z-index:var(--layer-palette);border-radius:var(--radius-menu);background:var(--panel-strong);min-width:200px;-webkit-backdrop-filter:blur(var(--blur-menu)) saturate(1.06);border:1px solid var(--border);box-shadow:var(--shadow-panel);animation:panel-bloom .34s var(--ease-liquid) both;padding:6px;position:absolute}.menu.is-closing{animation:surface-fall .16s var(--ease-liquid) both}.menu-item{border-radius:var(--radius-chip);text-align:left;width:100%;height:32px;transition:background var(--dur-fast) var(--ease-drift);align-items:center;gap:9px;padding:0 9px;font-size:13px;font-weight:550;display:flex}.menu-item:hover{background:var(--chip-bg)}.menu-item.current{background:var(--accent-soft);color:var(--accent)}.menu-item svg{flex:0 0 15px;width:15px;height:15px}.menu-item .shortcut{color:var(--faint);margin-left:auto;font-size:11px;font-weight:600}.menu-separator{background:var(--border);height:1px;margin:5px 4px}.menu-heading{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:7px 9px 4px;font-size:10.5px;font-weight:750}.modal.is-closing{animation:surface-fall .2s var(--ease-liquid) both}.modal-header{padding:20px 22px 6px}.modal-title{font-size:18px;font-weight:750}.modal-subtitle{color:var(--muted);margin-top:4px;font-size:13px}.modal-body{flex-direction:column;gap:12px;padding:14px 22px;display:flex;overflow-y:auto}.modal-footer{justify-content:flex-end;gap:8px;padding:8px 22px 20px;display:flex}.tooltip{z-index:var(--layer-tooltip);border-radius:var(--radius-chip);background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-chrome));border:1px solid var(--border);box-shadow:var(--shadow-lift);letter-spacing:.01em;pointer-events:none;animation:panel-bloom .2s var(--ease-liquid) both;padding:5px 9px;font-size:11.5px;font-weight:600;position:fixed}@keyframes account-rise{0%{opacity:0;filter:blur(10px);transform:translate(-50%,18px)scale(.96)}to{opacity:1;filter:none;transform:translate(-50%)scale(1)}}@keyframes account-fall{0%{opacity:1;filter:none;transform:translate(-50%)scale(1)}to{opacity:0;filter:blur(8px);transform:translate(-50%,10px)scale(.97)}}.account-sheet{width:min(480px,100vw - 32px);max-height:68vh;z-index:var(--layer-dialog);border-radius:var(--radius-panel);background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border);box-shadow:var(--shadow-modal);animation:account-rise .34s var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:16vh;left:50%;overflow:hidden}.account-sheet.is-closing{animation:account-fall .16s var(--ease-liquid) both}.account-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 14px 14px 18px;display:flex}.account-title{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:650}.account-body{flex:auto;padding:18px;overflow-y:auto}.account-note{color:var(--muted);margin:0 0 16px;font-size:13px;line-height:1.5}.account-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.account-summary{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel);padding:14px 16px}.account-email{margin:0;font-size:14px;font-weight:650}.account-state{color:var(--muted);margin:4px 0 0;font-size:13px}.account-server{color:var(--faint);word-break:break-all;margin:8px 0 0;font-size:11px}.field-row{align-items:center;gap:10px;margin-bottom:10px;display:flex}.field-label{color:var(--muted);flex:0 0 78px;font-size:12px;font-weight:600}.field-row .input{flex:auto;min-width:0}@keyframes updates-drop{0%{opacity:0;filter:blur(8px);transform:translateY(-10px)scale(.96)}to{opacity:1;filter:none;transform:none}}.updates{top:calc(var(--topbar-h) + 6px);width:min(420px,100vw - 24px);max-height:min(560px, calc(100vh - var(--topbar-h) - 24px));z-index:var(--layer-dialog);border-radius:var(--radius-panel);background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border);box-shadow:var(--shadow-modal);animation:updates-drop .28s var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;right:12px;overflow:hidden}.updates.is-closing{animation:surface-fall .16s var(--ease-liquid) both}.updates-head{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:8px;padding:10px 10px 10px 16px;display:flex}.updates-title{flex:1;margin:0;font-size:14px;font-weight:650}.updates-list{flex:auto;padding:6px;overflow-y:auto}.update{border-radius:var(--radius-card);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;animation:surface-rise var(--dur-mid) var(--ease-liquid) both;animation-delay:calc(var(--index) * 22ms);transition:background var(--dur-fast) var(--ease-drift), transform var(--dur-fast) var(--ease-soft);background:0 0;border:none;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.update:hover{background:var(--chip-bg);transform:translateY(-1px)}.update:active{transform:translateY(0)scale(.99)}.update-dot{background:0 0;border-radius:999px;flex:none;width:6px;height:6px;margin-top:7px}.update.unread .update-dot{background:var(--accent)}.update-body{flex:auto;min-width:0}.update-line{align-items:baseline;gap:5px;font-size:13px;line-height:1.4;display:flex}.update-who{color:var(--muted);flex:none}.update-ref{color:var(--muted);letter-spacing:.02em;flex:none;font-size:11px;font-weight:650}.update-title{font-weight:550}.update.unread .update-title{font-weight:650}.update-detail{color:var(--muted);margin-top:2px;font-size:12px;display:block}.update-when{color:var(--faint);font-variant-numeric:tabular-nums;flex:none;margin-top:1px;font-size:11px}.account-locked{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel);margin-top:16px;padding:14px 16px}.account-locked-title{align-items:center;gap:7px;margin:0 0 8px;font-size:13px;font-weight:650;display:flex}.account-locked .account-note{margin-bottom:0}.account-tradeoff{color:var(--muted);margin:10px 0 14px;padding-left:18px;font-size:12px;line-height:1.55}.account-tradeoff li{margin-bottom:4px}.rules{width:min(560px,100vw - 32px);max-height:74vh;z-index:var(--layer-dialog);border-radius:var(--radius-panel);background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border);box-shadow:var(--shadow-modal);animation:account-rise .34s var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:12vh;left:50%;overflow:hidden}.rules.is-closing{animation:account-fall .16s var(--ease-liquid) both}.rules-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;padding:14px 14px 14px 18px;display:flex}.rules-title{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:650}.rules-list{flex:auto;padding:16px 18px 20px;overflow-y:auto}.rules-note,.rules-empty{color:var(--muted);margin:0 0 14px;font-size:12.5px;line-height:1.55}.rules-empty{border:1px dashed var(--border);border-radius:var(--radius-card);padding:16px}.rule{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel);animation:surface-rise var(--dur-mid) var(--ease-liquid) both;animation-delay:calc(var(--index) * 24ms);transition:opacity var(--dur-mid) var(--ease-drift);align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}.rule-off{opacity:.5}.rule-toggle{flex:none;margin-top:2px}.rule-body{flex:auto;min-width:0}.rule-name{margin:0;font-size:13px;font-weight:650}.rule-sentence{color:var(--muted);margin:3px 0 0;font-size:12.5px;line-height:1.5}.rules-add{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.rules-add-title{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;font-size:12px;font-weight:650}.rule-recipe{border:1px dashed var(--border-strong);border-radius:var(--radius-card);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-drift), border-color var(--dur-mid) var(--ease-liquid), transform var(--dur-fast) var(--ease-soft);background:0 0;margin-bottom:8px;padding:11px 14px;font-size:12.5px;line-height:1.5;display:block}.rule-recipe:hover:not(:disabled){background:var(--chip-bg);border-color:var(--accent);transform:translateY(-1px)}.rule-recipe:active:not(:disabled){transform:translateY(0)scale(.995)}.rule-recipe:disabled{opacity:.5;cursor:default}.importer{width:min(560px,100vw - 32px);max-height:78vh;z-index:var(--layer-dialog);border-radius:var(--radius-panel);background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border);box-shadow:var(--shadow-modal);animation:account-rise .34s var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:10vh;left:50%;overflow:hidden}.importer.is-closing{animation:account-fall .16s var(--ease-liquid) both}.importer-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;padding:14px 14px 14px 18px;display:flex}.importer-title{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:650}.importer-body{flex:auto;padding:16px 18px 20px;overflow-y:auto}.importer-note{color:var(--muted);margin:0 0 14px;font-size:12.5px;line-height:1.55}.importer-summary{margin:0 0 14px;font-size:13.5px;font-weight:600}.importer-problems{border:1px solid var(--priority-urgent);border-radius:var(--radius-card);background:color-mix(in srgb, var(--priority-urgent) 8%, transparent);margin-bottom:16px;padding:10px 14px;font-size:12.5px}.importer-problems summary{cursor:pointer;font-weight:600}.importer-problems ul{color:var(--muted);margin:8px 0 0;padding-left:18px;line-height:1.6}.importer-section{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;font-size:12px;font-weight:650}.importer-map{margin-bottom:16px}.importer-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.importer-file{padding:7px 10px}.repeating{width:min(520px,100vw - 32px);max-height:74vh;z-index:var(--layer-dialog);border-radius:var(--radius-panel);background:var(--panel-strong);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border);box-shadow:var(--shadow-modal);animation:account-rise .34s var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:12vh;left:50%;overflow:hidden}.repeating.is-closing{animation:account-fall .16s var(--ease-liquid) both}.repeating-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;padding:14px 14px 14px 18px;display:flex}.repeating-title{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:650}.repeating-body{flex:auto;padding:16px 18px 20px;overflow-y:auto}.repeating-note,.repeating-empty{color:var(--muted);margin:0 0 14px;font-size:12.5px;line-height:1.55}.repeating-empty{border:1px dashed var(--border);border-radius:var(--radius-card);padding:16px}.repeat{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel);animation:surface-rise var(--dur-mid) var(--ease-liquid) both;animation-delay:calc(var(--index) * 24ms);transition:opacity var(--dur-mid) var(--ease-drift);align-items:flex-start;gap:12px;margin-bottom:8px;padding:11px 14px;display:flex}.repeat-off{opacity:.5}.repeat-toggle{flex:none;margin-top:2px}.repeat-body{flex:auto;min-width:0}.repeat-name{margin:0;font-size:13px;font-weight:650}.repeat-when{color:var(--muted);margin:3px 0 0;font-size:12.5px}.repeating-add{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.repeating-add-title{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px;font-size:12px;font-weight:650}.repeat-interval{flex:none;max-width:72px}.account-people{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel);margin-top:16px;padding:14px 16px}.member-list{margin:0 0 14px;padding:0;list-style:none}.member-row{grid-template-columns:1fr 1fr auto;align-items:baseline;gap:8px;padding:4px 0;font-size:12.5px;display:grid}.member-name{font-weight:600}.member-email{color:var(--muted);font-size:11.5px}.member-role{color:var(--muted);text-transform:capitalize;font-size:11px}.member-role-picker{flex:none;max-width:110px}.invite{border-top:1px dashed var(--border);margin-top:12px;padding-top:12px}.invite-result{margin-top:10px}.invite-result[hidden]{display:none}.invite-link{width:100%;font-size:11.5px}.account-tokens{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel);margin-top:16px;padding:14px 16px}.token-result .invite-link{margin-top:6px}.token-row{grid-template-columns:1fr 1fr auto auto}.token-row .icon-btn{opacity:0;transition:opacity var(--dur-fast) var(--ease-drift)}.token-row:hover .icon-btn,.token-row:focus-within .icon-btn{opacity:1}.account-hooks{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel);margin-top:16px;padding:14px 16px}.hook-row{grid-template-columns:1fr auto auto}.hook-row .icon-btn{opacity:0;transition:opacity var(--dur-fast) var(--ease-drift)}.hook-row:hover .icon-btn,.hook-row:focus-within .icon-btn{opacity:1}.hook-state{color:var(--muted);font-size:12px}.hook-failing{color:var(--state-canceled,#ef4444)}.hook-result .invite-link{margin-top:6px}.cycle-start{gap:8px;display:grid}.cycle-empty{color:var(--muted);margin:0;font-size:12px}.cycle-weeks{width:100%}.cycle-preview{color:var(--muted);margin:0;font-size:12px}.view-drift{animation:surface-rise var(--dur-mid) var(--ease-liquid) both;align-items:center;gap:6px;padding:4px 8px 6px 30px;display:flex}.view-drift-note{color:var(--muted);margin-right:auto;font-size:11px}.view-drift .btn{padding:2px 8px;font-size:11px}.nav-rename{opacity:0;transition:opacity var(--dur-fast) var(--ease-drift)}.nav-item-row:hover .nav-rename,.nav-item-row:focus-within .nav-rename{opacity:1}.goal-projects{border:1px solid var(--border);border-radius:var(--radius-modal,22px);background:var(--panel-strong);-webkit-backdrop-filter:blur(24px)saturate(1.1);backdrop-filter:blur(24px)saturate(1.1);width:min(460px,100vw - 48px);max-height:min(560px,100vh - 96px);box-shadow:var(--shadow);z-index:var(--layer-dialog);animation:modal-rise var(--dur-mid) var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;translate:-50% -50%}.goal-projects.is-closing{animation:fade-out var(--dur-fast) var(--ease-drift) both}.goal-projects-head,.goal-projects-foot{align-items:center;gap:10px;padding:14px 18px;display:flex}.goal-projects-head{border-bottom:1px solid var(--border)}.goal-projects-foot{border-top:1px solid var(--border)}.goal-projects-title{margin:0 auto 0 0;font-size:15px;font-weight:650}.goal-projects-summary{color:var(--muted);margin:0 auto 0 0;font-size:12px}.goal-projects-body{gap:2px;padding:8px;display:grid;overflow-y:auto}.goal-project-row{border-radius:var(--radius-item,12px);cursor:pointer;transition:background var(--dur-fast) var(--ease-drift);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.goal-project-row:hover{background:var(--panel)}.milestones{border:1px solid var(--border);border-radius:var(--radius-modal,22px);background:var(--panel-strong);-webkit-backdrop-filter:blur(24px)saturate(1.1);backdrop-filter:blur(24px)saturate(1.1);width:min(480px,100vw - 48px);max-height:min(620px,100vh - 96px);box-shadow:var(--shadow);z-index:var(--layer-dialog);animation:modal-rise var(--dur-mid) var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;translate:-50% -50%}.milestones.is-closing{animation:fade-out var(--dur-fast) var(--ease-drift) both}.milestones-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 18px;display:flex}.milestones-title{margin:0 auto 0 0;font-size:15px;font-weight:650}.milestones-body{gap:10px;padding:14px 18px 18px;display:grid;overflow-y:auto}.milestones-note,.milestones-empty{color:var(--muted);margin:0;font-size:12px}.milestone{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel);animation:surface-rise var(--dur-mid) var(--ease-liquid) both;animation-delay:calc(var(--index) * 28ms);grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.milestone-name{margin:0;font-size:13px;font-weight:600}.milestone-when{color:var(--muted);margin:2px 0 0;font-size:11px}.milestone .icon-btn{opacity:0;transition:opacity var(--dur-fast) var(--ease-drift)}.milestone:hover .icon-btn,.milestone:focus-within .icon-btn{opacity:1}.milestones-add{border-top:1px solid var(--border);gap:8px;margin-top:4px;padding-top:14px;display:grid}.milestones-add-title{margin:0;font-size:12px;font-weight:650}.relation-add{animation:surface-rise var(--dur-mid) var(--ease-liquid) both;grid-template-columns:auto 1fr auto;gap:8px;margin-top:8px;display:grid}.detail-empty{color:var(--muted);margin:6px 0 0;font-size:12px}.chip-new{color:var(--muted);border-style:dashed}.time-add{grid-template-columns:90px 1fr auto;gap:8px;margin-top:8px;display:grid}.time-entry .icon-btn{opacity:0;transition:opacity var(--dur-fast) var(--ease-drift)}.time-entry:hover .icon-btn,.time-entry:focus-within .icon-btn{opacity:1}.project-settings{border-bottom:1px solid var(--border);gap:8px;padding-bottom:12px;display:grid}.nav-more{color:var(--muted);text-align:left;cursor:pointer;border-radius:var(--radius-item,12px);transition:color var(--dur-fast) var(--ease-drift);background:0 0;border:0;margin-top:4px;padding:4px 10px;font-size:11px}.nav-more:hover{color:var(--text)}.commits{border:1px solid var(--border);border-radius:var(--radius-modal,22px);background:var(--panel-strong);-webkit-backdrop-filter:blur(24px)saturate(1.1);backdrop-filter:blur(24px)saturate(1.1);width:min(620px,100vw - 48px);max-height:min(640px,100vh - 96px);box-shadow:var(--shadow);z-index:var(--layer-dialog);animation:modal-rise var(--dur-mid) var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;translate:-50% -50%}.commits.is-closing{animation:fade-out var(--dur-fast) var(--ease-drift) both}.commits-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 18px;display:flex}.commits-title{margin:0 auto 0 0;font-size:15px;font-weight:650}.commits-body{gap:12px;padding:14px 18px 18px;display:grid;overflow-y:auto}.commits-note,.commits-empty{color:var(--muted);margin:0;font-size:12px}.commits-error{color:var(--state-canceled,#ef4444);margin:0;font-size:12px}.commit-group{animation:surface-rise var(--dur-mid) var(--ease-liquid) both;animation-delay:calc(var(--index) * 28ms);gap:6px;display:grid}.commit-reference{letter-spacing:.02em;margin:0;font-size:12px;font-weight:700}.commit-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.commit{border-radius:var(--radius-item,12px);background:var(--panel);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:6px 10px;font-size:12px;display:grid}.commit-hash{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.commit-author{color:var(--muted);max-width:120px;font-size:11px}.ask{border:1px solid var(--border);border-radius:var(--radius-modal,22px);background:var(--panel-strong);-webkit-backdrop-filter:blur(24px)saturate(1.1);backdrop-filter:blur(24px)saturate(1.1);width:min(420px,100vw - 48px);max-height:min(60vh,100vh - 120px);box-shadow:var(--shadow);z-index:var(--layer-ask);animation:modal-rise var(--dur-mid) var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;translate:-50% -50%}.ask.is-closing{animation:fade-out var(--dur-fast) var(--ease-drift) both}.ask-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 16px;display:flex}.ask-title{margin:0 auto 0 0;font-size:14px;font-weight:650}.ask-body{gap:6px;padding:14px 16px;display:grid;overflow-y:auto}.ask-note{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.ask-foot{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 16px 14px;display:flex}.ask-choices{gap:2px}.ask-choice-row{animation:surface-rise var(--dur-mid) var(--ease-liquid) both;animation-delay:calc(var(--index) * 24ms);align-items:center;gap:4px;display:flex}.ask-choice{border-radius:var(--radius-item,12px);min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-drift), transform var(--dur-fast) var(--ease-soft);background:0 0;border:0;flex:1;align-items:baseline;gap:8px;padding:9px 11px;font-size:13px;display:flex}.ask-choice:hover{background:var(--panel);transform:translate(2px)}.ask-choice:active{transform:translate(0)scale(.99)}.ask-choice-hint{color:var(--muted);font-size:11px}.ask-choice-remove{opacity:0;transition:opacity var(--dur-fast) var(--ease-drift)}.ask-choice-row:hover .ask-choice-remove,.ask-choice-row:focus-within .ask-choice-remove{opacity:1}.mcp-setup{width:min(560px,100vw - 48px)}.mcp-config{resize:vertical;white-space:pre;height:auto;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.6;overflow-x:auto}.mcp-missing{color:var(--state-canceled,#ef4444)}.settings-menu{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel-strong);-webkit-backdrop-filter:blur(20px)saturate(1.1);backdrop-filter:blur(20px)saturate(1.1);min-width:232px;box-shadow:var(--shadow);z-index:var(--layer-menu);animation:panel-bloom var(--dur-mid) var(--ease-liquid) both;transform-origin:100% 0;padding:6px;position:fixed}.settings-menu.is-closing{animation:fade-out var(--dur-fast) var(--ease-drift) both}.settings-group{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:8px 10px 4px;font-size:10px;font-weight:700}.settings-group:first-child{margin-top:4px}.settings-item{border-radius:var(--radius-item,12px);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-drift), transform var(--dur-fast) var(--ease-soft);background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.settings-item:hover,.settings-item:focus-visible{background:var(--panel);transform:translate(2px)}.settings-item:active{transform:translate(0)scale(.99)}.settings-icon{color:var(--muted);place-items:center;display:grid}.settings-item:hover .settings-icon{color:var(--text)}.assistants{border:1px solid var(--border);border-radius:var(--radius-modal,22px);background:var(--panel-strong);-webkit-backdrop-filter:blur(24px)saturate(1.1);backdrop-filter:blur(24px)saturate(1.1);width:min(520px,100vw - 48px);max-height:min(620px,100vh - 96px);box-shadow:var(--shadow);z-index:var(--layer-dialog);animation:modal-rise var(--dur-mid) var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;translate:-50% -50%}.assistants.is-closing{animation:fade-out var(--dur-fast) var(--ease-drift) both}.assistants-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 18px;display:flex}.assistants-title{margin:0 auto 0 0;font-size:15px;font-weight:650}.assistants-body{gap:8px;padding:14px 18px 18px;display:grid;overflow-y:auto}.assistants-note{color:var(--muted);margin:0 0 4px;font-size:12px;line-height:1.5}.assistants-fineprint{border-top:1px solid var(--border);color:var(--muted);margin:8px 0 0;padding-top:12px;font-size:11px;line-height:1.55}.assistant{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--panel);animation:surface-rise var(--dur-mid) var(--ease-liquid) both;animation-delay:calc(var(--index) * 28ms);align-items:center;gap:12px;padding:10px 12px;display:flex}.assistant-what{min-width:0;margin-right:auto}.assistant-name{margin:0;font-size:13px;font-weight:600}.assistant-state{margin:2px 0 0;font-size:11px}.assistant-on{color:var(--state-completed,#22c55e)}.assistant-off{color:var(--muted)}.assistant-stale{color:var(--state-started,#f2c94c)}.assistant-stuck{color:var(--state-canceled,#ef4444)}.assistant-absent{color:var(--muted);opacity:.65}.assistant-quiet{color:var(--muted);opacity:.7;font-size:11px}.assistant .btn{flex-shrink:0}.assistants-other{margin-top:4px}.assistants-more{border:1px dashed var(--border-strong);border-radius:var(--radius-card);width:100%;font:inherit;color:var(--muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-drift), background var(--dur-fast) var(--ease-drift);background:0 0;padding:8px 10px;font-size:12px}.assistants-more:hover{color:var(--text);background:var(--panel)}.assistants-forms{gap:12px;margin-top:10px;display:grid}.assistants-form{animation:surface-rise var(--dur-mid) var(--ease-liquid) both;gap:4px;display:grid}.assistants-form-head{align-items:center;gap:8px;display:flex}.assistants-form-name{margin:0 auto 0 0;font-size:12px;font-weight:650}.assistants-form-hint{color:var(--muted);margin:0;font-size:11px;line-height:1.45}.assistants-snippet{resize:vertical;white-space:pre;height:auto;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.55;overflow-x:auto}.assistant{flex-direction:column;align-items:stretch;gap:0}.assistant-row{align-items:center;gap:12px;display:flex}.assistant-more{font:inherit;color:var(--muted);cursor:pointer;transition:color var(--dur-fast) var(--ease-drift);background:0 0;border:0;align-items:center;gap:6px;margin-top:8px;padding:4px 0 0;font-size:11px;display:flex}.assistant-more:hover{color:var(--text)}.assistant-more svg{transition:transform var(--dur-fast) var(--ease-liquid)}.assistant-more[aria-expanded=true] svg{transform:rotate(90deg)}.assistant-habits{border-top:1px solid var(--border);animation:surface-rise var(--dur-mid) var(--ease-liquid) both;gap:10px;margin-top:10px;padding-top:10px;display:grid}.assistant-habit{cursor:pointer;grid-template-columns:auto 1fr;align-items:start;gap:9px;display:grid}.assistant-habit input{margin-top:2px}.assistant-habit-what{gap:2px;display:grid}.assistant-habit-name{font-size:12px;font-weight:600}.assistant-habit-why{color:var(--muted);font-size:11px;line-height:1.45}.assistant-habit-note{color:var(--muted);opacity:.8;margin:2px 0 0;font-size:10px}.context-menu{transform-origin:0 0}.settings-item.is-danger{color:var(--danger,#e5484d)}.project-folder{align-items:center;gap:8px}.project-folder-path{min-width:0;color:var(--muted);font-variant-numeric:tabular-nums;text-align:left;white-space:nowrap;text-overflow:ellipsis;direction:rtl;flex:1;font-size:12px;overflow:hidden}.review{z-index:var(--layer-dialog);background:var(--panel-strong);width:min(560px,100vw - 32px);max-height:min(680px,100vh - 48px);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-modal);animation:modal-rise .42s var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;translate:-50% -50%}.review.is-closing{animation:surface-fall .2s var(--ease-liquid) both}.review-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:14px 14px 10px;display:flex}.review-title{flex:1;font-size:15px;font-weight:750}.review-body{gap:10px;padding:14px;display:grid;overflow-y:auto}.review-note{color:var(--muted);font-size:11.5px;line-height:1.5}.review-empty-title{font-size:14px;font-weight:700}.review-batch{border:1px solid var(--border);border-left:3px solid var(--faint);border-radius:var(--radius-field);background:var(--panel);gap:7px;padding:11px 12px;display:grid}.review-batch.is-assistant{border-left-color:var(--accent)}.review-batch-head{align-items:baseline;gap:8px;display:flex}.review-who{flex:1;font-size:12.5px;font-weight:700}.review-when{color:var(--faint);font-size:11px}.review-changes{gap:3px;list-style:none;display:grid}.review-change{align-items:baseline;gap:7px;font-size:12px;display:flex}.review-change-said{color:var(--muted);white-space:nowrap}.review-change-title{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.review-more{color:var(--faint);font-style:italic}.review-undo{justify-self:start;margin-top:2px}.help{z-index:var(--layer-dialog);background:var(--panel-strong);width:min(440px,100vw - 32px);max-height:min(620px,100vh - 48px);-webkit-backdrop-filter:blur(var(--blur-modal)) saturate(1.08);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow-modal);animation:modal-rise .42s var(--ease-liquid) both;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;translate:-50% -50%}.help.is-closing{animation:surface-fall .2s var(--ease-liquid) both}.help-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:14px 16px 10px;display:flex}.help-title{flex:1;font-size:15px;font-weight:750}.help-body{padding:6px 16px 16px;overflow-y:auto}.help-group{margin-top:14px}.help-group-name{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-bottom:6px;font-size:10.5px;font-weight:700}.help-rows{grid-template-columns:auto 1fr;align-items:baseline;gap:6px 12px;display:grid}.help-keys{justify-self:start}.help-what{font-size:13px}.help kbd{border:1px solid var(--border-strong);background:var(--panel);text-align:center;border-bottom-width:2px;border-radius:6px;min-width:22px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;font-weight:700;display:inline-block}.sign-in-page{place-items:center;min-height:100dvh;padding:24px;display:grid}.sign-in-card{border-radius:var(--radius-panel);background:var(--panel-strong);border:1px solid var(--border);width:min(100%,380px);box-shadow:var(--shadow-modal);-webkit-backdrop-filter:blur(var(--blur-panel));padding:32px}.sign-in-title{letter-spacing:-.02em;margin:0;font-size:28px;font-weight:650}.sign-in-sub{color:var(--muted);margin:6px 0 26px;font-size:14px}.sign-in-form{flex-direction:column;gap:14px;display:flex}.sign-in-field{flex-direction:column;gap:6px;display:flex}.sign-in-field[hidden]{display:none}.sign-in-label{color:var(--muted);font-size:12px;font-weight:550}.sign-in-hint,.sign-in-problem{margin:0;font-size:13px;line-height:1.4}.sign-in-hint{color:var(--faint)}.sign-in-problem{color:var(--priority-urgent);min-height:0}.sign-in-problem:empty{display:none}.sign-in-submit{justify-content:center;height:44px;margin-top:4px}.sign-in-swap{justify-content:center;margin-top:18px;display:flex}@media (prefers-reduced-motion:no-preference){.sign-in-card{animation:sign-in-rise var(--dur-mid) var(--ease-out,ease-out) both}}@keyframes sign-in-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
