:root{--bg:#f7f8f9;--surface:#fff;--surface-sunken:#f1f2f4;--surface-hover:#f4f5f7;--surface-active:#eceef1;--border:#e3e5e9;--border-strong:#d0d3d9;--border-focus:#3b6fe0;--text:#16181d;--text-muted:#62666d;--text-subtle:#8b9098;--text-inverted:#fff;--accent:#3b6fe0;--accent-hover:#3363d4;--accent-soft:#eaf0fd;--accent-text:#2a55b8;--danger:#d0342c;--danger-soft:#fdeceb;--danger-text:#b02a23;--status-new-fg:#6b4ed8;--status-new-bg:#f0ecfd;--status-progress-fg:#2a6fd4;--status-progress-bg:#e9f1fd;--status-blocked-fg:#55606f;--status-blocked-bg:#eceef2;--status-waiting-fg:#a8620a;--status-waiting-bg:#fdf1e2;--status-partial-fg:#0f7a6c;--status-partial-bg:#e5f5f2;--status-done-fg:#2c7a39;--status-done-bg:#eaf6ec;--level-l1-fg:#2c7a39;--level-l1-bg:#eaf6ec;--level-l2-fg:#a8620a;--level-l2-bg:#fdf1e2;--level-l3-fg:#b02a23;--level-l3-bg:#fdeceb;--chart-new:#8b5cf6;--chart-progress:#3b82f6;--chart-blocked:#94a3b8;--chart-done:#10b981;--chart-l1:#10b981;--chart-l2:#f59e0b;--chart-l3:#f43f5e;--chart-done-ink:#00a878;--chart-progress-ink:#2563eb;--chart-ramp-1:#5b21b6;--chart-ramp-2:#7c3aed;--chart-ramp-3:#9a72f5;--chart-ramp-4:#b79ffa;--chart-ramp-1-ink:#fff;--chart-ramp-2-ink:#fff;--chart-ramp-3-ink:#fff;--chart-ramp-4-ink:#3b1a78;--chart-created:#3b82f6;--chart-created-lift:#8b5cf6;--chart-completed:#10b981;--chart-grid:#eceef3;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--r-sm:4px;--r-md:6px;--r-lg:8px;--r-xl:12px;--r-full:999px;--shadow-sm:0 1px 2px #1012160d;--shadow-md:0 4px 12px #10121614;--shadow-lg:0 16px 40px #10121624;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif;--font-mono:"SFMono-Regular", "SF Mono", Menlo, Consolas, monospace;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:26px;--text-3xl:32px;--sidebar-w:232px;--detail-w:340px;--header-h:48px;--ease:cubic-bezier(.4, 0, .2, 1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0c0e;--surface:#121316;--surface-sunken:#0e0f11;--surface-hover:#191b1f;--surface-active:#202329;--border:#24262c;--border-strong:#33363e;--border-focus:#5b8def;--text:#f2f3f5;--text-muted:#9aa0a9;--text-subtle:#6e747d;--text-inverted:#0b0c0e;--accent:#5b8def;--accent-hover:#6f9bf2;--accent-soft:#16243d;--accent-text:#9dbcf7;--danger:#e5584f;--danger-soft:#2f1614;--danger-text:#f0918b;--status-new-fg:#b3a1f5;--status-new-bg:#1e1932;--status-progress-fg:#8fb6f5;--status-progress-bg:#14203a;--status-blocked-fg:#a8b3c2;--status-blocked-bg:#1e2229;--status-waiting-fg:#e0a563;--status-waiting-bg:#2c1f0e;--status-partial-fg:#63c7b6;--status-partial-bg:#0f2622;--status-done-fg:#7cc98a;--status-done-bg:#12250f;--level-l1-fg:#7cc98a;--level-l1-bg:#12250f;--level-l2-fg:#e0a563;--level-l2-bg:#2c1f0e;--level-l3-fg:#f0918b;--level-l3-bg:#2f1614;--chart-new:#a78bfa;--chart-progress:#60a5fa;--chart-blocked:#94a3b8;--chart-done:#34d399;--chart-l1:#34d399;--chart-l2:#fbbf24;--chart-l3:#fb7185;--chart-done-ink:#34d399;--chart-progress-ink:#60a5fa;--chart-ramp-1:#c4b5fd;--chart-ramp-2:#a78bfa;--chart-ramp-3:#8b5cf6;--chart-ramp-4:#6d28d9;--chart-ramp-1-ink:#2e1065;--chart-ramp-2-ink:#2e1065;--chart-ramp-3-ink:#fff;--chart-ramp-4-ink:#fff;--chart-created:#60a5fa;--chart-created-lift:#a78bfa;--chart-completed:#34d399;--chart-grid:#24272e;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 16px 40px #0009}}:root[data-theme=dark]{--bg:#0b0c0e;--surface:#121316;--surface-sunken:#0e0f11;--surface-hover:#191b1f;--surface-active:#202329;--border:#24262c;--border-strong:#33363e;--border-focus:#5b8def;--text:#f2f3f5;--text-muted:#9aa0a9;--text-subtle:#6e747d;--text-inverted:#0b0c0e;--accent:#5b8def;--accent-hover:#6f9bf2;--accent-soft:#16243d;--accent-text:#9dbcf7;--danger:#e5584f;--danger-soft:#2f1614;--danger-text:#f0918b;--status-new-fg:#b3a1f5;--status-new-bg:#1e1932;--status-progress-fg:#8fb6f5;--status-progress-bg:#14203a;--status-blocked-fg:#a8b3c2;--status-blocked-bg:#1e2229;--status-waiting-fg:#e0a563;--status-waiting-bg:#2c1f0e;--status-partial-fg:#63c7b6;--status-partial-bg:#0f2622;--status-done-fg:#7cc98a;--status-done-bg:#12250f;--level-l1-fg:#7cc98a;--level-l1-bg:#12250f;--level-l2-fg:#e0a563;--level-l2-bg:#2c1f0e;--level-l3-fg:#f0918b;--level-l3-bg:#2f1614;--chart-new:#a78bfa;--chart-progress:#60a5fa;--chart-blocked:#94a3b8;--chart-done:#34d399;--chart-l1:#34d399;--chart-l2:#fbbf24;--chart-l3:#fb7185;--chart-done-ink:#34d399;--chart-progress-ink:#60a5fa;--chart-ramp-1:#c4b5fd;--chart-ramp-2:#a78bfa;--chart-ramp-3:#8b5cf6;--chart-ramp-4:#6d28d9;--chart-ramp-1-ink:#2e1065;--chart-ramp-2-ink:#2e1065;--chart-ramp-3-ink:#fff;--chart-ramp-4-ink:#fff;--chart-created:#60a5fa;--chart-created-lift:#a78bfa;--chart-completed:#34d399;--chart-grid:#24272e;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 16px 40px #0009}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);min-width:320px;color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.5}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{letter-spacing:-.011em;color:var(--text);font-weight:600}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--border-focus);outline-offset:1px;border-radius:var(--r-sm)}:focus:not(:focus-visible){outline:none}::selection{background:var(--accent-soft);color:var(--accent-text)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r-full);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{justify-content:center;align-items:center;gap:var(--s-2);border-radius:var(--r-md);white-space:nowrap;transition:background .12s var(--ease), border-color .12s var(--ease), color .12s var(--ease);border:1px solid #0000;font-weight:500;display:inline-flex}.btn-md{height:32px;padding:0 var(--s-3);font-size:var(--text-base)}.btn-sm{height:26px;padding:0 var(--s-2);font-size:var(--text-sm)}.btn:disabled{opacity:.45}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.btn-secondary:hover:not(:disabled){background:var(--surface-hover)}.btn-ghost{color:var(--text-muted);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.btn-danger{color:var(--danger-text);background:0 0}.btn-danger:hover:not(:disabled){background:var(--danger-soft)}.icon-btn{border-radius:var(--r-md);width:28px;height:28px;color:var(--text-muted);transition:background .12s var(--ease), color .12s var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.icon-btn:disabled{opacity:.4}.pill{align-items:center;gap:var(--s-1);border-radius:var(--r-sm);white-space:nowrap;font-weight:500;line-height:1;display:inline-flex}.pill-md{height:20px;padding:0 var(--s-2);font-size:var(--text-sm)}.pill-sm{height:18px;font-size:var(--text-xs);padding:0 6px}.status-mark{min-width:0;color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap;align-items:center;gap:6px;font-weight:500;line-height:1;display:inline-flex}.status-mark-md{font-size:var(--text-base)}.status-mark svg{flex:none}.status-mark.is-new svg{color:var(--status-new-fg)}.status-mark.is-progress svg{color:var(--status-progress-fg)}.status-mark.is-blocked svg{color:var(--status-blocked-fg)}.status-mark.is-waiting svg{color:var(--status-waiting-fg)}.status-mark.is-partial svg{color:var(--status-partial-fg)}.status-mark.is-done svg{color:var(--status-done-fg)}.status-mark.is-done{color:var(--text-subtle)}.pill.is-new{background:var(--status-new-bg);color:var(--status-new-fg)}.pill.is-progress{background:var(--status-progress-bg);color:var(--status-progress-fg)}.pill.is-blocked{background:var(--status-blocked-bg);color:var(--status-blocked-fg)}.pill.is-waiting{background:var(--status-waiting-bg);color:var(--status-waiting-fg)}.pill.is-partial{background:var(--status-partial-bg);color:var(--status-partial-fg)}.pill.is-done{background:var(--status-done-bg);color:var(--status-done-fg)}.pill-level{font-family:var(--font-mono);letter-spacing:.02em;font-size:10px}.pill-level.is-l1{background:var(--level-l1-bg);color:var(--level-l1-fg)}.pill-level.is-l2{background:var(--level-l2-bg);color:var(--level-l2-fg)}.pill-level.is-l3{background:var(--level-l3-bg);color:var(--level-l3-fg)}.pill-tone-neutral{background:var(--surface-sunken);color:var(--text-muted)}.pill-tone-accent{background:var(--accent-soft);color:var(--accent-text)}.pill-tone-danger{background:var(--danger-soft);color:var(--danger-text)}.field{gap:5px;min-width:0;display:grid}.field-label{font-size:var(--text-sm);color:var(--text-muted);align-items:center;gap:3px;font-weight:500;display:flex}.field-required{color:var(--danger-text)}.field-hint{font-size:var(--text-xs);color:var(--text-subtle)}.field-error{font-size:var(--text-xs);color:var(--danger-text)}.field input,.field select,.field textarea,.input{width:100%;min-width:0;height:32px;padding:0 var(--s-2);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:var(--text-base);transition:border-color .12s var(--ease), box-shadow .12s var(--ease)}.field textarea,textarea.input{height:auto;min-height:68px;padding:var(--s-2);resize:vertical;line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus,.input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.field input::placeholder,.field textarea::placeholder,.input::placeholder{color:var(--text-subtle)}.field input:disabled,.field select:disabled,.field textarea:disabled{background:var(--surface-sunken);color:var(--text-subtle)}:root[data-theme=dark] input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert()opacity(.6)}:root[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert()opacity(.6)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert()opacity(.6)}:root:not([data-theme=light]) input[type=date]::-webkit-calendar-picker-indicator{filter:invert()opacity(.6)}}.form-error{align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);border:1px solid var(--danger);border-radius:var(--r-md);background:var(--danger-soft);color:var(--danger-text);font-size:var(--text-base);display:flex}.section-heading{justify-content:space-between;align-items:flex-end;gap:var(--s-4);flex-wrap:wrap;display:flex}.section-heading-text{gap:2px;min-width:0;display:grid}.section-heading h2{align-items:center;gap:var(--s-2);font-size:var(--text-lg);display:flex}.section-count{font-size:var(--text-sm);color:var(--text-subtle);font-variant-numeric:tabular-nums;font-weight:500}.section-heading-actions{align-items:center;gap:var(--s-2);display:flex}.kicker{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);font-weight:600}.empty-state{justify-items:center;gap:var(--s-2);padding:var(--s-10) var(--s-6);text-align:center;display:grid}.empty-icon{border-radius:var(--r-lg);background:var(--surface-sunken);width:36px;height:36px;color:var(--text-subtle);margin-bottom:var(--s-1);place-items:center;display:grid}.empty-title{color:var(--text);font-weight:600}.empty-copy{font-size:var(--text-base);color:var(--text-muted);max-width:42ch}.empty-action{margin-top:var(--s-2)}.spinner-wrap{align-items:center;gap:var(--s-2);color:var(--text-muted);font-size:var(--text-base);display:inline-flex}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.meter{border-radius:var(--r-full);background:var(--surface-sunken);height:4px;overflow:hidden}.meter-fill{border-radius:var(--r-full);background:var(--accent);height:100%;transition:width .3s var(--ease)}.meter-done{background:var(--status-done-fg)}.meter-progress{background:var(--status-progress-fg)}.meter-waiting{background:var(--status-waiting-fg)}.meter-danger{background:var(--danger)}.modal-note{font-size:var(--text-base);color:var(--text-muted);line-height:1.55}.btn-destructive{background:var(--danger)}.btn-destructive:hover:not(:disabled){background:var(--danger-text)}.card{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface)}.tabular{font-variant-numeric:tabular-nums}.type-icon{color:var(--text-subtle);flex:none;place-items:center;display:inline-grid}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);background:var(--bg);height:100%;display:grid}.sidebar{gap:var(--s-2);padding:var(--s-3);border-right:1px solid var(--border);background:var(--surface-sunken);grid-template-rows:auto 1fr auto;min-height:0;display:grid}.sidebar-brand{align-items:center;gap:var(--s-2);padding:var(--s-2);display:flex}.brand-mark{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);flex:none;width:26px;height:26px;position:relative}.brand-dot{border-radius:var(--r-full);background:#c9161d;position:absolute}.brand-dot-1{width:7px;height:7px;top:12px;left:5px}.brand-dot-2{width:9px;height:9px;top:7px;right:5px}.brand-dot-3{width:5px;height:5px;bottom:5px;left:11px}.brand-text{min-width:0;line-height:1.25;display:grid}.brand-text strong{font-size:var(--text-base);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.brand-text span{font-size:var(--text-xs);color:var(--text-subtle)}.sidebar-nav{align-content:start;gap:2px;min-height:0;margin:0;padding:0;list-style:none;display:grid;position:relative;overflow-y:auto}.nav-item{align-items:center;gap:var(--s-2);width:100%;height:30px;padding:0 var(--s-2);border-radius:var(--r-md);color:var(--text-muted);font-size:var(--text-base);text-align:left;transition:background .12s var(--ease), color .12s var(--ease);background:0 0;border:0;font-weight:500;display:flex}.nav-item:hover{background:var(--surface-hover);color:var(--text)}.nav-item.is-active{background:var(--surface-active);color:var(--text)}.nav-item span:first-of-type{flex:1}.nav-badge{border-radius:var(--r-full);background:var(--danger-soft);min-width:18px;height:17px;color:var(--danger-text);font-size:var(--text-xs);font-variant-numeric:tabular-nums;place-items:center;padding:0 5px;font-weight:600;display:inline-grid}.sidebar-foot{gap:var(--s-2);padding-top:var(--s-2);border-top:1px solid var(--border);display:grid}.health-row{padding:0 var(--s-2);font-size:var(--text-xs);color:var(--text-subtle);align-items:center;gap:6px;display:flex}.health-dot{border-radius:var(--r-full);flex:none;width:6px;height:6px}.health-dot.is-up{background:var(--status-done-fg)}.health-dot.is-down{background:var(--danger)}.user-row{align-items:center;gap:var(--s-2);padding:var(--s-1);border-radius:var(--r-md);display:flex}.user-text{flex:1;min-width:0;line-height:1.25;display:grid}.user-text strong{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.user-text>span{font-size:var(--text-xs);color:var(--text-subtle);text-transform:capitalize}.shell-main{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.page{flex-direction:column;flex:1;min-height:0;display:flex}.page-header{justify-content:space-between;align-items:center;gap:var(--s-4);height:var(--header-h);padding:0 var(--s-5);border-bottom:1px solid var(--border);background:var(--surface);flex:none;display:flex}.page-title{align-items:baseline;gap:var(--s-2);min-width:0;display:flex}.page-title h1{font-size:var(--text-md);font-weight:600}.page-title .page-sub{font-size:var(--text-sm);color:var(--text-subtle);white-space:nowrap}.page-actions{align-items:center;gap:var(--s-2);flex:none;display:flex}.page-body{min-height:0;padding:var(--s-5);flex:1;position:relative;overflow-y:auto}@media (width<=900px){.shell{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.sidebar{align-items:center;gap:var(--s-3);border-right:0;border-bottom:1px solid var(--border);padding:var(--s-2) var(--s-3);grid-template-rows:none;grid-template-columns:auto 1fr auto}.sidebar-brand{padding:0}.brand-text{display:none}.sidebar-nav{justify-content:start;gap:var(--s-1);scrollbar-width:none;grid-auto-columns:max-content;grid-auto-flow:column;overflow-x:auto}.sidebar-nav::-webkit-scrollbar{display:none}.nav-item{width:auto;padding:0 var(--s-2)}.sidebar-foot{border-top:0;padding-top:0}.health-row,.user-text,.sidebar-foot .avatar{display:none}.page-body{padding:var(--s-4)}}.sidebar-toggle{flex:none;margin-left:auto}.shell.is-collapsed{grid-template-columns:52px minmax(0,1fr)}.shell.is-collapsed .sidebar{padding:var(--s-3) var(--s-2)}.shell.is-collapsed .brand-text,.shell.is-collapsed .nav-label,.shell.is-collapsed .health-row span:not(.health-dot),.shell.is-collapsed .user-text{display:none}.shell.is-collapsed .sidebar-brand{gap:var(--s-2);padding:var(--s-1) 0;flex-direction:column}.shell.is-collapsed .sidebar-toggle{margin-left:0}.shell.is-collapsed .nav-item{justify-content:center;padding-left:0;padding-right:0}.shell.is-collapsed .nav-badge.is-dot{border-radius:var(--r-full);background:var(--danger);width:7px;min-width:0;height:7px;padding:0;position:absolute;top:4px;right:5px}.shell.is-collapsed .nav-item{position:relative}.shell.is-collapsed .health-row,.shell.is-collapsed .user-row{justify-content:center;gap:var(--s-1)}.shell.is-collapsed .user-row{flex-wrap:wrap}@media (width<=900px){.sidebar-toggle{display:none}.shell.is-collapsed{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.shell.is-collapsed .sidebar{padding:var(--s-2) var(--s-4)}.shell.is-collapsed .sidebar-brand{gap:var(--s-2);padding:var(--s-2);flex-direction:row}.shell.is-collapsed .brand-text,.shell.is-collapsed .nav-label,.shell.is-collapsed .user-text{display:revert}.shell.is-collapsed .nav-item{justify-content:center;position:static}.shell.is-collapsed .nav-badge{font-size:var(--text-xs);position:static}}.modal-backdrop{z-index:40;padding:var(--s-5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:modal-fade .14s var(--ease);background:#0a0c1073;place-items:center;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);width:100%;max-height:min(88vh,900px);box-shadow:var(--shadow-lg);animation:modal-rise .16s var(--ease);outline:none;flex-direction:column;display:flex}.modal-sm{max-width:400px}.modal-md{max-width:560px}.modal-lg{max-width:880px}.modal-head{justify-content:space-between;align-items:flex-start;gap:var(--s-4);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--border);flex:none;display:flex}.modal-head-text{gap:2px;min-width:0;display:grid}.modal-head h2{font-size:var(--text-lg);letter-spacing:-.012em}.modal-body{padding:var(--s-5);flex:1;min-height:0;position:relative;overflow-y:auto}.modal-foot{justify-content:flex-end;align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-5);border-top:1px solid var(--border);background:var(--surface-sunken);border-radius:0 0 var(--r-xl) var(--r-xl);flex:none;display:flex}.modal-foot-spread{justify-content:space-between}@keyframes modal-fade{0%{opacity:0}}@keyframes modal-rise{0%{opacity:0;transform:translateY(6px)scale(.99)}}@media (width<=640px){.modal-backdrop{place-items:end stretch;padding:0}.modal{border-radius:var(--r-xl) var(--r-xl) 0 0;border-bottom:0;max-height:92vh}.modal-foot{border-radius:0}}.users-card{max-width:1100px;overflow:hidden}.users-loading{padding:var(--s-10);place-items:center;display:grid}.users-error{margin-bottom:var(--s-4);max-width:1100px}.data-table{border-collapse:collapse;width:100%}.data-table thead th{padding:var(--s-2) var(--s-4);text-align:left;font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--text-subtle);background:var(--surface-sunken);border-bottom:1px solid var(--border);white-space:nowrap;font-weight:600}.data-table tbody td{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:var(--surface-hover)}.data-table tbody tr.is-busy{opacity:.55}.cell-muted{color:var(--text-muted)}.user-cell{align-items:center;gap:var(--s-2);min-width:0;display:flex}.avatar-sm{width:22px;height:22px;font-size:9px}.user-cell-name{align-items:center;gap:var(--s-2);min-width:0;font-weight:500;display:flex}.role-select{height:26px;padding:0 var(--s-1) 0 var(--s-2);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:var(--text-sm);text-transform:capitalize}.role-select:disabled{background:var(--surface-sunken);color:var(--text-subtle);border-color:var(--border)}.row-actions{align-items:center;gap:var(--s-1);justify-content:flex-end;display:flex}.unmatched-card{margin-top:var(--s-4);padding:var(--s-4);gap:var(--s-3);max-width:1100px;display:grid}.unmatched-list{margin:0;padding:0;list-style:none;display:grid}.unmatched-list li{align-items:center;gap:var(--s-3);padding:var(--s-2) 0;border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.unmatched-list li:last-child{border-bottom:0}.unmatched-name{font-weight:500}.mapping-table .num{text-align:right;white-space:nowrap;width:70px}.mapping-hint{font-size:var(--text-xs);color:var(--status-waiting-fg);margin-bottom:4px;display:block}.mapping-cell{width:300px}.users-note{align-items:center;gap:var(--s-2);margin-top:var(--s-3);font-size:var(--text-sm);color:var(--text-subtle);max-width:1100px;display:flex}.stack-form{gap:var(--s-4);display:grid}@media (width<=720px){.users-table,.users-table tbody,.users-table tr,.users-table td{width:100%;display:block}.users-table thead{display:none}.users-table tbody tr{align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border);grid-template-columns:1fr auto;grid-template-areas:"name role""username dept""actions actions";display:grid}.users-table tbody td{border-bottom:0;min-width:0;padding:0}.ucol-name{grid-area:name}.ucol-username{font-size:var(--text-sm);grid-area:username}.ucol-role{grid-area:role;justify-self:end}.ucol-dept{grid-area:dept;justify-self:end}.users-table tbody td.ucol-created{display:none}.ucol-actions{grid-area:actions}.row-actions{justify-content:flex-start}}.login{background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:100%;display:grid}.login-brand{align-content:center;gap:var(--s-6);padding:var(--s-10) clamp(var(--s-6), 6vw, 72px);background:var(--surface-sunken);border-right:1px solid var(--border);display:grid;position:relative}.login-mark{border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--border);width:88px;height:88px;box-shadow:var(--shadow-sm);position:relative}.login-dot{border-radius:var(--r-full);background:#c9161d;position:absolute}.login-dot-1{width:22px;height:22px;top:40px;left:17px}.login-dot-2{width:28px;height:28px;top:24px;right:17px}.login-dot-3{width:17px;height:17px;bottom:16px;left:37px}.login-brand-copy{gap:var(--s-3);max-width:34ch;display:grid}.login-brand-copy h1{font-size:var(--text-3xl);letter-spacing:-.02em;line-height:1.15}.login-brand-copy p{font-size:var(--text-md);color:var(--text-muted);line-height:1.55}.login-foot{left:clamp(var(--s-6), 6vw, 72px);bottom:var(--s-8);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);position:absolute}.login-panel{padding:var(--s-10) var(--s-6);align-content:center;justify-items:center;display:grid}.login-form{gap:var(--s-4);width:min(100%,360px);display:grid}.login-form-head{gap:var(--s-1);margin-bottom:var(--s-1);display:grid}.login-form-head h2{font-size:var(--text-xl);letter-spacing:-.015em}.login-form-head p{font-size:var(--text-base);color:var(--text-muted)}.input-affix{align-items:center;gap:var(--s-2);height:38px;padding:0 var(--s-3);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text-subtle);transition:border-color .12s var(--ease), box-shadow .12s var(--ease);display:flex}.input-affix:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft)}.input-affix input{min-width:0;height:100%;color:var(--text);font-size:var(--text-md);background:0 0;border:0;outline:0;flex:1;padding:0}.input-affix input:focus{box-shadow:none;border:0;outline:none}.affix-action{border-radius:var(--r-sm);width:24px;height:24px;color:var(--text-subtle);background:0 0;border:0;place-items:center;display:grid}.affix-action:hover{color:var(--text)}.login-submit{width:100%;height:38px;font-size:var(--text-md)}.login-help{font-size:var(--text-sm);color:var(--text-subtle);text-align:center}.auth-loading{background:var(--bg);place-items:center;height:100%;display:grid}@media (width<=820px){.login{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.login-brand{border-right:0;border-bottom:1px solid var(--border);padding:var(--s-8) var(--s-5);gap:var(--s-4)}.login-mark{width:56px;height:56px}.login-dot-1{width:14px;height:14px;top:26px;left:11px}.login-dot-2{width:18px;height:18px;top:15px;right:11px}.login-dot-3{width:11px;height:11px;bottom:10px;left:24px}.login-brand-copy h1{font-size:var(--text-xl)}.login-brand-copy p{font-size:var(--text-base)}.login-foot{display:none}.login-panel{padding:var(--s-6) var(--s-5);align-content:start}}.composer{gap:var(--s-5);display:grid}.composer-grid{gap:var(--s-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.composer-grid-tight{gap:var(--s-3);padding-top:var(--s-3)}.composer-section{gap:var(--s-3);padding-top:var(--s-4);border-top:1px solid var(--border);display:grid}.composer-section-head{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.composer-section-head h3{align-items:center;gap:var(--s-2);font-size:var(--text-base);font-weight:600;display:flex}.composer-hint{font-size:var(--text-sm);color:var(--text-subtle)}.segmented{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface-sunken);gap:2px;padding:2px;display:inline-flex}.segment{min-width:40px;height:26px;padding:0 var(--s-2);border-radius:var(--r-sm);color:var(--text-muted);font-size:var(--text-sm);transition:background .12s var(--ease), color .12s var(--ease);background:0 0;border:0;font-weight:500}.segment:hover{color:var(--text)}.segment.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.pic-picker{gap:var(--s-2);display:grid}.item-list{gap:var(--s-2);margin:0;padding:0;list-style:none;display:grid}.item-row{align-items:center;gap:var(--s-2);grid-template-columns:auto auto minmax(0,1fr) 110px auto;display:grid}.item-handle{color:var(--text-subtle);place-items:center;display:grid}.item-no{text-align:center;width:18px;font-size:var(--text-sm);color:var(--text-subtle)}.item-status{height:32px;padding:0 var(--s-2);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:var(--text-base)}.disclosure{align-items:center;gap:var(--s-2);width:100%;color:var(--text);font-size:var(--text-base);text-align:left;background:0 0;border:0;padding:0;font-weight:600;display:flex}.disclosure svg{color:var(--text-subtle);transition:transform .14s var(--ease)}.disclosure.is-open svg{transform:rotate(90deg)}.disclosure-hint{font-weight:400;font-size:var(--text-sm);color:var(--text-subtle)}@media (width<=780px){.composer-grid{grid-template-columns:minmax(0,1fr)}.item-row{grid-template-columns:auto minmax(0,1fr) auto}.item-handle,.item-status{display:none}}.composer-again{align-items:center;gap:var(--s-2);color:var(--text-muted);font-size:var(--text-base);cursor:pointer;margin-right:auto;display:flex}.composer-again input{width:13px;height:13px;accent-color:var(--accent);cursor:pointer}.attach-drop{justify-items:center;gap:var(--s-1);padding:var(--s-3);border:1px dashed var(--border-strong);border-radius:var(--r-md);background:var(--surface-sunken);color:var(--text-muted);font-size:var(--text-base);transition:border-color .12s var(--ease), background .12s var(--ease);display:grid}.attach-drop.is-dragging{border-color:var(--accent);background:var(--accent-soft)}.attach-drop-row{justify-content:center;align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.attach-hint{color:var(--text-subtle);font-size:var(--text-sm)}.attach-errors{padding:var(--s-2) var(--s-3);border-radius:var(--r-md);background:var(--danger-soft);color:var(--danger-text);font-size:var(--text-sm);gap:2px;margin:0;list-style:none;display:grid}.attach-list{gap:var(--s-1);margin:0;padding:0;list-style:none;display:grid}.attach-row{align-items:center;gap:var(--s-3);padding:var(--s-2);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);display:flex}.attach-thumb{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-sunken);width:36px;height:36px;color:var(--text-muted);flex:none;place-items:center;display:grid;overflow:hidden}.attach-thumb img{object-fit:cover;width:100%;height:100%}.attach-thumb:focus-visible,.attach-name:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.attach-text{flex:1;min-width:0;display:grid}.attach-name{color:var(--text);font-size:var(--text-base);white-space:nowrap;text-overflow:ellipsis;font-weight:500;text-decoration:none;overflow:hidden}.attach-name:hover{color:var(--accent-text);text-decoration:underline}.attach-meta{color:var(--text-subtle);font-size:var(--text-sm)}.attach-confirm{gap:var(--s-1);flex:none;display:flex}.detail-backdrop{z-index:40;padding:var(--s-5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:modal-fade .14s var(--ease);background:#0a0c1073;place-items:center;display:grid;position:fixed;inset:0}.detail{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);width:100%;max-width:620px;min-height:0;max-height:min(88vh,900px);box-shadow:var(--shadow-lg);animation:modal-rise .16s var(--ease);outline:none;flex-direction:column;display:flex}.detail-head{gap:var(--s-2);padding:var(--s-4);border-bottom:1px solid var(--border);flex:none;display:grid}.detail-head-top{justify-content:space-between;align-items:center;gap:var(--s-2);display:flex}.detail-id{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-subtle);letter-spacing:.01em}.detail-head-actions{align-items:center;gap:2px;display:flex}.detail-head h2{font-size:var(--text-lg);letter-spacing:-.012em;line-height:1.25}.detail-head-meta{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.detail-body{min-height:0;padding:var(--s-4);gap:var(--s-5);flex:1;align-content:start;display:grid;position:relative;overflow-y:auto}.detail-section{gap:var(--s-2);padding-top:var(--s-4);border-top:1px solid var(--border);display:grid}.detail-section h3{font-size:var(--text-sm);color:var(--text-muted);letter-spacing:.02em;font-weight:600}.detail-section-head{justify-content:space-between;align-items:center;gap:var(--s-2);display:flex}.detail-progress{font-size:var(--text-sm);color:var(--text-subtle)}.detail-remarks{font-size:var(--text-base);color:var(--text-muted);white-space:pre-wrap;line-height:1.55}.prop-list{gap:var(--s-2);margin:0;display:grid}.prop{align-items:center;gap:var(--s-2);grid-template-columns:92px minmax(0,1fr);display:grid}.prop dt{font-size:var(--text-sm);color:var(--text-subtle)}.prop dd{font-size:var(--text-base);color:var(--text);min-width:0;margin:0}.prop dd.is-overdue{color:var(--danger-text)}.prop-empty{color:var(--text-subtle)}.segmented-sm .segment{min-width:32px;height:22px;font-size:var(--text-xs)}.checklist{margin:0;margin-top:var(--s-1);gap:2px;padding:0;list-style:none;display:grid}.check-row{align-items:flex-start;gap:var(--s-2);width:100%;padding:var(--s-2);border-radius:var(--r-md);text-align:left;transition:background .12s var(--ease);background:0 0;border:0;display:flex}.check-row:hover:not(:disabled){background:var(--surface-hover)}.check-icon{color:var(--text-subtle);flex:none;place-items:center;padding-top:1px;display:grid}.check-row.is-done .check-icon{color:var(--status-done-fg)}.check-text{gap:1px;min-width:0;display:grid}.check-desc{font-size:var(--text-base);color:var(--text)}.check-row.is-done .check-desc{color:var(--text-subtle);text-decoration:line-through}.check-note{font-size:var(--text-xs);color:var(--text-subtle)}.update-grid{gap:var(--s-3);display:grid}.update-note{align-items:center;gap:var(--s-2);font-size:var(--text-xs);color:var(--status-waiting-fg);display:flex}.update-save{width:100%}.timeline{gap:var(--s-3);margin:0;margin-top:var(--s-1);padding:0;list-style:none;display:grid}.timeline-row{gap:var(--s-2);grid-template-columns:auto minmax(0,1fr);display:grid;position:relative}.timeline-dot{border-radius:var(--r-full);background:var(--border-strong);width:6px;height:6px;margin-top:6px}.timeline-text{gap:1px;min-width:0;display:grid}.timeline-title{font-size:var(--text-base);color:var(--text);overflow-wrap:anywhere}.timeline-meta{font-size:var(--text-xs);color:var(--text-subtle)}.comment-form{align-items:flex-end;gap:var(--s-2);margin-bottom:var(--s-4);flex-direction:column;display:flex}.comment-form textarea{width:100%;min-height:52px;padding:var(--s-2);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-family:inherit;font-size:var(--text-base);resize:vertical}.comment-form textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft);outline:0}.timeline-icon{color:var(--accent);flex:none;margin-top:3px}.timeline-row.is-comment .timeline-title{color:var(--text);white-space:pre-wrap}@media (width<=640px){.detail-backdrop{padding:0}.detail{border:0;border-radius:0;max-width:none;height:100vh;max-height:100vh}}.search-box{align-items:center;gap:var(--s-2);width:280px;height:30px;padding:0 var(--s-2);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text-subtle);transition:border-color .12s var(--ease), box-shadow .12s var(--ease);display:flex}.search-box:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft)}.search-box input{min-width:0;color:var(--text);font-size:var(--text-base);background:0 0;border:0;outline:0;flex:1}.search-box input::placeholder{color:var(--text-subtle)}.filter-count{border-radius:var(--r-full);background:var(--accent);color:#fff;place-items:center;min-width:16px;height:16px;margin-left:2px;padding:0 4px;font-size:10px;font-weight:600;display:inline-grid}.btn.is-active{background:var(--surface-active);border-color:var(--border-strong)}.stat-strip{align-items:center;gap:var(--s-1);padding:var(--s-2) var(--s-5);border-bottom:1px solid var(--border);background:var(--surface);flex:none;display:flex;overflow-x:auto}.stat{align-items:baseline;gap:var(--s-2);padding:var(--s-1) var(--s-3);border-radius:var(--r-md);transition:background .12s var(--ease), border-color .12s var(--ease);white-space:nowrap;background:0 0;border:1px solid #0000;display:flex}.stat:hover{background:var(--surface-hover)}.stat.is-active{background:var(--surface-active);border-color:var(--border-strong)}.stat-label{font-size:var(--text-sm);color:var(--text-muted)}.stat-value{font-size:var(--text-md);font-weight:600}.tone-neutral{color:var(--text)}.tone-progress{color:var(--status-progress-fg)}.tone-done{color:var(--status-done-fg)}.tone-danger{color:var(--danger-text)}.filter-panel{gap:var(--s-3);padding:var(--s-3) var(--s-5);border-bottom:1px solid var(--border);background:var(--surface-sunken);flex:none;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.chip-bar{align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-5);border-bottom:1px solid var(--border);background:var(--surface);color:var(--text-subtle);flex-wrap:wrap;flex:none;display:flex}.chip{height:22px;padding:0 var(--s-2);border:1px solid var(--border-strong);border-radius:var(--r-full);background:var(--surface-sunken);color:var(--text-muted);font-size:var(--text-sm);align-items:center;gap:5px;display:inline-flex}.chip:hover{color:var(--text);border-color:var(--text-subtle)}.chip-clear{color:var(--accent-text);font-size:var(--text-sm);background:0 0;border:0;font-weight:500}.chip-clear:hover{text-decoration:underline}.work-area{flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.task-table-wrap{min-width:0;min-height:0;position:relative;overflow:auto}.task-table{border-collapse:separate;border-spacing:0;width:100%}.task-table thead th{z-index:1;background:var(--surface-sunken);border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:0;position:sticky;top:0}.th-sort{align-items:center;gap:var(--s-1);width:100%;height:28px;padding:0 var(--s-3);color:var(--text-subtle);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;background:0 0;border:0;font-weight:600;display:flex}.th-sort:hover{background:var(--surface-hover);color:var(--text)}.th-sort.is-active{color:var(--text)}.th-sort-idle{opacity:0;transition:opacity .12s var(--ease)}.th-sort:hover .th-sort-idle{opacity:.6}.task-table tbody tr{cursor:pointer;transition:background .1s var(--ease)}.task-table tbody tr:hover{background:var(--surface-hover)}.task-table tbody tr.is-selected{background:var(--accent-soft)}.task-table tbody td{padding:5px var(--s-3);border-bottom:1px solid var(--border);vertical-align:middle;font-size:var(--text-base)}.task-table tbody tr.is-selected td:first-child{box-shadow:inset 2px 0 0 var(--accent)}.col-status{width:124px}.col-key{width:158px;color:var(--text-subtle);font-size:var(--text-sm)}.col-merchant{min-width:200px}.col-level{width:68px}.col-sales-agent,.col-pic{width:120px;color:var(--text-muted)}.col-progress{width:132px}.col-due{width:128px}.cell-merchant{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:500;display:block;overflow:hidden}.cell-secondary{font-size:var(--text-sm);color:var(--text-subtle);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.cell-progress{align-items:center;gap:var(--s-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.cell-progress span{font-size:var(--text-xs);color:var(--text-subtle)}@media (width<=1240px){.col-key,.col-sales-agent,.col-progress{display:none}}@media (width<=900px){.page-header{height:auto;padding:var(--s-3) var(--s-4);gap:var(--s-3);flex-wrap:wrap}.page-actions{flex-wrap:wrap;width:100%}.search-box{order:-1;width:100%}.stat-strip,.chip-bar,.filter-panel{padding-left:var(--s-4);padding-right:var(--s-4)}}@media (width<=720px){.task-table,.task-table tbody,.task-table tr,.task-table td{width:100%;display:block}.task-table thead{display:none}.task-table tbody tr{align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border);grid-template-columns:auto auto 1fr;grid-template-areas:"status level due""merchant merchant merchant""agent pic progress""key key key";display:grid}.task-table tbody td{border-bottom:0;min-width:0;padding:0}.task-table tbody tr.is-selected td:first-child{box-shadow:none}.col-status{grid-area:status;width:auto}.col-level{grid-area:level;width:auto;display:block}.col-due{text-align:right;grid-area:due;justify-self:end;width:auto}.col-merchant{grid-area:merchant}.col-key{grid-area:key;width:auto;display:block}.col-sales-agent{grid-area:agent;width:auto;display:block}.col-pic{grid-area:pic;width:auto;display:block}.col-progress{grid-area:progress;width:auto;display:block}.cell-progress{justify-content:end}}@media (width<=560px){.nav-item span:first-of-type{display:none}.nav-item{padding:0 var(--s-2)}.page-actions .btn{flex:1}}.view-switch{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface-sunken);padding:2px;display:inline-flex}.view-switch button{align-items:center;gap:var(--s-1);height:24px;padding:0 var(--s-2);border-radius:var(--r-sm);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;font-weight:500;display:inline-flex}.view-switch button.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.col-pick{text-align:center;width:32px;padding-right:0!important}.col-pick input{width:13px;height:13px;accent-color:var(--accent);cursor:pointer;vertical-align:middle}.task-table tbody .col-pick input{opacity:0;transition:opacity .1s var(--ease)}.task-table tbody tr:hover .col-pick input,.task-table tbody tr.is-picked .col-pick input,.task-table tbody .col-pick input:focus-visible{opacity:1}.task-table tbody tr.is-picked{background:var(--accent-soft)}.bulk-bar{align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-5);border-bottom:1px solid var(--border);background:var(--surface-sunken);display:flex}.bulk-count{color:var(--text);font-size:var(--text-sm);font-weight:600}.bulk-bar .select{width:150px}.task-table thead th,.task-table tbody td{border-right:1px solid var(--border)}.task-table thead th:last-child,.task-table tbody td:last-child{border-right:0}.th-sort{font-size:var(--text-sm);letter-spacing:0;text-transform:none;color:var(--text-muted);font-weight:600}.col-work{min-width:280px}.work-cell{align-items:center;gap:var(--s-2);min-width:0;display:flex}.work-key{color:var(--accent-text);font-size:var(--text-sm);flex:none}.task-table tbody tr:hover .work-key{text-decoration:underline}.work-title{min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.avatar-cell{align-items:center;gap:var(--s-2);min-width:0;display:flex}.avatar{border-radius:var(--r-full);background:var(--accent-soft);width:18px;height:18px;color:var(--accent-text);letter-spacing:.02em;flex:none;place-items:center;font-size:9px;font-weight:700;display:grid}.avatar-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.pill.pill-status{letter-spacing:.04em;text-transform:uppercase;gap:2px;padding-right:3px;font-size:10px;font-weight:700}.status-select-lozenge{height:auto;padding:2px}.task-table tfoot td{border-bottom:0;border-right:0;border-top:1px solid var(--border);padding:0}.create-row-inner{justify-content:space-between;align-items:center;gap:var(--s-3);padding:0 var(--s-3);display:flex}.create-inline{align-items:center;gap:var(--s-2);height:30px;padding:0 var(--s-2);margin-left:calc(var(--s-2) * -1);border-radius:var(--r-sm);color:var(--text-muted);font-size:var(--text-base);cursor:pointer;background:0 0;border:0;display:inline-flex}.create-inline:hover{background:var(--surface-hover);color:var(--text)}.create-row-count{color:var(--text-subtle);font-size:var(--text-sm)}.saved-views{align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-5);border-bottom:1px solid var(--border);color:var(--text-subtle);flex-wrap:wrap;display:flex}.saved-view{border:1px solid var(--border-strong);border-radius:var(--r-full);background:var(--surface);align-items:center;display:inline-flex;overflow:hidden}.saved-view button{color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0}.saved-view>button:first-child{padding:3px var(--s-1) 3px var(--s-3)}.saved-view:hover>button:first-child{color:var(--text)}.saved-view-remove{padding:3px var(--s-2) 3px var(--s-1);color:var(--text-subtle);place-items:center;display:grid}.saved-view-remove:hover{color:var(--danger)}.chip-clear{align-items:center;gap:4px;display:inline-flex}.col-given{width:118px;color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap}.chart-wrap{position:relative;overflow-x:auto}.chart-wrap svg{max-width:100%;display:block}.chart-grid-line{stroke:var(--chart-grid);stroke-width:1px}.chart-crosshair{stroke:var(--border-strong);stroke-width:1px}.chart-axis-text{fill:var(--text-subtle);font-size:var(--text-xs);font-family:var(--font-sans)}.spark{flex:none}.chart-readout{align-items:center;gap:var(--s-1) var(--s-4);margin-bottom:var(--s-2);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--text-muted);flex-wrap:wrap;min-height:22px;display:flex}.chart-readout-day{color:var(--text);min-width:56px;font-weight:600}.chart-readout-item{align-items:center;gap:var(--s-2);display:inline-flex}.chart-readout-item b{color:var(--text);font-weight:600}.chart-table-toggle{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font:inherit;font-size:var(--text-xs);padding:3px var(--s-2);border-radius:var(--r-md);cursor:pointer;margin-left:auto}.chart-table-toggle:hover{background:var(--surface-hover);color:var(--text)}.chart-table-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.chart-table{margin-top:var(--s-3)}.chart-tip{z-index:2;pointer-events:none;min-width:132px;padding:var(--s-2) var(--s-3);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-md);font-size:var(--text-sm);white-space:nowrap;font-variant-numeric:tabular-nums;line-height:1.5;position:absolute}.chart-tip-day{margin-bottom:2px;font-weight:600}.chart-tip-row{align-items:center;gap:var(--s-2);color:var(--text-muted);display:flex}.chart-tip-row b{padding-left:var(--s-3);color:var(--text);margin-left:auto;font-weight:600}.chart-table[hidden]{display:none!important}.donut-layout{align-items:center;gap:var(--s-1);flex-direction:column;display:flex}.donut-arc{pointer-events:none;transform-box:view-box;transform-origin:50%;transition:transform .16s cubic-bezier(.34, 1.3, .64, 1), filter .16s var(--ease)}.donut-hit{fill:none;stroke:#0000;cursor:pointer}.donut-hit:focus{outline:none}.donut-slice-label{pointer-events:none;transform-box:view-box;transform-origin:50%;font-family:var(--font-sans);font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:600;transition:transform .16s cubic-bezier(.34,1.3,.64,1)}.donut-centre-value{font-family:var(--font-sans);letter-spacing:-.02em;font-size:30px;font-weight:600}.donut-key{width:100%;margin-top:var(--s-2);flex-direction:column;gap:1px;display:flex}.donut-key-row{align-items:center;gap:var(--s-2);width:100%;padding:var(--s-2);border-radius:var(--r-md);color:inherit;font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:10px auto 1fr auto auto;display:grid}.donut-key-row:hover,.donut-key-row.is-active{background:var(--surface-hover)}.donut-key-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.donut-key-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.donut-key-pct{color:var(--text-muted);font-size:var(--text-xs);text-align:right;min-width:32px}.donut-key-n{text-align:right;min-width:24px;font-weight:600}.key-swatch{border-radius:var(--r-full);flex:none;width:10px;height:10px}.composition{height:30px;margin:var(--s-3) 0;gap:2px;animation:.62s cubic-bezier(.22,1,.36,1) composition-in;display:flex}@keyframes composition-in{0%{width:0}to{width:100%}}.composition span{cursor:pointer;transform-origin:50%;min-width:3px;transition:flex-grow .62s cubic-bezier(.22, 1, .36, 1), opacity .14s var(--ease), transform .14s var(--ease);border-radius:3px;flex-basis:0}.composition.has-active span{opacity:.35}.composition.has-active span.is-active{opacity:1;transform:scaleY(1.18)}.composition-key{gap:var(--s-2);flex-direction:column;display:flex}.composition-key-row{align-items:center;gap:var(--s-2);width:100%;padding:var(--s-1) var(--s-2);margin:0 calc(var(--s-2) * -1);border-radius:var(--r-md);color:inherit;font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:10px 1fr auto;display:grid}.composition-key-row:hover,.composition-key-row.is-active{background:var(--surface-hover)}.composition-key-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.composition-pct{color:var(--text-muted)}.composition-n{font-weight:600}@media (prefers-reduced-motion:reduce){.donut-arc,.donut-slice-label,.composition span{transition:none}.composition.has-active span.is-active{transform:none}.composition{animation:none}}.report{gap:var(--s-4);align-content:start;display:grid}.report-section-title{margin:0 0 var(--s-3);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:600}.report-loading{padding:var(--s-10);place-items:center;display:grid}.range-presets{flex-wrap:wrap}.custom-range{align-items:center;gap:var(--s-4);padding:var(--s-2) var(--s-5);border-bottom:1px solid var(--border);background:var(--surface-sunken);flex:none;display:flex}.range-field{align-items:center;gap:var(--s-2);font-size:var(--text-sm);color:var(--text-muted);display:flex}.range-field input{height:30px;padding:0 var(--s-2);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:var(--text-base)}.kpi-strip{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);margin-bottom:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(208px,1fr));display:grid}.kpi{padding:var(--s-3) var(--s-5) var(--s-4);border-right:1px solid var(--border);flex-direction:column;gap:2px;min-width:0;display:flex}.kpi:last-child{border-right:0}.kpi-dot{border-radius:var(--r-full);flex:none;width:7px;height:7px}.kpi-foot{justify-content:space-between;align-items:flex-end;gap:var(--s-3);margin-top:var(--s-2);min-height:30px;display:flex}.kpi-delta{font-size:var(--text-xs);color:var(--text-subtle);font-variant-numeric:tabular-nums}.kpi-meter{background:var(--surface-sunken);border-radius:var(--r-full);width:100%;height:8px;display:block;overflow:hidden}.kpi-meter-fill{border-radius:var(--r-full);background:var(--chart-done);height:100%;display:block}.kpi-label{align-items:center;gap:var(--s-2);font-size:var(--text-sm);color:var(--text-muted);display:flex}.kpi-value{letter-spacing:-.02em;font-size:28px;font-weight:600;line-height:1.1}.kpi-value.tone-progress{color:var(--chart-progress-ink)}.kpi-value.tone-done{color:var(--chart-done-ink)}.kpi-value.tone-danger{color:var(--danger-text)}.report-grid{gap:var(--s-4);grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch;display:grid}.report-card-trend{grid-column:span 8}.report-card-type,.report-card-status{grid-column:span 4}.report-card-level{grid-column:span 3}.report-card-requesters{grid-column:span 5}.report-card-feed,.report-card-queue{grid-column:span 6}.report-card-people{grid-column:span 12}.report-card-type,.report-card-status,.report-card-level{align-content:space-between}.report-card{padding:var(--s-4);gap:var(--s-3);align-content:start;display:grid}.report-card-wide{grid-column:1/-1}.report-card-head{justify-content:space-between;align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.report-card-head h2{align-items:center;gap:var(--s-2);font-size:var(--text-base);font-weight:600;display:flex}.report-empty{font-size:var(--text-base);color:var(--text-subtle);padding:var(--s-4) 0}.legend{align-items:center;gap:var(--s-3);font-size:var(--text-sm);color:var(--text-muted);display:flex}.legend-item{align-items:center;gap:5px;display:inline-flex}.legend-swatch{border-radius:2px;width:8px;height:8px}.legend-added{background:var(--accent)}.legend-completed{background:var(--status-done-fg)}.trend{gap:var(--s-2);height:168px;padding-top:var(--s-2);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.trend-col{gap:var(--s-2);grid-template-rows:minmax(0,1fr) auto;min-width:0;display:grid}.trend-bars{border-bottom:1px solid var(--border);justify-content:center;align-items:flex-end;gap:3px;height:100%;display:flex}.trend-bar{width:42%;max-width:18px;min-height:2px;transition:height .3s var(--ease);border-radius:2px 2px 0 0}.trend-added{background:var(--accent)}.trend-completed{background:var(--status-done-fg)}.trend-label{text-align:center;font-size:var(--text-xs);color:var(--text-subtle);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.suggestion-list{padding-left:var(--s-4);gap:var(--s-2);font-size:var(--text-base);color:var(--text-muted);margin:0;line-height:1.5;display:grid}.suggestion-pills{gap:var(--s-2);padding-top:var(--s-1);flex-wrap:wrap;display:flex}.bar-list{gap:var(--s-3);margin:0;padding:0;list-style:none;display:grid}.bar-head{justify-content:space-between;align-items:center;gap:var(--s-2);font-size:var(--text-base);color:var(--text-muted);margin-bottom:5px;display:flex}.bar-head-label{display:inline-flex}.report-table .num{text-align:right;white-space:nowrap}.report-table thead th{background:0 0}.person-cell{white-space:nowrap;font-weight:500}.workload-cell{width:30%;min-width:100px}.data-table tbody tr.is-clickable{cursor:pointer}.go-cell{text-align:right;width:28px;color:var(--text-subtle)}.priority-list{margin:0;padding:0;list-style:none;display:grid}.priority-row{justify-content:space-between;align-items:center;gap:var(--s-3);width:100%;padding:var(--s-2);margin:0 calc(var(--s-2) * -1);border-radius:var(--r-md);text-align:left;transition:background .12s var(--ease);background:0 0;border:0;display:flex}.priority-row:hover{background:var(--surface-hover)}.priority-list li{border-bottom:1px solid var(--border)}.priority-list li:last-child{border-bottom:0}.priority-meta svg{color:var(--text-subtle)}.priority-main{gap:1px;min-width:0;display:grid}.priority-merchant{font-size:var(--text-base);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.priority-id{font-size:var(--text-xs);color:var(--text-subtle)}.priority-meta{align-items:center;gap:var(--s-2);flex:none;display:flex}@media (width<=1000px){.report-grid{grid-template-columns:minmax(0,1fr)}.report-card-trend,.report-card-type,.report-card-status,.report-card-level,.report-card-requesters,.report-card-feed,.report-card-queue,.report-card-people{grid-column:1/-1}}@media (width<=720px){.workload-cell{display:none}.report-card-wide table{min-width:0}.report-table th,.report-table td{padding-left:var(--s-2);padding-right:var(--s-2)}.range-presets{width:100%}}.report-card-feed,.report-card-queue{flex-direction:column;align-self:stretch;display:flex}.activity-feed{gap:var(--s-3);flex-direction:column;flex:auto;min-height:0;max-height:420px;margin:0;padding:0;list-style:none;display:flex;position:relative;overflow-y:auto;-webkit-mask-image:linear-gradient(#000 calc(100% - 28px),#0000 100%);mask-image:linear-gradient(#000 calc(100% - 28px),#0000 100%)}.activity-feed li{gap:var(--s-3);align-items:flex-start;display:flex}.activity-dot{border-radius:var(--r-full);background:var(--status-progress-fg);flex:none;width:6px;height:6px;margin-top:6px}.activity-dot.is-created{background:var(--status-new-fg)}.activity-dot.is-deleted{background:var(--danger)}.activity-dot.is-comment,.activity-dot.is-attachment{background:var(--text-subtle)}.activity-body{min-width:0}.activity-line{font-size:var(--text-base);color:var(--text-muted);margin:0}.activity-line b{color:var(--text);font-weight:600}.activity-merchant{color:var(--text)}.activity-meta{align-items:center;gap:var(--s-1);color:var(--text-subtle);font-size:var(--text-sm);margin:2px 0 0;display:flex}.report-card-note{color:var(--text-subtle);font-size:var(--text-sm)}.report-empty{color:var(--text-subtle);font-size:var(--text-base);margin:0}.type-breakdown{gap:var(--s-3) var(--s-5);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.type-breakdown .bar-head-label{align-items:center;gap:var(--s-2);display:inline-flex}.requesters{gap:var(--s-3);margin-top:var(--s-3);flex-direction:column;display:flex}.requester{gap:3px var(--s-3);grid-template-columns:1fr auto;align-items:baseline;display:grid}.requester-name{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.requester-name.is-none{color:var(--text-subtle);font-style:italic;font-weight:400}.requester-figs{font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right}.requester-figs b{color:var(--text);font-weight:600;font-size:var(--text-base)}.report-bar{background:var(--surface-sunken);border-radius:var(--r-full);width:100%;height:10px;display:block;overflow:hidden}.report-bar-fill{border-radius:var(--r-full);background:linear-gradient(90deg, var(--chart-created), var(--chart-created-lift));min-width:4px;height:100%;display:block}.report-bar-fill.is-none{background:repeating-linear-gradient(135deg, var(--border-strong) 0 4px, var(--surface-sunken) 4px 8px)}.requester-track{grid-column:1/-1}.card-head-left{align-items:center;gap:var(--s-4);min-width:0;display:inline-flex}.level-legend{align-items:center;gap:var(--s-3);font-size:var(--text-xs);color:var(--text-muted);display:inline-flex}.level-legend-item{align-items:center;gap:var(--s-1);display:inline-flex}.level-bar{display:block}.level-bar-track{border-radius:var(--r-full);gap:1px;min-width:2px;height:100%;display:flex;overflow:hidden}.level-bar-track span{flex-basis:0;min-width:2px}.report-table .level-col{padding-left:var(--s-2);padding-right:var(--s-2)}.report-table th.level-col{color:var(--text-subtle)}.report-table td.level-col{color:var(--text-muted)}.select{gap:5px;min-width:0;display:grid;position:relative}.select-trigger{justify-content:space-between;align-items:center;gap:var(--s-2);width:100%;height:32px;padding:0 var(--s-2);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:var(--text-base);text-align:left;transition:border-color .12s var(--ease), box-shadow .12s var(--ease);display:flex}.select-trigger:hover:not(:disabled){border-color:var(--text-subtle)}.select-trigger.is-open{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-soft)}.select-trigger:disabled{background:var(--surface-sunken);color:var(--text-subtle)}.select-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.select-caret{color:var(--text-subtle);transition:transform .14s var(--ease);flex:none}.select-trigger.is-open .select-caret{transform:rotate(180deg)}.select-popover{z-index:30;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);width:max-content;min-width:100%;max-width:280px;box-shadow:var(--shadow-md);animation:select-in .12s var(--ease);position:absolute;top:calc(100% + 4px);overflow:hidden}.select-start{left:0}.select-end{right:0}.select-search{align-items:center;gap:var(--s-2);padding:var(--s-2);border-bottom:1px solid var(--border);color:var(--text-subtle);display:flex}.select-search input{min-width:0;color:var(--text);font-size:var(--text-base);background:0 0;border:0;outline:0;flex:1}.select-list{max-height:260px;padding:var(--s-1);overflow-y:auto}.select-option{align-items:center;gap:var(--s-2);width:100%;min-height:28px;padding:0 var(--s-2);border-radius:var(--r-sm);color:var(--text);font-size:var(--text-base);text-align:left;background:0 0;border:0;display:flex}.select-option:hover:not(:disabled){background:var(--surface-hover)}.select-option.is-selected{color:var(--text);font-weight:500}.select-option:disabled{color:var(--text-subtle)}.select-check{width:14px;color:var(--accent);flex:none;place-items:center;display:grid}.select-option-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.select-option-meta{font-size:var(--text-sm);color:var(--text-subtle);font-variant-numeric:tabular-nums;flex:none}.select-empty{padding:var(--s-3) var(--s-2);font-size:var(--text-sm);color:var(--text-subtle);text-align:center}@keyframes select-in{0%{opacity:0;transform:translateY(-3px)}}.status-select{display:inline-flex;position:relative}.status-select-trigger{height:22px;padding:0 var(--s-1);margin-left:calc(var(--s-1) * -1);border-radius:var(--r-sm);cursor:pointer;transition:background .1s var(--ease), border-color .1s var(--ease);background:0 0;border:1px solid #0000;align-items:center;display:inline-flex}.task-table tbody tr:hover .status-select-trigger,.status-select-trigger:focus-visible,.status-select-trigger.is-open{border-color:var(--border-strong);background:var(--surface)}.status-select-trigger:disabled{cursor:default;background:0 0;border-color:#0000}.status-select-popover{min-width:168px;top:calc(100% + 2px)}.status-select-popover .select-option-label{align-items:center;display:flex}.board{gap:var(--s-3);height:100%;padding:var(--s-3) var(--s-5) var(--s-5);align-items:flex-start;display:flex;overflow:auto hidden}.board-col{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-sunken);width:264px;max-height:100%;transition:border-color .12s var(--ease), background .12s var(--ease);flex-direction:column;flex:none;display:flex}.board-col.is-drop-target{border-color:var(--accent);background:var(--accent-soft)}.board-col-head{justify-content:space-between;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);border-bottom:1px solid var(--border);display:flex}.board-col-count{color:var(--text-subtle);font-size:var(--text-sm)}.board-col-body{gap:var(--s-2);padding:var(--s-2);flex-direction:column;display:flex;position:relative;overflow-y:auto}.board-col-empty{padding:var(--s-4) 0;color:var(--text-subtle);font-size:var(--text-sm);text-align:center}.board-card{gap:var(--s-1);padding:var(--s-2) var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);cursor:pointer;transition:border-color .1s var(--ease), box-shadow .1s var(--ease);flex-direction:column;display:flex}.board-card:hover{border-color:var(--border-strong)}.board-card.is-selected{border-color:var(--accent);box-shadow:inset 2px 0 0 var(--accent)}.board-card.is-dragging{opacity:.4}.board-card-merchant{color:var(--text);font-size:var(--text-base);font-weight:500}.board-card-type{color:var(--text-subtle);font-size:var(--text-sm)}.board-card-foot{justify-content:space-between;align-items:center;gap:var(--s-2);min-width:0;display:flex}.board-card-key{color:var(--text-subtle);font-size:var(--text-xs)}.board-card-pic,.board-card-due{color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
