@font-face{font-family:Heebo;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/86c8c58929c52757-s.p.3dq6enaul-s3b.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Heebo;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/26f1faa720e098bd-s.1wi009tmolxy6.woff2)format("woff2");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-209F,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Heebo;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/12a3b720ebf90c95-s.3zp59tjmmltci.woff2)format("woff2");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AE,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F8D0-1F8D8,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FAC6,U+1FAC8,U+1FACC-1FADD,U+1FADF-1FAEB,U+1FAEF-1FAFA,U+1FB??}@font-face{font-family:Heebo;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/3d5a56639c692758-s.00dlb18bxbl69.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Heebo;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1c9ef42b327f16c7-s.p.0jgv4ivu1938h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Heebo Fallback;src:local(Arial);ascent-override:104.9%;descent-override:42.14%;line-gap-override:0.0%;size-adjust:99.89%}.jXttxW_className{font-family:Heebo,Heebo Fallback;font-style:normal}.jXttxW_variable{--font-heebo:"Heebo", "Heebo Fallback"}
:root{--ink-0:#0a0a0a;--ink-1:#111;--ink-2:#151515;--ink-3:#1d1d1d;--ink-line:#303030;--ink-line-strong:#3d3d3d;--ink-text:#f5f5f5;--ink-muted:#a0a0a0;--ink-faint:#6f6f6f;--ink-button:#e7e7e7;--ink-button-hover:#fff;--canvas:#f4f4f2;--surface:#fff;--surface-2:#fafaf9;--surface-sunken:#efefec;--line:#e2e2de;--line-strong:#cfcfca;--text:#161616;--text-2:#3b3b38;--muted:#64645f;--faint:#8a8a84;--signal:#e8590c;--signal-strong:#c2410c;--signal-soft:#fff1e8;--brand-blue:#1f6feb;--brand-cyan:#0bb4e6;--brand-amber:#ffb000;--ok:#1a7f4b;--ok-soft:#e7f5ed;--warn:#a15c00;--warn-soft:#fdf3e1;--danger:#c22a2a;--danger-soft:#fdecec;--info:#1f5fbf;--info-soft:#e9f1fc;--neutral-soft:#ededea;--font-sans:var(--font-heebo), "Segoe UI", system-ui, -apple-system, Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-md:.9375rem;--text-lg:1.0625rem;--text-xl:1.3125rem;--text-2xl:1.625rem;--text-3xl:2.125rem;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:20px;--shadow-1:0 1px 2px #1010100f;--shadow-card:0 1px 2px #3c28140a, 0 6px 20px -8px #3c28141a;--shadow-lift:0 2px 4px #3c28140d, 0 14px 32px -12px #3c28142e;--r-card:16px;--tint-orange:#fff0e6;--tint-orange-fg:#c2410c;--tint-blue:#e9f1fe;--tint-blue-fg:#1f5fbf;--tint-cyan:#e2f6fc;--tint-cyan-fg:#0a7896;--tint-amber:#fff5d9;--tint-amber-fg:#9a5b00;--shadow-pop:0 8px 28px #10101024, 0 1px 3px #10101014;--focus:0 0 0 2px var(--surface), 0 0 0 4px var(--signal);--sidebar-w:248px;--ease:cubic-bezier(.2, 0, 0, 1);--dur:.16s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-md);color:var(--text);background:var(--canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.55}h1,h2,h3,h4,p{margin:0}h1,h2,h3{letter-spacing:-.01em;text-wrap:balance;font-weight:650;line-height:1.25}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}img,svg{display:block}:focus-visible{box-shadow:var(--focus);border-radius:var(--r-sm);outline:none}.ltr,.mono{direction:ltr;unicode-bidi:isolate}.mono{font-family:var(--font-mono);letter-spacing:0;font-size:.92em}.num{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{inset-inline-start:var(--s-4);z-index:100;background:var(--ink-0);color:var(--ink-text);padding:var(--s-2) var(--s-4);border-radius:var(--r-md);position:absolute;top:-48px}.skip-link:focus{top:var(--s-4)}.btn{--btn-bg:var(--text);--btn-fg:#fff;--btn-border:transparent;justify-content:center;align-items:center;gap:var(--s-2);min-height:40px;padding:0 var(--s-4);border-radius:var(--r-md);border:1px solid var(--btn-border);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--text-md);white-space:nowrap;cursor:pointer;transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur) var(--ease);font-weight:550;line-height:1;display:inline-flex}.btn:hover{--btn-bg:#000}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;transform:none}.btn svg{flex:none;width:16px;height:16px}.btn-secondary{--btn-bg:var(--surface);--btn-fg:var(--text);--btn-border:var(--line-strong)}.btn-secondary:hover{--btn-bg:var(--surface-2);--btn-border:var(--faint)}.btn-ghost{--btn-bg:transparent;--btn-fg:var(--text-2)}.btn-ghost:hover{--btn-bg:var(--surface-sunken)}.btn-danger{--btn-bg:var(--surface);--btn-fg:var(--danger);--btn-border:#e9b8b8}.btn-danger:hover{--btn-bg:var(--danger-soft)}.btn-sm{min-height:32px;padding:0 var(--s-3);font-size:var(--text-sm);border-radius:var(--r-sm)}.btn-icon{width:36px;min-height:36px;padding:0}.btn-block{width:100%}.btn .spinner{width:14px;height:14px}.field{gap:6px;display:grid}.field+.field{margin-top:var(--s-4)}.label{font-size:var(--text-sm);color:var(--text-2);font-weight:550}.hint{font-size:var(--text-xs);color:var(--muted)}.input,.select,.textarea{border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:40px;color:var(--text);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);padding:8px 12px}.input::placeholder,.textarea::placeholder{color:var(--faint)}.input:hover,.select:hover,.textarea:hover{border-color:var(--faint)}.input:focus,.select:focus,.textarea:focus{border-color:var(--text);outline:none;box-shadow:0 0 0 3px #e8590c2e}.input[aria-invalid=true]{border-color:var(--danger)}.textarea{resize:vertical;min-height:96px;line-height:1.5}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364645f' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:12px;background-repeat:no-repeat;padding-inline-end:34px}.input-sm,.select-sm{min-height:32px;font-size:var(--text-sm);padding-block:4px}.checkbox{width:18px;height:18px;accent-color:var(--text);cursor:pointer}.form-grid{gap:var(--s-4) var(--s-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-grid .span-2{grid-column:1/-1}.form-actions{gap:var(--s-3);margin-top:var(--s-6);flex-wrap:wrap;align-items:center;display:flex}.inline-form{gap:var(--s-2);flex-wrap:wrap;align-items:flex-end;display:flex}.inline-form>.field{margin:0}.grow{flex:220px}.alert{gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--r-md);font-size:var(--text-sm);border:1px solid #0000;align-items:flex-start;display:flex}.alert svg{flex:none;width:16px;height:16px;margin-top:2px}.alert-error{background:var(--danger-soft);color:#8e1d1d;border-color:#f2c6c6}.alert-success{background:var(--ok-soft);color:#12583a;border-color:#bfe3cf}.alert-warn{background:var(--warn-soft);color:#714000;border-color:#f0d6a6}.alert-info{background:var(--info-soft);color:#1a4b94;border-color:#c6d9f5}.spinner{border:2px solid;border-inline-end-color:#0000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--surface-sunken), var(--surface-2), var(--surface-sunken));border-radius:var(--r-sm);background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.badge{height:22px;font-size:var(--text-xs);white-space:nowrap;background:var(--neutral-soft);color:var(--text-2);border-radius:999px;align-items:center;gap:6px;padding:0 8px;font-weight:600;display:inline-flex}.badge:before{content:"";opacity:.85;background:currentColor;border-radius:50%;width:6px;height:6px}.badge.plain:before{display:none}.badge-new{background:var(--neutral-soft);color:#4a4a46}.badge-in_progress{background:var(--info-soft);color:var(--info)}.badge-on_hold{background:var(--warn-soft);color:var(--warn)}.badge-blocked{background:var(--danger-soft);color:var(--danger)}.badge-completed{background:var(--ok-soft);color:var(--ok)}.badge-cancelled{background:var(--neutral-soft);color:var(--faint)}.badge-archived{background:var(--surface-sunken);color:var(--muted)}.badge-role{background:var(--surface);border:1px solid var(--line-strong);color:var(--text-2)}.badge-role:before{display:none}.badge-owner{background:var(--text);border-color:var(--text);color:#fff}.badge-high{background:var(--danger-soft);color:var(--danger)}.badge-low{background:var(--neutral-soft);color:var(--muted)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-card)}.panel-head{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--line);min-height:56px;display:flex}.panel-head h2,.panel-head h3{font-size:var(--text-lg)}.panel-head .meta{font-size:var(--text-sm);color:var(--muted)}.panel-body{padding:var(--s-5)}.panel-foot{padding:var(--s-4) var(--s-5);border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 var(--r-card) var(--r-card)}.stack{gap:var(--s-6);display:grid}.stack-sm{gap:var(--s-3);display:grid}.row{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.spread{justify-content:space-between;align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.muted{color:var(--muted)}.small{font-size:var(--text-sm)}.xsmall{font-size:var(--text-xs)}.divider-v{background:var(--line);align-self:stretch;width:1px}.grid-2{gap:var(--s-6);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.grid-main-aside{gap:var(--s-6);grid-template-columns:minmax(0,1fr) 340px;align-items:start;display:grid}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.table th{text-align:start;font-weight:600;font-size:var(--text-xs);color:var(--muted);padding:10px var(--s-4);background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:12px var(--s-4);border-bottom:1px solid var(--line);vertical-align:middle}.table tbody tr:last-child td{border-bottom:0}.table tbody tr{transition:background-color var(--dur) var(--ease)}.table tbody tr:hover{background:var(--surface-2)}.table .row-link{color:var(--text);font-weight:600}.table .row-link:hover{text-underline-offset:3px;text-decoration:underline}.table .actions{text-align:end;white-space:nowrap}.table .actions .row{flex-wrap:nowrap;justify-content:flex-end}.empty{text-align:center;justify-items:center;gap:var(--s-2);padding:var(--s-10) var(--s-6);color:var(--muted);display:grid}.empty svg{width:28px;height:28px;color:var(--faint);margin-bottom:var(--s-1)}.empty strong{color:var(--text);font-weight:600}.empty p{max-width:44ch;font-size:var(--text-sm)}.empty .btn{margin-top:var(--s-2)}.progress{background:var(--surface-sunken);border-radius:999px;height:6px;overflow:hidden}.progress>span{background:var(--text);border-radius:inherit;height:100%;display:block}.progress.warn>span{background:var(--warn)}.progress.over>span{background:var(--danger)}.progress-label{font-size:var(--text-xs);color:var(--muted);justify-content:space-between;margin-bottom:6px;display:flex}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100dvh;display:grid}.shell[data-collapsed=true]{--sidebar-w:72px}.sidebar{background:var(--ink-0);height:100dvh;color:var(--ink-muted);padding:var(--s-4) var(--s-3);z-index:30;border-inline-end:1px solid #1a1a1a;flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:var(--s-3);padding:var(--s-1) var(--s-2) var(--s-5);color:var(--ink-text);font-weight:650;font-size:var(--text-lg);letter-spacing:-.01em;display:flex}.brand-mark{object-fit:contain;flex:none;width:34px;height:34px}.brand small{color:var(--ink-faint);letter-spacing:.01em;text-align:start;direction:ltr;font-size:11px;font-weight:450;display:block}.nav-section{margin-top:var(--s-4)}.nav-label{padding:0 var(--s-3);margin-bottom:var(--s-2);letter-spacing:.04em;color:var(--ink-faint);font-size:11px;font-weight:600}.nav-link{align-items:center;gap:var(--s-3);height:38px;padding:0 var(--s-3);border-radius:var(--r-md);color:var(--ink-muted);font-size:var(--text-md);transition:background-color var(--dur) var(--ease), color var(--dur) var(--ease);font-weight:500;display:flex;position:relative}.nav-link svg{flex:none;width:18px;height:18px}.nav-link:hover{background:var(--ink-2);color:var(--ink-text)}.nav-link[aria-current=page]{background:var(--ink-3);color:var(--ink-text)}.nav-link[aria-current=page]:before{content:"";inset-inline-start:-12px;background:var(--signal);border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px}.nav-link .count{background:var(--signal);color:#fff;border-radius:999px;place-items:center;min-width:20px;height:20px;margin-inline-start:auto;padding:0 6px;font-size:11px;font-weight:700;display:grid}.nav-link:focus-visible{box-shadow:0 0 0 2px var(--signal)}.sidebar-foot{padding-top:var(--s-4);border-top:1px solid #1f1f1f;margin-top:auto}.user-chip{align-items:center;gap:var(--s-3);padding:var(--s-2);border-radius:var(--r-md);display:flex}.avatar{width:32px;height:32px;font-size:var(--text-sm);background:var(--ink-3);color:var(--ink-text);border:1px solid var(--ink-line);border-radius:50%;flex:none;place-items:center;font-weight:650;display:grid}.avatar.light{background:var(--surface-sunken);color:var(--text-2);border-color:var(--line)}.user-chip .who{min-width:0;line-height:1.3}.user-chip .who strong{color:var(--ink-text);font-weight:550;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-chip .who span{font-size:var(--text-xs);color:var(--ink-faint)}.sidebar .btn-signout{color:var(--ink-muted);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;place-items:center;width:32px;height:32px;margin-inline-start:auto;display:grid}.sidebar .btn-signout:hover{background:var(--ink-2);color:var(--ink-text)}.sidebar .btn-signout svg{width:17px;height:17px}.collapse-toggle{align-items:center;gap:var(--s-3);width:100%;height:34px;padding:0 var(--s-3);margin-top:var(--s-2);color:var(--ink-faint);border-radius:var(--r-md);cursor:pointer;font-size:var(--text-sm);background:0 0;border:0;display:flex}.collapse-toggle:hover{color:var(--ink-text);background:var(--ink-2)}.collapse-toggle svg{width:16px;height:16px}.shell[data-collapsed=true] .nav-link span,.shell[data-collapsed=true] .nav-label,.shell[data-collapsed=true] .brand-text,.shell[data-collapsed=true] .user-chip .who,.shell[data-collapsed=true] .collapse-toggle span,.shell[data-collapsed=true] .btn-signout{display:none}.shell[data-collapsed=true] .nav-link,.shell[data-collapsed=true] .collapse-toggle{justify-content:center;padding:0}.shell[data-collapsed=true] .nav-link .count{top:2px;min-width:16px;height:16px;font-size:10px;position:absolute;inset-inline-end:6px}.shell[data-collapsed=true] .collapse-toggle svg{transform:scaleX(-1)}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;align-items:center;gap:var(--s-4);height:60px;padding:0 var(--s-8);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--line);background:#f4f4f2eb;display:flex;position:sticky;top:0}.crumbs{align-items:center;gap:var(--s-2);font-size:var(--text-sm);color:var(--muted);min-width:0;display:flex}.crumbs a:hover{color:var(--text)}.crumbs .sep{color:var(--line-strong)}.crumbs [aria-current]{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:550;overflow:hidden}.topbar-actions{align-items:center;gap:var(--s-2);margin-inline-start:auto;display:flex}.search{width:280px;position:relative}.search svg{inset-inline-start:11px;width:16px;height:16px;color:var(--faint);pointer-events:none;position:absolute;top:50%;translate:0 -50%}.search .input{background:var(--surface);min-height:36px;font-size:var(--text-sm);padding-inline-start:34px}.icon-btn{border-radius:var(--r-md);width:36px;height:36px;color:var(--text-2);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;display:grid;position:relative}.icon-btn:hover{background:var(--surface);border-color:var(--line)}.icon-btn svg{width:18px;height:18px}.icon-btn .dot{top:1px;background:var(--signal);color:#fff;border:2px solid var(--canvas);box-sizing:content-box;border-radius:999px;place-items:center;min-width:15px;height:15px;padding:0 3px;font-size:10px;font-weight:700;display:grid;position:absolute;inset-inline-end:0}.menu-toggle{display:none}.content{width:100%;max-width:1360px;padding:var(--s-8);margin:0 auto}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--s-4);margin-bottom:var(--s-6);flex-wrap:wrap;display:flex}.page-head h1{font-size:var(--text-2xl)}.page-head p{color:var(--muted);margin-top:var(--s-1);max-width:70ch}.page-head .kicker{font-size:var(--text-sm);color:var(--muted);margin-bottom:var(--s-1);gap:var(--s-2);flex-wrap:wrap;align-items:center;display:flex}.section-title{justify-content:space-between;align-items:baseline;gap:var(--s-3);margin:var(--s-8) 0 var(--s-3);display:flex}.section-title h2{font-size:var(--text-lg)}.section-title .meta{font-size:var(--text-sm);color:var(--muted)}.metrics{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.metric{padding:var(--s-5);border-inline-start:1px solid var(--line);min-width:0}.metric:first-child{border-inline-start:0}.metric .label{color:var(--muted);align-items:center;gap:6px;font-weight:500;display:flex}.metric .value{margin-top:var(--s-2);font-size:var(--text-3xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:650;line-height:1}.metric .value small{font-size:var(--text-md);color:var(--muted);letter-spacing:0;margin-inline-start:4px;font-weight:500}.metric .sub{margin-top:var(--s-2);font-size:var(--text-xs);color:var(--muted)}.metric.alert-tone .value{color:var(--danger)}.plist{margin:0;padding:0;list-style:none}.plist li+li{border-top:1px solid var(--line)}.prow{align-items:center;gap:var(--s-4);padding:14px var(--s-5);transition:background-color var(--dur) var(--ease);grid-template-columns:112px minmax(0,1.6fr) minmax(0,1fr) 128px 150px;display:grid}.prow:hover{background:var(--surface-2)}.prow .pr{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-2);text-align:end;direction:ltr;unicode-bidi:isolate}.prow .title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.prow .sub{font-size:var(--text-xs);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.prow .meter .progress-label{margin-bottom:4px}.attention li{gap:var(--s-3);padding:12px var(--s-5);align-items:flex-start;display:flex}.attention .marker{background:var(--warn);border-radius:50%;flex:none;width:8px;height:8px;margin-top:7px}.attention .marker.danger{background:var(--danger)}.tabs{gap:var(--s-1);border-bottom:1px solid var(--line);margin-bottom:var(--s-6);scrollbar-width:none;display:flex;overflow-x:auto}.tab{height:42px;padding:0 var(--s-3);cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;font-weight:550;display:inline-flex;position:relative}.tab:hover,.tab[aria-selected=true]{color:var(--text)}.tab[aria-selected=true]:after{content:"";inset-inline:var(--s-2);background:var(--signal);border-radius:2px;height:2px;position:absolute;bottom:-1px}.tab .n{font-size:var(--text-xs);color:var(--faint);font-variant-numeric:tabular-nums}.project-head{gap:var(--s-6);margin-bottom:var(--s-5);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.project-head h1{font-size:var(--text-2xl)}.facts{gap:var(--s-2) var(--s-6);margin-top:var(--s-3);font-size:var(--text-sm);color:var(--muted);flex-wrap:wrap;display:flex}.facts strong{color:var(--text);font-weight:550}.fact-list{gap:0;margin:0;display:grid}.fact-list>div{gap:var(--s-3);border-bottom:1px solid var(--line);font-size:var(--text-sm);grid-template-columns:120px minmax(0,1fr);padding:10px 0;display:grid}.fact-list>div:last-child{border-bottom:0}.fact-list dt{color:var(--muted)}.fact-list dd{color:var(--text);margin:0}.tasks{margin:0;padding:0;list-style:none}.task{gap:var(--s-3);padding:12px var(--s-5);border-top:1px solid var(--line);grid-template-columns:22px minmax(0,1fr) auto;align-items:start;display:grid}.tasks .task:first-child{border-top:0}.task .checkbox{margin-top:3px}.task-title{font-weight:550}.task-meta{gap:var(--s-2) var(--s-3);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;align-items:center;margin-top:4px;display:flex}.task-meta .overdue{color:var(--danger);font-weight:600}.doc-name{align-items:center;gap:var(--s-3);min-width:0;display:flex}.file-tag{width:38px;height:22px;font-family:var(--font-mono);letter-spacing:.02em;color:#fff;background:var(--text-2);border-radius:4px;flex:none;place-items:center;font-size:10px;font-weight:700;display:grid}.file-tag.pdf{background:#b42318}.file-tag.docx{background:#1f5fbf}.file-tag.xlsx{background:#1a7f4b}.file-tag.html{background:#8a4b00}.dropzone{text-align:center;place-items:center;gap:var(--s-2);padding:var(--s-6);border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--surface-2);color:var(--muted);cursor:pointer;transition:border-color var(--dur) var(--ease), background-color var(--dur) var(--ease);display:grid}.dropzone:hover,.dropzone[data-active=true]{border-color:var(--text);background:var(--surface)}.dropzone svg{width:22px;height:22px}.dropzone strong{color:var(--text)}.viewer{z-index:60;padding:var(--s-6);background:#0a0a0a99;grid-template-rows:auto minmax(0,1fr);display:grid;position:fixed;inset:0}.viewer-bar{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);background:var(--ink-0);color:var(--ink-text);border-radius:var(--r-lg) var(--r-lg) 0 0;display:flex}.viewer-bar .name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.viewer-bar .btn-secondary{--btn-bg:var(--ink-2);--btn-fg:var(--ink-text);--btn-border:var(--ink-line)}.viewer-bar .btn-secondary:hover{--btn-bg:var(--ink-3)}.viewer-bar .note{font-size:var(--text-xs);color:var(--ink-muted)}.viewer iframe{border-radius:0 0 var(--r-lg) var(--r-lg);background:#fff;border:0;width:100%;height:100%}.notes{margin:0;padding:0;list-style:none}.note-item{padding:var(--s-4) var(--s-5);border-top:1px solid var(--line)}.notes .note-item:first-child{border-top:0}.note-item p{white-space:pre-wrap;margin-top:6px}.timeline{padding:var(--s-2) var(--s-5);margin:0;list-style:none}.timeline li{gap:var(--s-3);font-size:var(--text-sm);grid-template-columns:14px minmax(0,1fr) auto;padding:10px 0;display:grid;position:relative}.timeline li:before{content:"";inset-inline-start:4px;background:var(--line);width:1px;position:absolute;top:0;bottom:0}.timeline li:first-child:before{top:16px}.timeline li:last-child:before{bottom:calc(100% - 16px)}.timeline .dot{background:var(--surface);border:2px solid var(--line-strong);border-radius:50%;width:9px;height:9px;margin-top:6px;position:relative}.timeline time{color:var(--faint);font-size:var(--text-xs);white-space:nowrap}.notice{gap:var(--s-3);padding:14px var(--s-5);border-top:1px solid var(--line);grid-template-columns:10px minmax(0,1fr) auto;align-items:start;display:grid}.notice:first-child{border-top:0}.notice .unread-dot{background:0 0;border-radius:50%;width:8px;height:8px;margin-top:7px}.notice.unread .unread-dot{background:var(--signal)}.notice.unread .notice-title{font-weight:650}.notice-title{font-weight:500}.notice-meta{font-size:var(--text-xs);color:var(--muted);margin-top:2px}dialog.dialog{border:1px solid var(--line);border-radius:var(--r-lg);width:min(520px,100vw - 32px);box-shadow:var(--shadow-pop);color:var(--text);padding:0}dialog.dialog::backdrop{background:#0a0a0a73}.dialog-head{padding:var(--s-5) var(--s-5) 0}.dialog-head h2{font-size:var(--text-lg)}.dialog-head p{color:var(--muted);font-size:var(--text-sm);margin-top:var(--s-1)}.dialog-body{padding:var(--s-5)}.dialog-foot{gap:var(--s-2);padding:var(--s-4) var(--s-5);border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 var(--r-lg) var(--r-lg);justify-content:flex-end;display:flex}.secret-box{font-family:var(--font-mono);text-align:left;background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-3) var(--s-4);overflow-wrap:anywhere;font-size:var(--text-sm);direction:ltr}.codes{gap:var(--s-2);direction:ltr;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.codes code{font-family:var(--font-mono);background:var(--surface-sunken);border:1px solid var(--line);border-radius:var(--r-sm);padding:6px var(--s-2);text-align:center;font-size:var(--text-sm)}.settings-section{gap:var(--s-8);padding:var(--s-8) 0;border-top:1px solid var(--line);grid-template-columns:260px minmax(0,1fr);display:grid}.settings-section:first-of-type{border-top:0;padding-top:0}.settings-section h2{font-size:var(--text-lg)}.settings-section>div:first-child p{color:var(--muted);font-size:var(--text-sm);margin-top:var(--s-1)}.toggle-row{justify-content:space-between;align-items:center;gap:var(--s-4);border-bottom:1px solid var(--line);padding:12px 0;display:flex}.toggle-row:last-child{border-bottom:0}.switch{appearance:none;background:var(--line-strong);cursor:pointer;width:38px;height:22px;transition:background-color var(--dur) var(--ease);border-radius:999px;flex:none;position:relative}.switch:after{content:"";top:3px;width:16px;height:16px;transition:inset-inline-start var(--dur) var(--ease);background:#fff;border-radius:50%;position:absolute;inset-inline-start:3px;box-shadow:0 1px 2px #0003}.switch:checked{background:var(--text)}.switch:checked:after{inset-inline-start:19px}.switch:disabled{opacity:.5;cursor:not-allowed}.auth{gap:var(--s-4);min-height:100dvh;padding:var(--s-4);background:var(--ink-0);color:var(--ink-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.auth-pane{padding:var(--s-10) var(--s-6);place-items:center;display:grid}.auth-form{width:100%;max-width:448px}.auth-logo{align-items:center;gap:var(--s-3);margin-bottom:var(--s-10);color:var(--ink-text);font-weight:650;font-size:var(--text-lg);display:flex}.auth-logo img{object-fit:contain;width:40px;height:40px}.auth h1{letter-spacing:-.03em;font-size:2.75rem;font-weight:600;line-height:1.1}.auth .lede{margin-top:var(--s-4);color:var(--ink-muted);font-size:var(--text-lg);line-height:1.5}.auth form{margin-top:var(--s-8)}.auth .field+.field{margin-top:var(--s-5)}.auth .label{color:var(--ink-muted);font-weight:450;font-size:var(--text-md)}.auth .input{min-height:52px;padding:0 var(--s-4);border-radius:var(--r-lg);background:var(--ink-2);border-color:var(--ink-line);color:var(--ink-text);font-size:var(--text-md)}.auth .input::placeholder{color:var(--ink-faint)}.auth .input:hover{border-color:var(--ink-line-strong)}.auth .input:focus{border-color:#8a8a8a;box-shadow:0 0 0 3px #ffffff14}.auth .input[aria-invalid=true]{border-color:#b44}.auth .input.code{font-family:var(--font-mono);letter-spacing:.4em;text-align:center;direction:ltr;font-size:1.25rem}.password-wrap{position:relative}.password-wrap .input{padding-inline-end:52px}.reveal{inset-inline-end:6px;border-radius:var(--r-md);width:40px;height:40px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:50%;translate:0 -50%}.reveal:hover{color:var(--ink-text);background:var(--ink-3)}.reveal svg{width:19px;height:19px}.auth .btn-primary{--btn-bg:var(--ink-button);--btn-fg:#0a0a0a;border-radius:var(--r-lg);min-height:52px;font-size:var(--text-lg);font-weight:500}.auth .btn-primary:hover{--btn-bg:var(--ink-button-hover)}.auth .btn-outline{--btn-bg:transparent;--btn-fg:var(--ink-text);--btn-border:var(--ink-line);border-radius:var(--r-lg);min-height:52px;font-size:var(--text-md);font-weight:500}.auth .btn-outline:hover{--btn-bg:var(--ink-1);--btn-border:var(--ink-line-strong)}.auth .btn-outline[aria-disabled=true]{opacity:.45}.auth .btn-outline svg{width:18px;height:18px}.auth :focus-visible{box-shadow:0 0 0 2px var(--ink-0), 0 0 0 4px var(--signal)}.auth-row{justify-content:space-between;align-items:center;gap:var(--s-3);margin:var(--s-5) 0 var(--s-6);font-size:var(--text-sm);color:var(--ink-muted);display:flex}.text-link{color:var(--ink-text);text-decoration:underline;-webkit-text-decoration-color:var(--ink-line-strong);text-decoration-color:var(--ink-line-strong);text-underline-offset:3px;cursor:pointer;font-size:inherit;background:0 0;border:0;padding:0}.text-link:hover{-webkit-text-decoration-color:var(--ink-text);text-decoration-color:var(--ink-text)}.or{align-items:center;gap:var(--s-4);margin:var(--s-6) 0;color:var(--ink-faint);font-size:var(--text-sm);display:flex}.or:before,.or:after{content:"";background:var(--ink-line);flex:1;height:1px}.auth-note{margin-top:var(--s-8);text-align:center;font-size:var(--text-sm);color:var(--ink-faint)}.auth .alert-error{color:#ffb4b4;margin-top:var(--s-5);background:#2a1212;border-color:#5a2323}.auth .alert-info{background:var(--ink-1);border-color:var(--ink-line);color:var(--ink-muted)}.auth .alert-success{color:#9fe0bb;background:#0f2418;border-color:#1f4a32}.auth .secret-box,.auth .codes code{background:var(--ink-2);border-color:var(--ink-line);color:var(--ink-text)}.qr{border-radius:var(--r-md);background:#fff;width:176px;height:176px;padding:8px}.mfa-setup{gap:var(--s-5);margin-top:var(--s-6);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.steps{margin:var(--s-6) 0 0;counter-reset:step;gap:var(--s-3);color:var(--ink-muted);font-size:var(--text-sm);padding:0;list-style:none;display:grid}.steps li{counter-increment:step;gap:var(--s-3);grid-template-columns:24px minmax(0,1fr);display:grid}.steps li:before{content:counter(step);border:1px solid var(--ink-line);width:24px;height:24px;font-size:var(--text-xs);color:var(--ink-text);border-radius:50%;place-items:center;display:grid}.auth-visual{background:#050505;border-radius:24px;min-height:560px;position:relative;overflow:hidden}.auth-visual svg.ribbons{width:100%;height:100%;position:absolute;inset:0}.auth-visual .caption{inset-inline:var(--s-8);bottom:var(--s-8);justify-content:space-between;align-items:flex-end;gap:var(--s-4);display:flex;position:absolute}.auth-visual .caption strong{font-size:var(--text-2xl);letter-spacing:-.02em;color:#fff;text-align:start;direction:ltr;font-weight:600;display:block}.auth-visual .caption span{margin-top:var(--s-1);color:#ffffffb3;font-size:var(--text-sm);display:block}.auth-visual .mark{object-fit:contain;filter:drop-shadow(0 0 18px #ff7a0059);width:64px;height:64px}.ribbon{transform-origin:50%}@media (prefers-reduced-motion:no-preference){.ribbon-a{animation:18s ease-in-out infinite alternate drift}.ribbon-b{animation:22s ease-in-out infinite alternate-reverse drift}}@keyframes drift{0%{transform:translate(0,0)}to{transform:translate(-18px,14px)}}.main{background-image:radial-gradient(900px 360px at 100% -80px,#e8590c12,#0000 70%),radial-gradient(800px 320px at 0 -60px,#1f6feb0f,#0000 70%);background-repeat:no-repeat}.dash-head h1{font-size:var(--text-3xl);letter-spacing:-.025em}.dash-head .hl{color:var(--signal-strong)}.kpi-icon{border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.kpi-icon svg{width:21px;height:21px}.kpi-icon.sm{border-radius:10px;width:34px;height:34px}.kpi-icon.sm svg{width:18px;height:18px}.tint-orange{background:var(--tint-orange);color:var(--tint-orange-fg)}.tint-blue{background:var(--tint-blue);color:var(--tint-blue-fg)}.tint-cyan{background:var(--tint-cyan);color:var(--tint-cyan-fg)}.tint-amber{background:var(--tint-amber);color:var(--tint-amber-fg)}.tint-ok{background:var(--ok-soft);color:var(--ok)}.tint-danger{background:var(--danger-soft);color:var(--danger)}.kpis{gap:var(--s-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-card);padding:var(--s-5);align-content:start;gap:2px;min-width:0;display:grid;position:relative;overflow:hidden}.kpi .kpi-icon{margin-bottom:var(--s-3)}.kpi .label{font-size:var(--text-sm);color:var(--muted);font-weight:500}.kpi .value{font-size:var(--text-3xl);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-weight:650;line-height:1.1}.kpi .value small{font-size:var(--text-md);color:var(--muted);letter-spacing:0;margin-inline-start:3px;font-weight:500}.kpi .sub{font-size:var(--text-xs);color:var(--muted)}.kpi .progress{margin-top:var(--s-2)}.kpi.alert-tone .value{color:var(--danger)}.progress.thin{height:5px}.progress.thin>span{background:linear-gradient(90deg, var(--brand-cyan), var(--brand-blue))}.progress.thin.warn>span{background:var(--warn)}.progress.thin.over>span{background:var(--danger)}.dash-grid{gap:var(--s-6);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.widget{flex-direction:column;min-width:0;display:flex}.widget.span-full{grid-column:span 12}.widget.span-wide{grid-column:span 8}.widget.span-half{grid-column:span 6}.widget.span-third{grid-column:span 4}.widget-body{flex-direction:column;flex:1;min-width:0;display:flex;container-type:inline-size}.widget-body>.panel{flex-direction:column;flex:1;display:flex}.widget-body>.panel>.panel-body{flex-direction:column;flex:1;justify-content:center;display:flex}.widget .cols{flex:1}@container (max-width:820px){.prow{grid-template-columns:104px minmax(0,1fr) 120px 130px}.prow .col-customer{display:none}}@container (max-width:560px){.prow{gap:var(--s-2) var(--s-3);grid-template-columns:minmax(0,1fr) auto}.prow .pr{text-align:start;font-size:var(--text-xs);order:-1;grid-column:1/-1;justify-self:end}.prow .meter{grid-column:1/-1}}@container (max-width:520px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.dash-editbar{justify-content:space-between;align-items:center;gap:var(--s-3) var(--s-4);padding:var(--s-4) var(--s-5);margin-bottom:var(--s-6);background:var(--signal-soft);border-radius:var(--r-card);border:1px solid #f6cfb5;flex-wrap:wrap;display:flex}.dash-editbar-text{font-size:var(--text-sm);gap:2px;display:grid}.dash-editbar-text span{color:var(--text-2)}.dash-hidden{align-items:center;gap:var(--s-2);flex-wrap:wrap;flex-basis:100%;display:flex}.chip-btn{border:1px dashed var(--line-strong);background:var(--surface);font-size:var(--text-xs);cursor:pointer;transition:border-color var(--dur) var(--ease), background var(--dur) var(--ease);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-weight:550;display:inline-flex}.chip-btn:hover{border-color:var(--signal);background:#fff}.dash-grid[data-editing=true] .widget{cursor:grab;border-radius:calc(var(--r-card) + 4px);outline:2px dashed var(--line-strong);outline-offset:4px;transition:outline-color var(--dur) var(--ease)}.dash-grid[data-editing=true] .widget:active{cursor:grabbing}.dash-grid[data-editing=true] .widget[data-drop=true]{outline-color:var(--signal);outline-style:solid}.widget-bar{align-items:center;gap:var(--s-1) var(--s-2);margin-bottom:var(--s-2);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1);font-size:var(--text-sm);border-radius:12px;flex-wrap:wrap;min-width:0;padding:6px 6px 6px 12px;padding-inline-start:12px;display:flex}.widget-bar strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.widget-grip{color:var(--faint);letter-spacing:-2px;-webkit-user-select:none;user-select:none}.widget-body[inert]{opacity:.7;pointer-events:none;-webkit-user-select:none;user-select:none}.head-with-icon{align-items:center;gap:var(--s-3);min-width:0;display:flex}.head-with-icon .meta{font-size:var(--text-xs);color:var(--muted);display:block}.head-stats{gap:var(--s-5);display:flex}.head-stats>div{text-align:end;line-height:1.2;display:grid}.head-stats strong{font-size:var(--text-lg);font-weight:650}.head-stats span{font-size:var(--text-xs);color:var(--muted)}.donut{align-items:center;gap:var(--s-6);flex-wrap:wrap;justify-content:center;display:flex}.donut-figure{flex:none;width:188px;position:relative}.donut-figure svg{width:100%;height:auto;overflow:visible}.donut-arc{transition:stroke-width var(--dur) var(--ease), opacity var(--dur) var(--ease);cursor:default}.donut-arc[data-dim=true]{opacity:.3}.donut-center{text-align:center;pointer-events:none;place-content:center;line-height:1.15;display:grid;position:absolute;inset:0}.donut-center strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:2.25rem;font-weight:650}.donut-center span{font-size:var(--text-xs);color:var(--muted);max-width:110px}.legend{flex:180px;gap:2px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.legend-item{gap:var(--s-2);border-radius:var(--r-md);width:100%;font-size:var(--text-sm);text-align:start;cursor:default;transition:background var(--dur) var(--ease), opacity var(--dur) var(--ease);background:0 0;border:0;grid-template-columns:10px minmax(0,1fr) auto 40px;align-items:center;padding:6px 8px;display:grid}.legend-item:hover:not(:disabled){background:var(--surface-2)}.legend-item:disabled,.legend-item[data-dim=true]{opacity:.45}.legend .swatch{border-radius:3px;width:10px;height:10px}.legend-value{font-weight:650}.legend-pct{color:var(--muted);font-size:var(--text-xs);text-align:end}.cols{min-height:240px;padding-inline-end:28px;position:relative}.cols-grid{pointer-events:none;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:30px 0 38px}.cols-tick{border-top:1px dashed var(--line);position:relative}.cols-tick:last-child{border-top-style:solid;border-top-color:var(--line-strong)}.cols-tick span{inset-inline-end:0;color:var(--faint);background:var(--surface);padding-inline-start:4px;font-size:11px;position:absolute;top:-9px}.cols-bars{grid-template-columns:repeat(14,minmax(0,1fr));height:100%;margin:0;padding:30px 0 0;list-style:none;display:grid;position:relative}.cols-bars li{min-width:0;display:flex}.col{cursor:default;border-radius:var(--r-md);background:0 0;border:0;flex-direction:column;flex:1;align-items:center;min-width:0;padding:0;display:flex}.col-track{flex:1;justify-content:center;align-items:flex-end;width:100%;display:flex;position:relative}.col-bar{width:min(24px,62%);transition:background var(--dur) var(--ease), height .42s var(--ease);background:linear-gradient(#5b95f6 0%,#a9c8fb 100%);border-radius:6px 6px 2px 2px}.col[data-active=true] .col-bar{background:var(--brand-blue)}.col[data-today=true] .col-bar{background:linear-gradient(180deg, var(--signal) 0%, #f5a05f 100%)}.col[data-today=true][data-active=true] .col-bar{background:var(--signal-strong)}.col-chip{white-space:nowrap;background:var(--text);color:#fff;box-shadow:var(--shadow-1);z-index:1;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.col-label{height:38px;color:var(--faint);align-content:center;place-items:center;font-size:11px;line-height:1.25;display:grid}.col[data-today=true] .col-label{color:var(--signal-strong);font-weight:650}.leaders{padding:var(--s-2) 0;margin:0;list-style:none}.leaders li{gap:var(--s-3);padding:10px var(--s-5);grid-template-columns:28px minmax(0,1fr);align-items:start;display:grid}.rank{width:28px;height:28px;font-size:var(--text-xs);background:var(--surface-sunken);color:var(--muted);border-radius:9px;place-items:center;font-weight:700;display:grid}.rank-1{background:var(--tint-amber);color:var(--tint-amber-fg)}.rank-2{color:#4b5563;background:#eef0f3}.rank-3{background:var(--tint-orange);color:var(--tint-orange-fg)}.leader-main{gap:4px;min-width:0;display:grid}.leader-title{font-weight:600;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.task{transition:background var(--dur) var(--ease)}.task.done{background:linear-gradient(90deg, transparent, var(--ok-soft))}.task.done .task-title{color:var(--ok);text-decoration:none}.task .checkbox{accent-color:var(--ok)}.task-desc{font-size:var(--text-sm);color:var(--text-2);white-space:pre-wrap;overflow-wrap:anywhere;max-width:75ch;margin-top:2px}.task.done .task-desc{color:var(--muted)}.done-pill{color:var(--ok);align-items:center;gap:4px;font-weight:600;display:inline-flex}.done-pill svg{width:14px;height:14px}.add-desc{color:var(--muted);font-size:var(--text-sm);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.add-desc:hover{color:var(--text)}.doc-list{padding:var(--s-2) 0;margin:0;list-style:none}.doc-list li+li{border-top:1px solid var(--line)}.doc-row{gap:var(--s-3);width:100%;padding:10px var(--s-5);text-align:start;cursor:pointer;transition:background var(--dur) var(--ease);background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.doc-row:hover{background:var(--surface-2)}.doc-row strong{font-weight:550;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.profile-hero{padding:var(--s-8);align-items:center;gap:var(--s-6);flex-wrap:wrap;display:flex;position:relative;overflow:hidden}.profile-hero:before{content:"";pointer-events:none;background:radial-gradient(400px 120px at 90% 0,#e8590c29,#0000 70%),radial-gradient(400px 120px at 10% 0,#0bb4e624,#0000 70%);height:96px;position:absolute;inset:0 0 auto}.avatar-xl{color:#fff;background:linear-gradient(135deg, var(--signal) 0%, #f08c00 45%, var(--brand-blue) 100%);width:96px;height:96px;box-shadow:0 0 0 4px var(--surface), var(--shadow-lift);border-radius:28px;flex:none;place-items:center;font-size:2rem;font-weight:700;display:grid;position:relative}.profile-id{flex:1;min-width:0;position:relative}.profile-id h1{font-size:var(--text-2xl)}.profile-id .row{margin-top:var(--s-2)}.week-strip{gap:var(--s-2);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.week-day{font-size:var(--text-xs);color:var(--muted);border-radius:14px;justify-items:center;gap:4px;padding:10px 4px;display:grid}.week-day strong{font-size:var(--text-lg);color:var(--text);font-variant-numeric:tabular-nums}.week-day[data-today=true]{background:var(--signal);color:#fff;box-shadow:0 8px 18px -8px #e8590cb3}.week-day[data-today=true] strong{color:#fff}.week-dot{background:var(--tint-blue);min-width:18px;height:18px;color:var(--tint-blue-fg);border-radius:999px;place-items:center;padding:0 5px;font-size:11px;font-weight:650;display:grid}.week-day[data-today=true] .week-dot{color:#fff;background:#ffffff40}.week-dot.empty{visibility:hidden}.user-chip .who-link{align-items:center;gap:var(--s-3);border-radius:var(--r-md);flex:1;min-width:0;display:flex}.user-chip .who-link:hover .who strong{color:#fff;text-underline-offset:3px;text-decoration:underline}@media (prefers-reduced-motion:no-preference){.kpi,.card-in{animation:rise .46s var(--ease) both;animation-delay:calc(var(--i,0) * 45ms)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (max-width:1180px){.widget.span-wide{grid-column:span 12}.widget.span-third{grid-column:span 6}}@media (max-width:960px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.dash-grid>.widget{grid-column:1/-1}.dash-head h1{font-size:var(--text-2xl)}.cols{min-height:200px}.cols-bars{grid-template-columns:repeat(14,minmax(0,1fr))}.col-label>span:first-child{display:none}.profile-hero{padding:var(--s-6)}}@media (max-width:520px){.kpis{gap:var(--s-3)}.kpi{padding:var(--s-4)}.kpi .value{font-size:var(--text-2xl)}.head-stats{display:none}}@media (max-width:1180px){.grid-main-aside{grid-template-columns:minmax(0,1fr)}.prow{grid-template-columns:104px minmax(0,1fr) 120px 130px}.prow .col-customer{display:none}.search{width:220px}}@media (max-width:960px){.auth{grid-template-columns:minmax(0,1fr);padding:0}.auth-visual{display:none}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric:nth-child(3){border-inline-start:0}.metric:nth-child(n+3){border-top:1px solid var(--line)}.grid-2,.settings-section{gap:var(--s-4);grid-template-columns:minmax(0,1fr)}}@media (max-width:860px){.shell,.shell[data-collapsed=true]{--sidebar-w:280px;grid-template-columns:minmax(0,1fr)}.sidebar{width:var(--sidebar-w);transition:transform .22s var(--ease);box-shadow:none;position:fixed;inset-block:0;inset-inline-start:0;transform:translate(100%)}.shell[data-nav-open=true] .sidebar{box-shadow:var(--shadow-pop);transform:none}.shell[data-collapsed=true] .nav-link span,.shell[data-collapsed=true] .nav-label,.shell[data-collapsed=true] .brand-text,.shell[data-collapsed=true] .user-chip .who,.shell[data-collapsed=true] .btn-signout{display:revert}.shell[data-collapsed=true] .nav-link{padding:0 var(--s-3);justify-content:flex-start}.collapse-toggle{display:none}.scrim{z-index:25;background:#0a0a0a66;border:0;position:fixed;inset:0}.menu-toggle{display:grid}.topbar{padding:0 var(--s-4)}.search,.crumbs>span:not(:last-child){display:none}.content{padding:var(--s-5) var(--s-4) var(--s-10)}.project-head{grid-template-columns:minmax(0,1fr)}.prow{gap:var(--s-2) var(--s-3);grid-template-columns:minmax(0,1fr) auto}.prow .pr{text-align:start;font-size:var(--text-xs);direction:ltr;order:-1;grid-column:1/-1;justify-self:end}.prow .meter{grid-column:1/-1}.form-grid{grid-template-columns:minmax(0,1fr)}.viewer{padding:0}.viewer-bar{border-radius:0;flex-wrap:wrap}.viewer iframe{border-radius:0}.table .hide-sm{display:none}}@media (max-width:520px){.auth-pane{padding:var(--s-8) var(--s-4);place-items:start center}.auth h1{font-size:2.25rem}.auth-logo{margin-bottom:var(--s-8)}.metrics{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.metric{padding:var(--s-4)}.metric .value{font-size:var(--text-2xl)}.mfa-setup{grid-template-columns:minmax(0,1fr);justify-items:center}.page-head h1,.project-head h1{font-size:var(--text-xl)}.panel-head,.panel-body,.task,.notice,.note-item{padding-inline:var(--s-4)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media print{.sidebar,.topbar{display:none}.shell{display:block}}.monitor-list{display:grid}.monitor-person+.monitor-person{border-top:1px solid var(--line)}.monitor-person summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.monitor-person summary:hover,.monitor-person summary:focus-visible{background:var(--surface-sunken)}.monitor-projects{border-top:1px solid var(--line);padding:4px 20px 12px}.monitor-project{justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.monitor-project+.monitor-project{border-top:1px solid var(--line)}.monitor-project-title{flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0;display:flex}.monitor-progress{align-items:center;gap:10px;min-width:160px;display:flex}.monitor-progress progress{width:120px;height:8px;accent-color:var(--ok)}.search-results{margin:0;padding:0;list-style:none}.search-results li+li{border-top:1px solid var(--line)}.search-results a{padding:12px 20px;text-decoration:none;display:block}.search-results a:hover,.search-results a:focus-visible{background:var(--surface-sunken)}@media (max-width:520px){.monitor-project{flex-direction:column;align-items:flex-start;gap:8px}.monitor-progress{width:100%}.monitor-progress progress{width:min(220px,70%)}}
