:root {
  color-scheme: light dark;
  --font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --mono: "SFMono-Regular", Consolas, monospace;
  --rail: #f4f5f7; --canvas: #fbfbfc; --surface: #ffffff; --surface-2: #f7f7f8; --hover: #f0f1f3;
  --line: #e6e7e9; --line-strong: #d6d8dc; --ink: #202124; --muted: #6f737b; --faint: #9b9fa7;
  --accent: #5e6ad2; --accent-hover: #4f5bc4; --accent-soft: #eef0ff; --focus: rgba(94,106,210,.28);
  --green: #1f8a5b; --green-soft: #eaf7f1; --amber: #a16400; --amber-soft: #fff4da; --red: #c84848; --red-soft: #fff0f0;
  --shadow: 0 1px 2px rgba(15,23,42,.05), 0 8px 28px rgba(15,23,42,.04); --radius: 10px; --fast: 120ms;
}
@media (prefers-color-scheme: dark) { :root { --rail:#18191b; --canvas:#1d1e20; --surface:#232426; --surface-2:#282a2d; --hover:#2d2f32; --line:#333538; --line-strong:#42454a; --ink:#f0f1f2; --muted:#a6a9ae; --faint:#777b82; --accent:#8b93ef; --accent-hover:#9da4f4; --accent-soft:#292d4d; --focus:rgba(139,147,239,.3); --green:#67c79c; --green-soft:#203b31; --amber:#e5b765; --amber-soft:#3c321f; --red:#ef8585; --red-soft:#412727; --shadow:none; } }
* { box-sizing: border-box; }
html, body { margin:0; min-height:100%; background:var(--canvas); color:var(--ink); font-family:var(--font); font-size:14px; -webkit-font-smoothing:antialiased; }
body { min-height:100dvh; } a { color:inherit; text-decoration:none; } button,input { font:inherit; color:inherit; } button { cursor:pointer; }
button:focus-visible,input:focus-visible,a:focus-visible { outline:2px solid var(--accent); outline-offset:2px; box-shadow:0 0 0 4px var(--focus); }
.workspace-shell { min-height:100dvh; display:grid; grid-template-columns:224px minmax(0,1fr); background:var(--canvas); }
.workspace-rail { position:sticky; top:0; height:100dvh; display:flex; flex-direction:column; gap:18px; padding:14px 12px; background:var(--rail); border-right:1px solid var(--line); }
.workspace-brand { display:flex; align-items:center; gap:10px; padding:3px 7px; font-weight:650; letter-spacing:-.01em; }
.workspace-brand-mark { width:26px; height:26px; display:grid; place-items:center; border-radius:7px; color:white; background:linear-gradient(145deg,#7881e5,#4f59c0); font-size:12px; box-shadow:inset 0 1px rgba(255,255,255,.25); }
.workspace-switcher,.workspace-rail-footer { display:flex; align-items:center; gap:9px; padding:8px; border:1px solid var(--line); background:var(--surface); border-radius:8px; box-shadow:var(--shadow); }
.workspace-switcher span:nth-child(2),.workspace-rail-footer span:nth-child(2) { display:flex; min-width:0; flex:1; flex-direction:column; }
.workspace-switcher strong,.workspace-rail-footer strong { font-size:12.5px; font-weight:600; }.workspace-switcher small,.workspace-rail-footer small { color:var(--muted); font-size:10.5px; }.workspace-chevron{color:var(--faint)}
.workspace-avatar { width:25px; height:25px; display:grid; place-items:center; border-radius:7px; background:var(--accent-soft); color:var(--accent); font-size:11px; font-weight:700; }.workspace-avatar-user{border-radius:50%;background:linear-gradient(135deg,#6d75d8,#b36bc4);color:#fff}
.workspace-nav { display:flex; flex-direction:column; gap:2px; }.workspace-nav a,.workspace-nav-disabled { min-height:34px; display:flex; align-items:center; gap:10px; padding:7px 9px; border-radius:6px; color:var(--muted); font-size:13px; transition:background var(--fast),color var(--fast); }.workspace-nav a:hover{background:var(--hover);color:var(--ink)}.workspace-nav a span:first-child,.workspace-nav-disabled span:first-child{width:16px;text-align:center;font-size:15px}.workspace-nav-disabled{opacity:.58}.workspace-nav-disabled small{margin-left:auto;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.workspace-nav-section{display:flex;flex-direction:column;gap:6px}.workspace-nav-label{display:flex;justify-content:space-between;padding:0 9px;color:var(--faint);font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.08em}.workspace-rail-footer{margin-top:auto;border-color:transparent;background:transparent;box-shadow:none}
.workspace-stage { min-width:0; }.product-page { min-height:100dvh; background:var(--canvas); }.product-topbar { min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px 28px; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--canvas) 92%,transparent); position:sticky; top:0; z-index:5; backdrop-filter:blur(12px); }.product-topbar h1{margin:1px 0 0;font-size:19px;line-height:1.25;font-weight:650;letter-spacing:-.025em}.product-eyebrow{margin:0;color:var(--faint);font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.09em}.product-scroll{max-width:1180px;margin:0 auto;padding:28px;display:flex;flex-direction:column;gap:18px}.narrow-scroll{max-width:880px}
.hero-panel { min-height:158px; display:flex; align-items:flex-end; justify-content:space-between; gap:30px; padding:28px; border-radius:14px; background:radial-gradient(circle at 85% 20%,rgba(255,255,255,.35),transparent 26%),linear-gradient(135deg,#343a72,#5e6ad2 58%,#8175d6); color:#fff; box-shadow:var(--shadow); }.hero-panel h2{margin:5px 0 6px;font-size:27px;letter-spacing:-.035em}.hero-panel p:last-child{margin:0;max-width:560px;color:rgba(255,255,255,.72)}.hero-panel .product-eyebrow{color:rgba(255,255,255,.6)}.primary-action{display:flex;gap:24px;align-items:center;flex:none;padding:10px 13px 10px 16px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:rgba(255,255,255,.12);font-size:12px;font-weight:600}.primary-action:hover{background:rgba(255,255,255,.18)}
.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.metric-grid article{display:grid;grid-template-columns:1fr auto;gap:4px 14px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.metric-grid span{color:var(--muted);font-size:12px}.metric-grid strong{grid-row:1/3;grid-column:2;font-size:28px;font-weight:550;letter-spacing:-.04em}.metric-grid small{color:var(--faint);font-size:10.5px}
.surface-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.surface-heading{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;border-bottom:1px solid var(--line)}.surface-heading h2{margin:0;font-size:14px;font-weight:620;letter-spacing:-.015em}.surface-heading p{margin:3px 0 0;color:var(--muted);font-size:11px}.surface-heading>a{color:var(--accent);font-size:11px;font-weight:600}.count-badge{padding:2px 7px;border-radius:999px;background:var(--surface-2);color:var(--muted);font:10px var(--mono)}
.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.project-tile{min-height:70px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:13px 18px;background:var(--surface);transition:background var(--fast)}.project-tile:hover{background:var(--surface-2)}.project-tile span:nth-child(2){display:flex;min-width:0;flex-direction:column}.project-tile strong{font-size:12.5px}.project-tile small{color:var(--muted);font-size:10.5px}.project-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--accent-soft);color:var(--accent);font-weight:700}.project-violet{background:#eeeafd;color:#7761c9}.project-cyan{background:#e4f6f8;color:#24828b}
.ui-presence{display:flex;align-items:center}.ui-presence_chip{width:27px;height:27px;display:grid;place-items:center;overflow:hidden;border:2px solid var(--canvas);border-radius:50%;background:linear-gradient(135deg,#6d75d8,#b36bc4);color:transparent;font-size:0}.ui-presence_chip::first-letter{color:#fff;font-size:10px}
.segmented{display:flex;padding:2px;border:1px solid var(--line);border-radius:7px;background:var(--surface-2)}.segmented a{padding:5px 10px;border-radius:5px;color:var(--muted);font-size:11px}.segmented a[data-selected="true"]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.task-columns{height:30px;display:grid;grid-template-columns:minmax(260px,1fr) 150px 100px 90px;align-items:center;padding:0 18px;border-bottom:1px solid var(--line);background:var(--surface-2);color:var(--faint);font-size:9px;font-weight:650;text-transform:uppercase;letter-spacing:.07em}.ui-task-list,.inbox-list,.ui-comment-list,.ui-attachment-list{list-style:none;margin:0;padding:0}.ui-task{position:relative;min-height:42px;display:grid;grid-template-columns:minmax(260px,1fr) 150px 100px;align-items:center;border-bottom:1px solid var(--line);transition:background var(--fast)}.ui-task:hover{background:var(--surface-2)}.ui-task:last-child{border-bottom:0}.ui-task-row{min-height:42px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 10px 0 18px}.ui-task-row::before{content:"";width:15px;height:15px;border:1.5px solid var(--line-strong);border-radius:50%;background:var(--surface)}.ui-task-row:has(.ui-status[data-status="done"])::before{content:"✓";display:grid;place-items:center;border-color:var(--green);background:var(--green);color:white;font-size:9px}.ui-task-row_title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px}.ui-task-row_done .ui-task-row_title{text-decoration:line-through;color:var(--faint)}.ui-status{padding:2px 7px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:9.5px;text-transform:capitalize}.ui-status[data-status="in_progress"]{background:var(--amber-soft);color:var(--amber)}.ui-status[data-status="done"]{background:var(--green-soft);color:var(--green)}.ui-act{position:relative;z-index:2;border:0;border-radius:5px;background:transparent;color:var(--accent);padding:4px 6px;font-size:10px}.ui-act:hover{background:var(--accent-soft)}.ui-act_hidden{display:none}.task-detail-link{position:absolute;inset:0;z-index:1}.task-project{color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.priority-pill{width:max-content;padding:2px 7px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:9.5px;text-transform:capitalize}.priority-high,.priority-urgent{background:var(--red-soft);color:var(--red)}.priority-medium{background:var(--amber-soft);color:var(--amber)}.honest-empty{display:none;padding:36px;text-align:center;color:var(--muted);font-size:12px}.ui-task-list:not(:has(.ui-task))+.honest-empty,.inbox-list:not(:has(.inbox-item))+.honest-empty,.ui-attachment-list:not(:has(.ui-attachment))+.honest-empty{display:block}
.topbar-create{width:340px}.ui-new-project,.ui-new-task,.ui-new-comment,.ui-share{display:flex;align-items:center;gap:7px}.ui-new-project_input,.ui-new-task_input,.ui-new-comment_input,.ui-share_input{min-width:0;flex:1;border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:7px 9px;font-size:11px}.ui-new-project_submit,.ui-new-task_submit,.ui-new-comment_submit,.ui-share_submit{border:0;border-radius:6px;background:var(--accent);color:#fff;padding:7px 11px;font-size:10.5px;font-weight:600}.ui-new-project_submit:hover,.ui-new-task_submit:hover,.ui-new-comment_submit:hover,.ui-share_submit:hover{background:var(--accent-hover)}.ui-new-task{padding:10px 14px;border-top:1px solid var(--line);background:var(--surface-2)}
.project-table-row{min-height:68px;display:grid;grid-template-columns:auto minmax(220px,1fr) 70px 90px 20px;align-items:center;gap:13px;padding:10px 18px;border-bottom:1px solid var(--line)}.project-table-row:last-child{border-bottom:0}.project-table-row:hover{background:var(--surface-2)}.project-table-row>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.project-table-row strong{font-size:12.5px}.project-table-row small{color:var(--muted);font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lifecycle-pill{color:var(--green);font-size:10px;text-transform:capitalize}.project-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.project-hero>div{display:flex;align-items:center;gap:13px}.project-hero h2{margin:0 0 3px;font-size:16px}.project-hero p{margin:0;color:var(--muted);font-size:11px}.project-hero .ui-share{width:290px}.project-view .ui-task{grid-template-columns:minmax(260px,1fr) 100px 90px}.project-view .ui-task time{color:var(--muted);font-size:10px}.board-columns{display:none}.project-board-mode{border:0;background:transparent;box-shadow:none;overflow:visible}.project-board-mode>.task-columns{display:none}.project-board-mode .board-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:transparent;height:auto;padding:0 0 8px;border:0;color:var(--muted);font-size:11px;text-transform:none;letter-spacing:0}.project-board-mode .ui-task-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:start}.project-board-mode .ui-task{grid-template-columns:1fr;min-height:100px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.project-board-mode .ui-task-row{grid-template-columns:18px 1fr;align-items:start;padding:12px}.project-board-mode .ui-task-row .ui-status{grid-column:2}.project-board-mode .ui-task>.priority-pill,.project-board-mode .ui-task>time{margin:0 12px 10px}.project-board-mode .board-todo{grid-column:1}.project-board-mode .board-in_progress{grid-column:2}.project-board-mode .board-done{grid-column:3}.project-board-mode .ui-new-task{margin-top:12px;border:1px solid var(--line);border-radius:8px}
.inbox-item{min-height:68px;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:11px;padding:10px 16px;border-bottom:1px solid var(--line)}.inbox-item:last-child{border-bottom:0}.inbox-item:hover{background:var(--surface-2)}.inbox-symbol{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:700}.inbox-item a{display:flex;flex-direction:column}.inbox-item strong{font-size:12px}.inbox-item small,.inbox-item time{color:var(--muted);font-size:10px}.inbox-item-read{opacity:.65}
.detail-page{display:grid;grid-template-columns:minmax(320px,1fr) minmax(420px,48%)}.detail-context{min-height:100dvh;border-right:1px solid var(--line)}.detail-context-body{max-width:520px;margin:100px auto;padding:30px;color:var(--muted);text-align:center}.detail-context-body a{display:inline-block;margin-top:14px;color:var(--accent)}.task-detail-pane{min-height:100dvh;background:var(--surface);box-shadow:-12px 0 30px rgba(20,24,35,.06)}.detail-header{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--line)}.detail-header>a{width:28px;height:28px;display:grid;place-items:center;border-radius:6px;color:var(--muted);font-size:20px}.detail-header>a:hover{background:var(--hover)}.detail-live{color:var(--green);font-size:10px}.detail-body{padding:24px}.detail-title-row .ui-task-row{padding:0}.detail-title-row .ui-task-row_title{display:none}.detail-body>h1{margin:14px 0 8px;font-size:22px;letter-spacing:-.03em}.detail-description{margin:0 0 24px;color:var(--muted);font-size:12.5px;line-height:1.6}.property-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin:0 0 24px;padding:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.property-grid div{min-height:54px;padding:10px 12px;background:var(--surface)}.property-grid dt{margin-bottom:5px;color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.07em}.property-grid dd{margin:0;font-size:11px}.property-grid a{color:var(--accent)}.sync-state{color:var(--green)}.detail-tabs{display:flex;gap:18px;border-bottom:1px solid var(--line)}.detail-tabs a{padding:10px 1px 9px;color:var(--muted);font-size:11px}.detail-tabs a[data-selected="true"]{color:var(--ink);border-bottom:2px solid var(--accent)}.detail-thread,.detail-files{padding-top:14px}.hidden-panel{display:none}.activity-receipt{display:flex;gap:10px;padding:12px;border-radius:8px;background:var(--green-soft);color:var(--green)}.activity-receipt>span{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:white}.activity-receipt strong{font-size:11px}.activity-receipt p{margin:2px 0 0;font-size:10px}.ui-comment{margin:12px 0;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);font-size:11.5px}.ui-new-comment{margin-top:12px}.ui-attachment{padding:10px;border-bottom:1px solid var(--line)}.ui-attachment img{max-width:100%;border-radius:8px}.ui-attach{display:inline-flex;margin-top:12px;padding:7px 10px;border:1px solid var(--line);border-radius:6px;color:var(--accent);font-size:10.5px;cursor:pointer}.ui-attach_input{position:absolute;width:1px;height:1px;opacity:0}.not-found-state{display:none;padding:80px 24px;text-align:center}.not-found-state span{width:38px;height:38px;display:grid;place-items:center;margin:0 auto 12px;border-radius:50%;background:var(--red-soft);color:var(--red)}.not-found-state h2{margin:0;font-size:16px}.not-found-state p{color:var(--muted);font-size:11px}.not-found-state a{color:var(--accent);font-size:11px}.product-scroll:not(:has(.project-hero))>.not-found-state,.task-detail-pane:not(:has(.detail-body))>.not-found-state{display:block}
@media (max-width:760px){.workspace-shell{grid-template-columns:1fr;padding-bottom:58px}.workspace-rail{position:fixed;inset:auto 0 0;z-index:20;width:auto;height:58px;padding:5px 8px;display:block;border-right:0;border-top:1px solid var(--line)}.workspace-brand,.workspace-switcher,.workspace-nav-section,.workspace-rail-footer{display:none}.workspace-rail>.workspace-nav{height:100%;display:grid;grid-template-columns:repeat(3,1fr)}.workspace-rail>.workspace-nav a{justify-content:center;flex-direction:column;gap:0;padding:3px;font-size:9px}.workspace-rail>.workspace-nav a span:first-child{font-size:16px}.product-topbar{min-height:62px;padding:11px 16px}.product-scroll{padding:14px}.hero-panel{min-height:170px;align-items:flex-start;flex-direction:column;padding:22px}.hero-panel h2{font-size:23px}.metric-grid{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.task-columns{display:none}.ui-task,.project-view .ui-task{grid-template-columns:minmax(0,1fr) auto}.ui-task>.task-project,.ui-task>time{display:none}.topbar-create{width:190px}.ui-new-project_input{width:100px}.project-table-row{grid-template-columns:auto minmax(0,1fr) auto}.project-table-row>span:nth-child(3),.project-table-row>span:nth-child(4){display:none}.project-hero{align-items:flex-start;flex-direction:column}.project-hero .ui-share{width:100%}.project-board-mode .ui-task-list{display:flex;overflow-x:auto}.project-board-mode .ui-task{min-width:250px}.project-board-mode .board-columns{display:none}.detail-page{display:block}.detail-context{display:none}.task-detail-pane{min-height:calc(100dvh - 58px);box-shadow:none}.detail-body{padding:18px}.property-grid{grid-template-columns:1fr}.segmented a{padding:5px 7px}.product-topbar h1{font-size:17px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.legacy-task-thread{grid-column:1/-1;padding:0 18px 12px 46px}.legacy-task-thread:has(.ui-comment-list:empty):has(.ui-attachment-list:empty){padding-bottom:8px}.legacy-project-contract{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.legacy-project-contract .ui-project{padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
