:root{--color-brand: #ff6b2c;--color-brand-hover: #f2601f;--color-brand-ink: #ffffff;--color-brand-text: #c4511c;--color-brand-tint: #fff1ea;--color-brand-logo-deep: #fc5900;--color-brand-logo-light: #ff914d;--color-canvas: #f8f9fb;--color-surface: #ffffff;--color-soft: #f3f4f7;--color-hairline: #edeff3;--color-ink: #1a2332;--color-ink-muted: #6b7280;--color-side: #1f1e1c;--color-side-active: #33312e;--color-side-text: #e9e7e2;--color-side-muted: #a9a59d;--color-side-divider: #36342f;--color-alert-bg: #fbecea;--color-alert-fg: #9c3b33;--color-todo-bg: #eaf0f8;--color-todo-fg: #33558a;--color-done-bg: #e9f3ed;--color-done-fg: #2d6a4a;--color-due-bg: #fbf1e6;--color-due-fg: #8a5a24;--color-muted-bg: #f2f0ec;--color-muted-fg: #5f5e5a;--color-flag-bg: #f1edf8;--color-flag-fg: #55407e;--color-chart-1: #ff6b2c;--color-chart-2: #ff8c5a;--color-chart-3: #ffad87;--color-chart-4: #ffcdb3;--color-chart-5: #ffe6d9;--color-linkedin: #0a66c2;--color-instagram: #d62976;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-pill: 999px;--shadow-pop: 0 8px 24px rgba(26,35,50,.12);--shadow-drawer: 0 20px 50px rgba(26,35,50,.25);--font-sans: "Geist Variable", "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--type-page-title-size: 20px;--type-page-title-line: 26px;--type-page-title-weight: 600;--type-section-title-size: 14.4px;--type-section-title-line: 20px;--type-section-title-weight: 600;--type-kpi-value-size: 22px;--type-kpi-value-line: 28px;--type-kpi-value-weight: 600;--type-body-size: 14px;--type-body-line: 20px;--type-body-weight: 400;--type-small-size: 12.8px;--type-small-line: 18px;--type-small-weight: 400;--type-label-size: 11.5px;--type-label-line: 16px;--type-label-weight: 500;--type-eyebrow-size: 11px;--type-eyebrow-line: 14px;--type-eyebrow-weight: 600;--type-eyebrow-tracking: .08em}.t-page-title{font-size:var(--type-page-title-size);line-height:var(--type-page-title-line);font-weight:var(--type-page-title-weight)}.t-section-title{font-size:var(--type-section-title-size);line-height:var(--type-section-title-line);font-weight:var(--type-section-title-weight)}.t-kpi-value{font-size:var(--type-kpi-value-size);line-height:var(--type-kpi-value-line);font-weight:var(--type-kpi-value-weight)}.t-body{font-size:var(--type-body-size);line-height:var(--type-body-line);font-weight:var(--type-body-weight)}.t-small{font-size:var(--type-small-size);line-height:var(--type-small-line);font-weight:var(--type-small-weight)}.t-label{font-size:var(--type-label-size);line-height:var(--type-label-line);font-weight:var(--type-label-weight)}.t-eyebrow{font-size:var(--type-eyebrow-size);line-height:var(--type-eyebrow-line);font-weight:var(--type-eyebrow-weight);letter-spacing:var(--type-eyebrow-tracking);text-transform:uppercase}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--type-body-size);line-height:var(--type-body-line);color:var(--color-ink);background:var(--color-canvas);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}a{color:var(--color-brand-text)}:focus-visible{outline:2px solid var(--color-brand-text);outline-offset:2px}.app{position:relative;display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100%;background:var(--color-canvas)}.app.collapsed{grid-template-columns:68px minmax(0,1fr)}.side{position:relative;background:var(--color-side);color:#fff;display:flex;flex-direction:column;padding:16px 10px;min-height:100vh}.logo{display:block;padding:4px 8px 20px;color:inherit;text-decoration:none}.logo-wrap{display:grid;gap:2px;justify-items:end;width:max-content}.logo-wrap small{font-size:.62rem;letter-spacing:.14em;font-weight:600;color:var(--color-side-muted)}.logo-icon{display:none}.collapse-btn{position:absolute;top:30px;right:-11px;z-index:6;width:22px;height:22px;border-radius:6px;border:1px solid var(--color-hairline);background:#fff;color:var(--color-ink-muted);display:grid;place-items:center;cursor:pointer;padding:0;box-shadow:0 1px 3px #1a233224}.collapse-btn:hover{color:var(--color-ink)}.collapse-btn svg{width:13px;height:13px}.nav{display:grid;gap:2px;align-content:start}.nav .grp{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-side-muted);padding:14px 10px 4px;font-weight:600}.nav a{display:flex;align-items:center;gap:10px;color:var(--color-side-text);text-decoration:none;padding:8px 10px;border-radius:6px;font-size:.86rem;position:relative}.nav a svg{width:16px;height:16px;flex:none;opacity:.85}.nav a:hover{background:var(--color-side-active)}.nav a.on{background:var(--color-side-active);color:#fff;font-weight:500}.nav a.on:before{content:"";position:absolute;left:-10px;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--color-brand)}.nav a.sub{padding:6px 10px 6px 36px;font-size:.82rem;color:#cfcdc7}.nav a.sub.on,.nav a.parent.open{color:#fff}.side .foot{margin-top:auto;border-top:1px solid var(--color-side-divider);padding:12px 10px 0;font-size:.78rem;color:var(--color-side-muted)}.app.collapsed .logo{padding:4px 0 20px;display:flex;justify-content:center}.app.collapsed .logo-wrap{display:none}.app.collapsed .logo-icon{display:block}.app.collapsed .nav a{font-size:0;gap:0;justify-content:center;padding:10px 0}.app.collapsed .nav a svg{width:18px;height:18px;opacity:.9}.app.collapsed .nav a.sub{display:none}.app.collapsed .nav a.parent.open{background:var(--color-side-active)}.app.collapsed .nav .grp{font-size:0;padding:0;height:1px;background:var(--color-side-divider);margin:10px 8px}.app.collapsed .side .foot{display:none}.side-bg{display:none;position:fixed;inset:0;background:#1a233259;z-index:45}.main{display:flex;flex-direction:column;min-width:0}.top{min-height:56px;background:var(--color-surface);border-bottom:1px solid var(--color-hairline);display:flex;align-items:center;gap:12px;padding:8px 16px;flex-wrap:wrap}.top>.right{margin-left:auto;display:flex;align-items:center;gap:12px}.iconbtn{width:36px;height:36px;display:inline-grid;place-items:center;border:1px solid var(--color-hairline);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);cursor:pointer;padding:0}.iconbtn svg{width:18px;height:18px}.menubtn{display:none}.dd{position:relative}.dd-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--color-hairline);background:var(--color-surface);border-radius:var(--radius-md);padding:6px 10px;font:inherit;color:var(--color-ink);cursor:pointer}.dd-btn.bare{border-color:transparent;background:none;padding:2px}.dd-pop{position:absolute;top:calc(100% + 6px);z-index:30;min-width:200px;background:var(--color-surface);border:1px solid var(--color-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-pop);padding:6px;display:grid}.dd-pop.right{right:0}.dd-pop a,.dd-pop button{display:block;text-align:left;padding:8px 10px;border-radius:6px;border:0;background:none;font:inherit;color:var(--color-ink);text-decoration:none;cursor:pointer}.dd-pop a:hover,.dd-pop button:hover{background:var(--color-soft)}.avatar{width:32px;height:32px;border-radius:50%;display:inline-grid;place-items:center;font-size:.7rem;font-weight:600;flex:none;background:#eef0f3;color:var(--color-ink)}.avatar.brand{background:var(--color-brand);color:var(--color-brand-ink)}.who{display:grid;line-height:1.15;text-align:left}.who span{font-size:.8rem;font-weight:500}.who small{color:var(--color-ink-muted);font-size:.72rem}.client-picker{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--color-hairline);border-radius:var(--radius-md);padding:0 8px;background:var(--color-surface);max-width:100%}.client-picker svg{width:14px;height:14px;flex:none;color:var(--color-ink-muted)}.client-picker select{border:0;background:none;font:inherit;font-weight:500;padding:6px 0;min-width:0;max-width:220px;color:var(--color-ink)}.content{padding:var(--space-5);display:grid;gap:var(--space-4);align-content:start}.bc{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.8rem;color:var(--color-ink-muted)}.bc-item{display:inline-flex;gap:6px;align-items:center}.bc a{color:var(--color-ink-muted);text-decoration:none}.bc a:hover{color:var(--color-ink);text-decoration:underline}.bc .sep{color:#c2c6cd}.bc b{color:var(--color-ink);font-weight:500}.boot{min-height:100vh;background:var(--color-canvas)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.card{background:var(--color-surface);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);padding:var(--space-4)}.empty{text-align:center;padding:48px var(--space-4)}.page-title{font-size:var(--type-page-title-size);line-height:var(--type-page-title-line);font-weight:var(--type-page-title-weight);margin:0 0 var(--space-2)}.section-title{font-size:var(--type-section-title-size);line-height:var(--type-section-title-line);font-weight:var(--type-section-title-weight);margin:0}.muted{color:var(--color-ink-muted)}.small{font-size:var(--type-small-size)}.notice{margin:0;padding:10px 12px;border-radius:var(--radius-md);background:var(--color-alert-bg);color:var(--color-alert-fg);font-size:var(--type-small-size)}.notice.ok{background:var(--color-done-bg);color:var(--color-done-fg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 18px;border-radius:var(--radius-pill);border:1px solid var(--color-hairline);background:var(--color-surface);color:var(--color-ink);font:inherit;font-weight:500;text-decoration:none;cursor:pointer}.btn.primary{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-brand-ink);font-weight:600}.btn.primary:hover{background:var(--color-brand-hover);border-color:var(--color-brand-hover)}.btn:disabled{opacity:.6;cursor:default}.field{display:grid;gap:6px;font-size:var(--type-label-size);font-weight:var(--type-label-weight)}.field input{font:inherit;font-weight:400;padding:9px 12px;border:1px solid var(--color-hairline);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-ink);width:100%}.field input[aria-invalid=true]{border-color:var(--color-alert-fg)}.field-error{color:var(--color-alert-fg);font-size:var(--type-small-size);margin:0}.cxf{min-height:100vh;background:var(--color-canvas);display:flex;flex-direction:column;align-items:center;padding:48px 16px 20px}.cxmain{width:100%;display:flex;justify-content:center}.cxc{width:100%;max-width:400px;background:var(--color-surface);border:1px solid var(--color-hairline);border-radius:12px;padding:32px;display:grid;gap:18px;box-shadow:0 1px 3px #1a233214;min-width:0}.cxlogo{display:grid;justify-items:end;width:max-content;margin:0 auto 4px;gap:0}.cxlogo img{display:block;width:200px;height:auto}.cxlogo span{font-size:.78rem;font-weight:700;letter-spacing:.04em;color:var(--color-ink);margin-top:-2px}.cxh{display:grid;gap:6px;text-align:center}.cxh h1,.cx-title{font-size:1.15rem;font-weight:600;line-height:1.3;margin:0;text-align:center}.cxh p{margin:0;color:var(--color-ink-muted);font-size:.88rem}.cxc p{margin:0}.cxc .field span{font-size:.84rem;font-weight:500}.cxc .field input{font-size:16px;padding:10px 12px;border-radius:8px}.cxbtn{width:100%;min-height:42px;padding:10px 18px;font-size:.92rem;border-radius:8px}.cxfoot{margin-top:auto;padding-top:32px;font-size:.78rem;color:var(--color-ink-muted)}@media (max-width: 760px){.app,.app.collapsed{grid-template-columns:minmax(0,1fr)}.side{position:fixed;top:0;left:0;bottom:0;width:264px;z-index:50;transform:translate(-105%);transition:transform .2s ease;box-shadow:8px 0 30px #0003;overflow-y:auto;visibility:hidden}.app.navopen .side{transform:none;visibility:visible}.app.navopen .side-bg{display:block}.collapse-btn{display:none}.app.collapsed .logo{padding:4px 8px 20px;display:block}.app.collapsed .logo-wrap{display:grid}.app.collapsed .logo-icon{display:none}.app.collapsed .nav a{font-size:.86rem;gap:10px;justify-content:flex-start;padding:8px 10px}.app.collapsed .nav a.sub{display:flex;padding-left:36px}.app.collapsed .nav .grp{font-size:.66rem;height:auto;background:none;padding:14px 10px 4px;margin:0}.app.collapsed .side .foot{display:block}.menubtn{display:inline-grid}.who{display:none}.content{padding:var(--space-4)}}@media (prefers-reduced-motion: reduce){.side{transition:none}}
