:root{--paper:#fff;--paper-2:#f7f8fa;--paper-3:#eef1f4;--ink:#111827;--ink-2:#374151;--ink-3:#6b7280;--ink-4:#9ca3af;--hairline:#0f172a14;--hairline-2:#0f172a24;--brand:#2563eb;--brand-deep:#1d4ed8;--brand-soft:#dbeafe;--brand-50:#eff6ff;--ok:#059669;--ok-soft:#d1fae5;--warn:#d97706;--warn-soft:#fef3c7;--danger:#dc2626;--danger-soft:#fee2e2;--info:#2563eb;--info-soft:#dbeafe;--st-unassigned:#fff0b8;--st-unassigned-fg:#7a5b12;--st-attention:#c68a19;--st-skip:#e7eef8;--st-skip-fg:#2d4a73;--st-skip-bonus:#d8e5f5;--st-skip-bonus-fg:#253f64;--st-flag:#f2c89b;--st-flag-fg:#7c3f12;--st-flag-deep:#c9772d;--st-flag-deep-fg:#fff;--st-bergstrom:#dcd3ea;--st-bergstrom-fg:#4a3a63;--rot-blue:#5e7591;--rot-yellow:#b89a3f;--rot-red:#9a4a45;--rot-black:#2c2a26;--font-sans:"Inter", var(--font-geist,ui-sans-serif), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:var(--font-geist-mono,ui-monospace), SFMono-Regular, Menlo, Monaco, Consolas, monospace;--t-display:40px;--t-h1:24px;--t-h2:18px;--t-h3:15px;--t-body:14px;--t-meta:13px;--t-micro:11px;--lh-tight:1.15;--lh-snug:1.35;--lh-normal:1.55;--lh-relaxed:1.7;--ls-tight:0;--ls-tighter:0;--ls-meta:.02em;--w-regular:400;--w-medium:500;--w-semi:600;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--r-sm:4px;--r-md:6px;--r-lg:8px;--r-xl:12px;--r-2xl:16px;--r-pill:999px;--sh-1:0 1px 2px #0f172a0a;--sh-2:0 2px 6px #0f172a0f, 0 1px 2px #0f172a0a;--sh-3:0 16px 40px -24px #0f172a52, 0 4px 12px -8px #0f172a24;--sh-focus:0 0 0 3px #2563eb2e;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--d-fast:.12s;--d-base:.18s;--d-slow:.26s;--bg:var(--paper);--surface:var(--paper);--subtler:var(--paper-2);--hover:var(--brand-50);--subtle:var(--hairline);--text:var(--ink);--muted:var(--ink-3);--accent:var(--brand);--accent-soft:var(--brand-soft);--draft:#f8ece7;--review:#e7eef8;--approved:#e5e7eb;--draft-bg:#f8ece7;--review-bg:#e7eef8;--approved-bg:#fff;--radius:var(--r-lg);--radius-lg:var(--r-xl)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--t-body);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-variant-numeric:tabular-nums;min-height:100vh}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}a{color:inherit;text-decoration:none}input,select,textarea{font:inherit;color:inherit}:focus-visible{box-shadow:var(--sh-focus);outline:none}.t-display{font-family:var(--font-sans);font-size:var(--t-display);line-height:var(--lh-tight);letter-spacing:var(--ls-tighter);font-weight:var(--w-semi);color:var(--ink)}.t-h1{font-family:var(--font-sans);font-size:var(--t-h1);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);font-weight:var(--w-semi);color:var(--ink)}.t-h2{font-family:var(--font-sans);font-size:var(--t-h2);line-height:var(--lh-snug);letter-spacing:var(--ls-tight);font-weight:var(--w-semi);color:var(--ink)}.t-h3{font-family:var(--font-sans);font-size:var(--t-h3);line-height:var(--lh-snug);font-weight:var(--w-semi);color:var(--ink)}.t-body{font-family:var(--font-sans);font-size:var(--t-body);line-height:var(--lh-normal);font-weight:var(--w-regular);color:var(--ink)}.t-body-2{font-family:var(--font-sans);font-size:var(--t-body);line-height:var(--lh-normal);font-weight:var(--w-regular);color:var(--ink-2)}.t-meta{font-family:var(--font-sans);font-size:var(--t-meta);line-height:var(--lh-snug);font-weight:var(--w-medium);color:var(--ink-2)}.t-micro{font-family:var(--font-sans);font-size:var(--t-micro);line-height:var(--lh-snug);font-weight:var(--w-medium);letter-spacing:var(--ls-meta);text-transform:uppercase;color:var(--ink-3)}.t-mono{font-family:var(--font-mono);font-size:var(--t-meta);font-variant-numeric:tabular-nums;color:var(--ink-2)}.tabular{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}select,input,textarea{background:var(--paper);color:var(--ink);border:1px solid var(--hairline);border-radius:var(--r-lg);font-size:var(--t-meta);transition:border-color var(--d-fast) var(--ease-out);padding:.52rem .72rem}select:focus,input:focus,textarea:focus{border-color:var(--brand);box-shadow:var(--sh-focus);outline:none}button:disabled{opacity:.4;cursor:not-allowed}button{transition:background .15s,transform .1s}button:active:not(:disabled){transform:translateY(1px)}button.ghost{color:var(--ink-2);border:1px solid var(--hairline);border-radius:var(--r-lg);font-size:var(--t-meta);font-weight:var(--w-medium);background:0 0;padding:.45rem .8rem}button.ghost:hover:not(:disabled){background:var(--brand-50);color:var(--ink)}.workspace{grid-template-columns:220px minmax(0,1fr);gap:0;height:100%;padding:0;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--subtle);flex-direction:column;min-height:0;display:flex;overflow:hidden}.sidebar-head{border-bottom:1px solid var(--subtle);justify-content:space-between;align-items:center;padding:.6rem .75rem;display:flex}.sidebar-title{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:600}button.ghost.sidebar-new{color:var(--muted);padding:.3rem .7rem;font-size:.8rem}button.ghost.sidebar-new:hover{background:var(--brand-50);color:var(--text)}.file-list{flex-direction:column;flex:1;gap:1px;margin:0;padding:.35rem;list-style:none;display:flex;overflow-y:auto}.file-empty{color:var(--muted);padding:.6rem;font-size:.85rem;font-style:italic}button.file-item{border-radius:var(--radius);width:100%;color:var(--text);text-align:left;background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:2px;padding:.45rem .6rem;font-weight:400;transition:background .12s;display:flex}button.file-item:hover:not(:disabled){background:var(--brand-50)}button.file-item.active{background:var(--brand-50);box-shadow:inset 2px 0 0 var(--accent)}button.file-item:disabled{cursor:default;background:0 0}button.file-item:active:not(:disabled){transform:none}.file-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.88rem;overflow:hidden}.file-meta{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.72rem}.editor{flex-direction:column;gap:.75rem;min-width:0;min-height:0;padding:1.75rem 2.5rem 4rem;display:flex}.editor-blank{justify-content:center;align-items:center}.blank-state{color:var(--muted);flex-direction:column;align-items:center;gap:1rem;display:flex}.editor-bar{align-items:center;gap:.75rem;display:flex}.editor-name{color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;font-weight:500}.editor-status{color:var(--muted);align-items:center;gap:.45rem;margin-right:auto;font-size:.82rem;display:inline-flex}.editor-status.status-error{color:#c0392b}.status-dot{background:var(--muted);border-radius:50%;flex:none;width:7px;height:7px}.status-saved .status-dot{background:var(--approved)}.status-dirty .status-dot{background:var(--review)}.status-saving .status-dot{background:var(--accent);animation:1s ease-in-out infinite pulse-dot}.status-error .status-dot{background:#c0392b}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.editor-actions{gap:.5rem;display:flex}.editor-tabs{border:1px solid var(--subtle);border-radius:var(--radius);background:var(--paper-2);align-items:center;gap:.15rem;padding:.18rem;display:inline-flex}.editor-tabs button{border-radius:calc(var(--radius) - 2px);min-width:4.25rem;color:var(--muted);font-size:var(--t-meta);font-weight:var(--w-medium);padding:.32rem .55rem;line-height:1.2}.editor-tabs button:hover{color:var(--text);background:var(--hover)}.editor-tabs button.active{color:var(--text);background:var(--surface);box-shadow:var(--sh-card)}.editor-panes{flex:1;grid-template-columns:1fr 1fr;gap:.75rem;min-height:0;display:grid}.editor-input,.editor-preview{background:var(--surface);border:1px solid var(--subtle);border-radius:var(--radius-lg);padding:1rem 1.1rem;overflow:auto}.editor-input{resize:none;color:var(--text);flex:1;min-height:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;line-height:1.65}.editor>.editor-preview{flex:1;min-height:0}.editor-input:focus{outline:2px solid var(--accent);outline-offset:-1px}.markdown-rich-editor{flex:1;min-height:0;display:flex;position:relative}.markdown-rich-root{border:1px solid var(--subtle);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:auto}.markdown-rich-root .mdxeditor-toolbar{background:0 0;border:0;min-height:0;padding:0;display:contents}.floating-md-toolbar{z-index:60;border:1px solid var(--subtle);border-radius:var(--radius);background:var(--surface);max-width:min(720px,100vw - 24px);box-shadow:var(--sh-float);align-items:center;gap:.15rem;padding:.35rem;display:none;position:fixed;transform:translate(-50%)}.floating-md-toolbar.is-visible{display:inline-flex}.floating-md-toolbar button,.floating-md-toolbar [role=button]{min-height:1.75rem}.slash-menu{z-index:70;border:1px solid var(--subtle);border-radius:var(--radius);background:var(--surface);width:220px;box-shadow:var(--sh-float);padding:.3rem;display:none;position:fixed}.slash-menu.is-visible{gap:1px;display:grid}.slash-menu button{border-radius:calc(var(--radius) - 2px);min-height:2rem;color:var(--text);text-align:left;justify-content:space-between;align-items:center;padding:.35rem .5rem;font-size:.85rem;display:flex}.slash-menu button:hover,.slash-menu button.active{background:var(--hover)}.slash-menu button.active{box-shadow:inset 2px 0 0 var(--accent)}.slash-menu small{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem}.markdown-rich-content{min-height:100%;color:var(--text);flex:1;padding:1rem 1.1rem 2rem;font-size:.95rem;line-height:1.65;overflow:visible}.markdown-rich-content:focus{outline:2px solid var(--accent);outline-offset:-2px}.markdown-rich-content [contenteditable=true]{min-height:100%}.markdown-rich-content h1,.markdown-rich-content h2,.markdown-rich-content h3{color:var(--text);letter-spacing:0}.markdown-rich-content h1{font-size:1.55rem}.markdown-rich-content h2{font-size:1.25rem}.markdown-rich-content h3{font-size:1.05rem}.markdown-rich-content code{border:1px solid var(--subtle);background:var(--subtler);border-radius:4px;padding:.1rem .35rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.markdown-rich-content pre,.markdown-rich-root .cm-editor{border:1px solid var(--subtle);border-radius:var(--radius);background:var(--subtler)}.markdown-rich-content table{border-collapse:collapse;table-layout:fixed;width:100%;margin:.7rem 0;font-size:.9rem}.markdown-rich-content th,.markdown-rich-content td{border:1px solid var(--subtle);text-align:left;overflow-wrap:anywhere;padding:.4rem .55rem}.table-column-resize-layer{z-index:20;pointer-events:none;position:absolute;inset:0}.table-column-resize-handle{cursor:col-resize;pointer-events:auto;touch-action:none;width:8px;position:absolute}.table-column-resize-handle:after{content:"";background:0 0;border-radius:999px;width:2px;position:absolute;top:0;bottom:0;left:3px}.table-column-resize-handle:hover:after,.table-column-resize-handle:focus-visible:after{background:var(--accent)}body.is-resizing-markdown-table,body.is-resizing-markdown-table *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}.editor-preview{-webkit-mask-image:linear-gradient(#0000,#000 14px calc(100% - 14px),#0000);mask-image:linear-gradient(#0000,#000 14px calc(100% - 14px),#0000)}.preview-empty{color:var(--muted);font-style:italic}.editor-foot{color:var(--muted);justify-content:space-between;font-size:.78rem;display:flex}.editor-foot .count{font-variant-numeric:tabular-nums}.skeleton{background:var(--subtler);border-radius:var(--radius-lg);animation:1.4s ease-in-out infinite skel}.skeleton-title{width:120px;height:18px}.skeleton-status{width:90px;height:14px;margin-right:auto}.skeleton-pane{min-height:0}.skeleton-row{height:30px;margin:2px 4px}@keyframes skel{0%,to{opacity:.5}50%{opacity:.8}}.md{color:var(--text);font-size:.95rem;line-height:1.65}.md>:first-child{margin-top:0}.md h1{letter-spacing:0;margin:1.4rem 0 .6rem;font-size:1.5rem}.md h2{margin:1.3rem 0 .5rem;font-size:1.2rem}.md h3{margin:1.1rem 0 .4rem;font-size:1.02rem}.md p{margin:.6rem 0}.md a{color:var(--accent)}.md code{background:var(--subtler);border:1px solid var(--subtle);border-radius:4px;padding:.1rem .35rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.md pre{background:var(--subtler);border:1px solid var(--subtle);border-radius:var(--radius-lg);padding:.9rem;overflow:auto}.md pre code{background:0 0;border:none;padding:0}.md blockquote{border-left:3px solid var(--subtle);color:var(--muted);margin:.7rem 0;padding:.2rem .9rem}.md ul,.md ol{margin:.6rem 0;padding-left:1.4rem}.md li{margin:.2rem 0}.md table{border-collapse:collapse;width:100%;margin:.7rem 0;font-size:.88rem}.md th,.md td{border:1px solid var(--subtle);text-align:left;padding:.4rem .6rem}.md hr{border:none;border-top:1px solid var(--subtle);margin:1.2rem 0}.md img{max-width:100%}@media (width<=900px){.workspace{grid-template-columns:1fr;height:auto}.sidebar{max-height:240px}.editor-panes{flex:none;grid-template-columns:1fr}.editor-input,.editor-preview,.skeleton-pane{min-height:280px}}@media (prefers-reduced-motion:reduce){.status-saving .status-dot,.skeleton{animation:none}button:active:not(:disabled){transform:none}}.btn{justify-content:center;align-items:center;gap:var(--s-2);border-radius:var(--r-lg);font-weight:var(--w-medium);font-size:var(--t-meta);letter-spacing:0;white-space:nowrap;transition:background var(--d-fast) var(--ease-out), border-color var(--d-fast) var(--ease-out), color var(--d-fast) var(--ease-out), transform 80ms var(--ease-out);border:1px solid #0000;padding:.5rem .85rem;line-height:1.2;display:inline-flex}.btn:disabled{opacity:.4;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px)}.btn-sm{padding:.32rem .6rem;font-size:12px}.btn-lg{padding:.6rem 1rem;font-size:14px}.btn-primary{background:var(--brand);color:var(--paper)}.btn-primary:hover:not(:disabled){background:var(--brand-deep)}.btn-secondary{background:var(--paper-2);color:var(--ink)}.btn-secondary:hover:not(:disabled){background:var(--paper-3)}.btn-ghost{color:var(--ink-2);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--brand-50);color:var(--ink)}.btn-outline{color:var(--ink);border-color:var(--hairline-2);background:0 0}.btn-outline:hover:not(:disabled){background:var(--paper-2)}.btn-destructive{background:var(--danger);color:var(--paper)}.btn-destructive:hover:not(:disabled){background:#823f3b}.btn-icon{width:28px;height:28px;color:var(--ink-2);padding:0}.btn-icon:hover:not(:disabled){background:var(--brand-50);color:var(--ink)}.chip{border-radius:var(--radius);background:var(--paper);border:1px solid var(--hairline);font-size:12px;font-weight:var(--w-medium);color:var(--ink-2);white-space:nowrap;align-items:center;gap:5px;padding:2px 8px;display:inline-flex}.chip-interactive{cursor:pointer;transition:background var(--d-fast) var(--ease-out), border-color var(--d-fast) var(--ease-out)}.chip-interactive:hover{background:var(--paper-2)}.chip-active{background:var(--brand-50);border-color:var(--brand);color:var(--brand-deep)}.chip-dot{border-radius:var(--r-pill);flex:none;width:7px;height:7px}.avatar{background:var(--subtler);color:var(--muted);letter-spacing:0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.avatar-sm{width:20px;height:20px;font-size:.625rem}.avatar-md{width:24px;height:24px;font-size:.68rem}.avatar-lg{width:36px;height:36px;color:var(--text);font-size:.82rem}.pill{white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:.35rem;padding:.1rem .5rem .1rem .4rem;font-size:.7rem;font-weight:500;display:inline-flex}.pill .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.pill-draft{color:#7a3d2f;background:#f8ece7}.pill-review{color:#2d4a73;background:#e7eef8}.pill-approved{color:var(--ink-2);background:var(--paper);border:1px solid var(--hairline)}.pill-muted{color:var(--ink-3);background:var(--paper-2)}.pill-ok{color:var(--brand-deep);background:var(--ok-soft)}.pill-warn{color:#6f5320;background:var(--warn-soft)}.pill-danger{color:#6e322e;background:var(--danger-soft)}.pill-info{color:#2d4a66;background:var(--info-soft)}.pill-neutral{color:var(--ink-2);background:var(--paper-3)}.app-shell{--sidenav-w:220px;--planner-floating-gutter:24px;grid-template-columns:220px 1fr;min-height:100vh;transition:grid-template-columns .22s ease-out;display:grid}.app-shell:has(.sidenav[data-collapsed=true]){--sidenav-w:64px;grid-template-columns:64px 1fr}.sidenav{background:var(--paper);border-right:1px solid var(--subtle);z-index:10;flex-direction:column;gap:.4rem;height:100vh;padding:.9rem .65rem;display:flex;position:sticky;top:0;overflow:hidden}.sidenav-head{align-items:center;gap:.35rem;min-height:2rem;padding-bottom:.5rem;display:flex}.brand{min-width:0;color:var(--text);flex:1;align-items:center;padding:.25rem .55rem;font-weight:680;display:flex}.brand-text{white-space:nowrap;letter-spacing:0;min-width:0;font-size:.98rem}.sidenav-toggle{border-radius:var(--radius);width:2rem;height:2rem;color:var(--ink-4);flex:0 0 2rem;place-items:center;transition:background .14s ease-out,color .14s ease-out;display:grid}.sidenav-toggle:hover{background:var(--paper-2);color:var(--text)}.tabs{flex-direction:column;align-items:stretch;gap:.1rem;display:flex}.tab{text-align:left;border-radius:var(--radius);width:100%;color:var(--muted);align-items:center;gap:.55rem;padding:.46rem .7rem;font-size:.88rem;font-weight:500;transition:background .14s ease-out,color .14s ease-out;display:flex}.tab-icon{flex:none}.tab-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tab:hover{background:var(--paper-2);color:var(--text)}.tab.active{color:var(--text);background:var(--brand-50)}.sidenav-chat-section{gap:.25rem;min-height:0;margin-top:.7rem;display:grid}.sidenav-chat-head{align-items:center;gap:.25rem;padding-inline:.15rem .35rem;display:flex}.sidenav-chat-toggle{border-radius:var(--radius);min-width:0;color:var(--ink-4);font:inherit;text-align:left;background:0 0;flex:auto;align-items:center;gap:.3rem;padding:.18rem .55rem;font-size:.82rem;font-weight:560;display:inline-flex}.sidenav-chat-toggle:hover,.sidenav-chat-new:hover{color:var(--text);background:var(--paper-2)}.sidenav-chat-toggle svg{color:var(--muted);flex:none;transition:transform .14s ease-out}.sidenav-chat-toggle[aria-expanded=false] svg{transform:rotate(-90deg)}.sidenav-chat-new{border-radius:var(--radius);width:1.8rem;height:1.8rem;color:var(--ink-4);background:0 0;flex:none;place-items:center;display:inline-grid}.sidenav-chat-list{gap:.02rem;min-height:0;max-height:min(42vh,22rem);padding-right:.15rem;display:grid;overflow-y:auto}.sidenav-chat-list[hidden]{display:none}.sidenav-chat-row{border-radius:var(--radius);min-height:1.85rem;color:var(--ink-2);font:inherit;text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.18rem .55rem;font-size:.82rem;display:grid}.sidenav-chat-row:hover{color:var(--text);background:var(--paper-2)}.sidenav-chat-row.active{color:var(--text);background:var(--brand-50)}.sidenav-chat-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidenav-chat-row time{color:var(--muted);white-space:nowrap;font-size:.78rem;font-weight:520}.sidenav-chat-status{color:var(--muted);margin:0;padding:.35rem .55rem;font-size:.78rem}.sidenav-spacer{flex:1}.sidenav-footer{border-top:1px solid var(--subtle);padding-top:.4rem}.sidenav-footer .tab{color:var(--ink-4);font-size:.8rem}.sidenav-footer .tab:hover,.sidenav-footer .tab.active{color:var(--text)}.sidenav-signout{margin:0}.sidenav[data-collapsed=true]{align-items:center;padding-inline:.55rem}.sidenav[data-collapsed=true] .sidenav-head,.sidenav[data-collapsed=true] .tabs,.sidenav[data-collapsed=true] .sidenav-chat-section,.sidenav[data-collapsed=true] .sidenav-signout{width:100%}.sidenav[data-collapsed=true] .brand{display:none}.sidenav[data-collapsed=true] .sidenav-toggle{flex-basis:2rem;width:100%}.sidenav[data-collapsed=true] .tab{justify-content:center;height:2rem;padding-inline:0}.sidenav[data-collapsed=true] .tab-label,.sidenav[data-collapsed=true] .sidenav-chat-section{display:none}.sidenav[data-collapsed=true] .sidenav-footer{border-top:0}@media (prefers-reduced-motion:reduce){.app-shell,.sidenav-toggle,.tab{transition:none}}.settings{max-width:760px;padding:2.5rem 2.5rem 4rem}.settings-head h1{font-size:var(--t-h1);font-weight:var(--w-semi);letter-spacing:var(--ls-tight);color:var(--text);margin:0}.settings-head p{max-width:52ch;color:var(--muted);font-size:var(--t-body);line-height:var(--lh-normal);margin:.4rem 0 0}.settings-card{background:var(--surface);border:1px solid var(--subtle);border-radius:var(--radius-lg);margin-top:1.75rem;padding:1.5rem}.rt-BaseDialogOverlay,.rt-BaseDialogOverlay:before{left:220px}.weeknav{color:var(--muted);align-items:center;gap:.5rem;display:flex}.weeknav .arrow{border-radius:var(--radius);width:28px;height:28px;color:var(--muted);justify-content:center;align-items:center;transition:background .14s ease-out,color .14s ease-out;display:inline-flex}.weeknav .arrow:hover{background:var(--hover);color:var(--text)}.weeknav .range{color:var(--text);text-align:center;font-variant-numeric:tabular-nums;min-width:14rem;font-weight:500}.weeknav .today{color:var(--muted);border-radius:var(--radius);padding:.25rem .6rem;font-size:.8125rem;transition:background .14s ease-out,color .14s ease-out}.weeknav .today:hover{background:var(--hover);color:var(--text)}.main{height:100vh;min-height:0;padding-bottom:80px;transition:padding .2s ease-out;overflow-y:auto}body[data-planner-mode=pinned] .main{padding-right:min(var(--planner-pinned-width,400px), calc(100vw - 64px))}.chat-page{min-height:100%}.chat-page-backdrop{height:100vh}.plan{padding:2rem 2.35rem 4rem}@media (width>=1280px){.plan{padding:2.5rem 3.5rem 4rem}}.plan-header{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.1rem;display:flex}.plan-header-compact{justify-content:flex-start;align-items:center;margin-bottom:.65rem}.plan-title{font-size:var(--t-h2);letter-spacing:0;font-weight:600;line-height:var(--lh-snug)}.plan-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.9rem;display:flex}.plan-view-toggle{border:1px solid var(--subtle);background:var(--surface);border-radius:7px;align-items:center;padding:2px;display:inline-flex;box-shadow:inset 0 1px #ffffff73}.plan-view-toggle a{min-width:94px;min-height:30px;color:var(--muted);border-radius:5px;justify-content:center;align-items:center;padding:0 .7rem;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.plan-view-toggle a:hover{color:var(--text);background:var(--hover)}.plan-view-toggle a.active{color:var(--text);background:var(--accent-soft);box-shadow:0 1px 2px #0f172a14}.plan-toolbar{flex-wrap:wrap;align-items:center;gap:.85rem;margin-bottom:.75rem;display:flex}.plan-toolbar .gantt-legend{margin-left:auto}.project-hidden-anchor{align-items:center;min-height:30px;display:inline-flex}.plan-board-shell{position:relative}.plan-refresh-shimmer{z-index:18;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(3px)saturate(1.06);backdrop-filter:blur(3px)saturate(1.06);pointer-events:none;animation:plan-shimmer-enter .16s var(--ease-out) both;background:#ffffff3d;position:absolute;inset:0;overflow:hidden}.plan-refresh-shimmer:after{content:"";background:linear-gradient(#ffffff75,#0000 26%),linear-gradient(#0000 70%,#ffffff6b);position:absolute;inset:0}.plan-refresh-shimmer-scrim,.plan-refresh-shimmer-sweep,.plan-refresh-shimmer-grid{position:absolute;inset:0}.plan-refresh-shimmer-scrim{background:linear-gradient(#ffffffb3,#f8fafc5c),linear-gradient(122deg,#2563eb1a,#0000 34%,#10b9811a 58%,#0000 82%),linear-gradient(90deg,#f8fafc3d,#ffffff6b,#f8fafc38);animation:1.8s ease-in-out infinite alternate plan-shimmer-scrim;box-shadow:inset 0 0 0 1px #2563eb14}.plan-refresh-shimmer-sweep{filter:blur(1px);mix-blend-mode:screen;animation:plan-shimmer-sweep 1.55s var(--ease-out) infinite;background:linear-gradient(105deg,#0000 22%,#fff0 38%,#ffffffdb 47%,#c4d0de47 53%,#cfb37a2e 58%,#0000 72%),linear-gradient(78deg,#0000 32%,#2f4a6b1a 49%,#0000 64%);inset:-42% -36%;transform:translate(-48%)rotate(-2deg)}.plan-refresh-shimmer-grid{opacity:.5;background:repeating-linear-gradient(115deg,#0000 0 20px,#2f4a6b11 20px 21px),repeating-linear-gradient(0deg,#0000 0 33px,#2f4a6b0b 33px 34px);animation:1.7s ease-in-out infinite plan-shimmer-grid-drift;-webkit-mask-image:linear-gradient(#0000,#000 12% 86%,#0000);mask-image:linear-gradient(#0000,#000 12% 86%,#0000)}@keyframes plan-shimmer-enter{0%{opacity:0}to{opacity:1}}@keyframes plan-shimmer-scrim{to{opacity:.72}}@keyframes plan-shimmer-sweep{to{transform:translate(48%)rotate(-2deg)}}@keyframes plan-shimmer-grid-drift{0%{opacity:.34;background-position:0 0,0 0}50%{opacity:.58}to{opacity:.34;background-position:36px 16px,0 34px}}@media (prefers-reduced-motion:reduce){.plan-refresh-shimmer,.plan-refresh-shimmer-scrim,.plan-refresh-shimmer-sweep,.plan-refresh-shimmer-grid{animation:none}}.zoom-popover{flex-direction:column;gap:.5rem;padding:.5rem 0 .75rem;display:flex}.zoom-readout-row{justify-content:space-between;align-items:center;padding:0 .65rem;display:flex}.zoom-readout{font-size:11px;font-weight:var(--w-medium);color:var(--muted);letter-spacing:.02em}.zoom-reset{color:var(--muted);font-size:11px;font-weight:var(--w-medium);border-radius:var(--r-md);cursor:pointer;background:0 0;border:none;margin-right:-4px;padding:2px 6px;transition:background .12s ease-out,color .12s ease-out}.zoom-reset:hover{background:var(--hover);color:var(--text)}.zoom-slider{appearance:none;background:var(--subtler);cursor:pointer;border-radius:2px;outline:none;width:100%;height:4px;margin:6px 0;padding:0;display:block}.zoom-slider::-webkit-slider-runnable-track{background:var(--subtler);border-radius:2px;height:4px}.zoom-slider::-webkit-slider-thumb{appearance:none;background:var(--accent);cursor:pointer;border:none;border-radius:50%;width:14px;height:14px;margin-top:-5px;box-shadow:0 1px 3px #0f172a33}.zoom-slider::-moz-range-track{background:var(--subtler);border:none;border-radius:2px;height:4px}.zoom-slider::-moz-range-thumb{background:var(--accent);cursor:pointer;border:none;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #0f172a33}.zoom-slider:focus-visible::-webkit-slider-thumb{outline:2px solid var(--accent-soft);outline-offset:1px}.zoom-slider:focus-visible::-moz-range-thumb{outline:2px solid var(--accent-soft);outline-offset:1px}.filterbar{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex;position:relative}.filter-chip{border:1px solid var(--hairline);border-radius:var(--radius);background:var(--paper);height:24px;font-size:12px;font-weight:var(--w-medium);color:var(--ink-2);white-space:nowrap;align-items:center;gap:4px;max-width:280px;padding:0 2px 0 8px;display:inline-flex}.filter-chip-kind{color:var(--ink-3)}.filter-chip-op{color:var(--ink-3);font-weight:var(--w-regular)}.filter-chip-values{color:var(--ink);text-overflow:ellipsis;overflow:hidden}.filter-chip-edit{border-radius:var(--r-sm);color:var(--ink);font-size:12px;font-weight:var(--w-medium);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;max-width:200px;transition:background var(--d-fast) var(--ease-out);background:0 0;border:none;align-items:center;padding:1px 4px;display:inline-flex;overflow:hidden}.filter-chip-edit:hover{background:var(--paper-2)}.filter-chip-x{border-radius:var(--r-sm);width:18px;height:18px;color:var(--ink-3);cursor:pointer;transition:background var(--d-fast) var(--ease-out), color var(--d-fast) var(--ease-out);background:0 0;border:none;justify-content:center;align-items:center;margin-left:2px;font-size:14px;line-height:1;display:inline-flex}.filter-chip-x:hover{background:var(--paper-2);color:var(--ink)}.filter-trigger{border:1px dashed var(--hairline-2);border-radius:var(--radius);height:24px;color:var(--ink-3);font-size:12px;font-weight:var(--w-medium);cursor:pointer;transition:background var(--d-fast) var(--ease-out), border-color var(--d-fast) var(--ease-out), color var(--d-fast) var(--ease-out);background:0 0;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.filter-trigger:hover{background:var(--paper-2);border-color:var(--ink-3);color:var(--ink)}.filter-trigger.compact{justify-content:center;width:24px;padding:0}.filter-popover{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--r-xl);box-shadow:var(--sh-3);z-index:30;width:260px;padding:6px;animation:.16s ease-out both fadeIn;position:absolute;top:calc(100% + 6px);left:0}.filter-search-row{align-items:center;gap:4px;margin-bottom:6px;display:flex}.filter-back{border-radius:var(--r-md);width:24px;height:28px;color:var(--ink-2);cursor:pointer;transition:background var(--d-fast) var(--ease-out);background:0 0;border:none;flex:none;justify-content:center;align-items:center;font-size:18px;line-height:1;display:inline-flex}.filter-back:hover{background:var(--paper-2)}.filter-search{border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--paper);min-width:0;height:28px;color:var(--ink);flex:1;padding:0 8px;font-size:12px}.filter-search:focus{border-color:var(--ink-3);outline:none}.filter-list{flex-direction:column;gap:2px;max-height:min(420px,60vh);display:flex;overflow-y:auto}.filter-row{font-weight:var(--w-medium)}.filter-row .filter-option-name{color:var(--ink)}.filter-chevron{color:var(--ink-3);font-size:16px;line-height:1}.filter-option-count{background:var(--paper-2);color:var(--ink-2);font-size:10px;font-weight:var(--w-medium);border-radius:var(--r-pill);flex:none;padding:1px 6px}.filter-option-kind{color:var(--ink-3);font-size:10px;font-weight:var(--w-medium);text-transform:uppercase;letter-spacing:.04em;flex:none}.filter-option{border-radius:var(--r-md);width:100%;color:var(--ink);text-align:left;cursor:pointer;transition:background var(--d-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:6px;padding:5px 6px;font-size:12px;display:flex}.filter-option:hover,.filter-option.active{background:var(--paper-2)}.filter-option.checked{color:var(--ink)}.filter-check{border:1px solid var(--hairline-2);border-radius:var(--r-sm);background:var(--paper);width:14px;height:14px;color:var(--paper);flex:none;justify-content:center;align-items:center;font-size:10px;display:inline-flex}.filter-option.checked .filter-check{background:var(--ink);border-color:var(--ink)}.filter-option-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.filter-empty{color:var(--ink-3);text-align:center;padding:12px 8px;font-size:12px}.filter-section-title{font-size:12px;font-weight:var(--w-medium);color:var(--ink);flex:1;padding:0 4px}.filter-popover-calendar{width:auto}.filter-range-calendar{flex-direction:column;align-items:stretch;padding:4px 2px 2px;display:flex}.filter-range-actions{border-top:1px solid var(--hairline);justify-content:flex-end;gap:6px;margin-top:4px;padding-top:6px;display:flex}.plan-meta{color:var(--muted);font-size:.8125rem}.who-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.empty{text-align:center;color:var(--muted);border:1px dashed var(--subtle);border-radius:var(--radius-lg);padding:3rem 1rem;animation:.28s ease-out both fadeIn}.empty p{margin:0 0 .75rem}.empty-link{color:var(--text);border-radius:var(--radius);background:var(--surface);border:1px solid var(--subtle);align-items:center;gap:.35rem;padding:.4rem .75rem;transition:background .14s ease-out;display:inline-flex}.empty-link:hover{background:var(--hover)}.gantt{border-radius:var(--r-xl);background:var(--surface);scroll-timeline-name:--gantt-x;scroll-timeline-axis:inline;--name-w:200px;--row-h:46px;--head-h:36px;--head-days-h:18px;--fade-w:32px;--min-col-w:72px;--total-weeks:9;--total-days:63;--rail-w:32px;--col-w:max(var(--min-col-w), calc((100cqw - var(--name-w) - 2 * var(--rail-w)) / var(--total-weeks)));--day-w:calc(var(--col-w) / 7);border:0;width:100%;max-height:calc(100vh - 170px);font-size:13px;overflow:auto;box-shadow:0 0 0 1px #0f172a0e,0 8px 20px #0f172a0b;container-type:inline-size}.gantt[data-zoom~=day-labels]{--head-h:50px}.gantt-header{z-index:12;background:var(--surface);isolation:isolate;border-bottom:1px solid #0f172a0f;display:flex;position:sticky;top:0}.gantt-corner{z-index:3;height:var(--head-h);width:var(--name-w);flex:0 0 var(--name-w);background:var(--surface);will-change:transform;border-right:1px solid #0f172a0e;position:relative;box-shadow:8px 0 18px -18px #0f172a57}.gantt-headstack{z-index:1;width:calc(var(--col-w) * var(--total-weeks));background:var(--surface);flex-direction:column;flex:auto;display:flex;position:relative}.gantt-headcells{width:calc(var(--col-w) * var(--total-weeks));background-color:var(--surface);background-image:repeating-linear-gradient(to right, transparent 0 calc(var(--col-w) - 1px), var(--subtler) calc(var(--col-w) - 1px) var(--col-w));flex:auto;display:flex}.gantt[data-zoom~=day-labels] .gantt-headcells{height:calc(var(--head-h) - var(--head-days-h))}.gantt:not([data-zoom~=day-labels]) .gantt-headcells{height:var(--head-h)}.gantt-headdays{height:var(--head-days-h);width:calc(var(--day-w) * var(--total-days));background:var(--surface);border-top:1px solid #0f172a0a;display:flex}.gantt:not([data-zoom~=day-labels]) .gantt-headdays{display:none}.gantt-headday{flex:0 0 var(--day-w);width:var(--day-w);color:var(--muted);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;font-size:10.5px;line-height:1;display:flex}.gantt-headday.weekend{opacity:.45}.gantt-headday.current-week{background:var(--brand-50)}.gantt-headday.today{color:var(--ink);font-weight:600}.gantt-head{color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;flex-direction:column;flex:0 0 var(--col-w);width:var(--col-w);justify-content:center;align-items:center;gap:1px;font-size:11.5px;line-height:1.15;transition:background .12s ease-out;display:flex}.gantt-head:hover{background:var(--hover);color:var(--text)}.gantt-head.current{background:var(--brand-50)}.gantt-month{min-height:13px;color:var(--ink);font-size:11px;font-weight:600}.gantt-day{color:var(--ink-3);font-size:12px}.gantt:not([data-zoom~=day-labels]) .gantt-head{justify-content:center;gap:2px}.gantt[data-zoom~=month-view] .gantt-month{font-size:13px}.gantt[data-zoom~=month-view] .gantt-day{font-size:11px}.gantt-body{grid-template-columns:var(--name-w) var(--rail-l-w,0px) auto var(--rail-r-w,0px);isolation:isolate;display:grid;position:relative}.gantt-body:has(.extend-l){--rail-l-w:var(--rail-w)}.gantt-body:has(.extend-r){--rail-r-w:var(--rail-w)}.gantt-names{z-index:4;background:var(--surface);width:var(--name-w);will-change:transform;border-right:1px solid #0f172a0e;flex-direction:column;grid-area:1/1;display:flex;position:relative;box-shadow:8px 0 18px -18px #0f172a57}@supports (animation-timeline:scroll()){@keyframes gantt-pin-x{to{transform:translate3d(var(--scroll-max-x,0px), 0, 0)}}.gantt-corner,.extend-spacer-l,.gantt-names,.extend-l{animation-name:gantt-pin-x;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--gantt-x}}.gantt-name{height:var(--row-h);color:var(--text);border-bottom:1px solid #0f172a0b;align-items:center;gap:.5rem;padding:0 .8rem;font-weight:500;transition:background .12s ease-out;display:flex}.gantt-name:hover{background:var(--hover)}.gantt-name.project-row{background:color-mix(in srgb, var(--surface) 88%, var(--paper-2));border-bottom-color:#0f172a12;align-items:flex-start;gap:0;padding:0 1rem;position:relative}.gantt-name.project-row:hover{background:color-mix(in srgb, var(--hover) 82%, var(--paper-2))}.gantt-name.project-row .who-name{font-size:14px;font-weight:650}.gantt-name.project-row .who-title{letter-spacing:.01em;margin-top:3px;font-size:11.5px}.gantt-name.project-row .who-stack{top:calc(var(--head-h) + 14px);z-index:1;align-self:flex-start;padding:14px 0 .75rem;position:sticky}.gantt-name .who-stack{flex-direction:column;min-width:0;line-height:1.1;display:flex}.gantt-name .who-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.gantt-name .who-title{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:400;overflow:hidden}.gantt-canvas{z-index:0;width:calc(var(--col-w) * var(--total-weeks));background-image:repeating-linear-gradient(to right, transparent 0 calc(var(--col-w) - 1px), #0f172a0a calc(var(--col-w) - 1px) var(--col-w)), repeating-linear-gradient(to bottom, transparent 0 calc(var(--row-h) - 1px), #0f172a0a calc(var(--row-h) - 1px) var(--row-h));grid-area:1/3;position:relative}.gantt.view-project .gantt-canvas{background-image:repeating-linear-gradient(to right, transparent 0 calc(var(--col-w) - 1px), #0f172a0a calc(var(--col-w) - 1px) var(--col-w))}.gantt.view-project[data-zoom~=day-grid] .gantt-canvas{background-image:repeating-linear-gradient(to right, transparent 0 calc(var(--day-w) - 1px), #0f172a0d calc(var(--day-w) - 1px) var(--day-w)), repeating-linear-gradient(to right, transparent 0 calc(var(--col-w) - 1px), var(--subtler) calc(var(--col-w) - 1px) var(--col-w))}.gantt-project-band{box-sizing:border-box;pointer-events:none;z-index:0;background:#ffffff9e;border-top:1px solid #0f172a0e;border-bottom:1px solid #0f172a09;position:absolute;left:0;right:0}.gantt-project-band.odd{background:#f8fafcc2}.gantt-project-band:after{content:"";background:linear-gradient(90deg,#0f172a09,#0000 56px);position:absolute;inset:0}.project-empty-row-note{z-index:2;border:1px solid color-mix(in srgb, var(--st-unassigned-fg) 24%, var(--st-unassigned));height:30px;color:var(--st-unassigned-fg);background:var(--st-unassigned);pointer-events:none;border-radius:6px;align-items:center;padding:0 .75rem;font-size:12px;font-weight:600;display:inline-flex;position:absolute;left:12px}.project-hidden-legend{min-height:30px;color:var(--muted);align-items:center;gap:.45rem;margin:0;font-size:11.5px;font-weight:620;display:flex}.project-hidden-legend span{color:color-mix(in srgb, var(--muted) 78%, var(--text))}.project-hidden-legend button{border:1px dashed color-mix(in srgb, var(--subtle) 84%, white);min-height:26px;color:var(--accent);font:inherit;cursor:pointer;background:#ffffffad;border-radius:999px;align-items:center;padding:0 .55rem;font-size:11.5px;font-weight:680;display:inline-flex}.project-hidden-legend button:hover{color:var(--text);background:var(--hover)}.project-board{background:linear-gradient(to bottom, #f8fafc94, transparent 148px), var(--paper);border:0;border-radius:0;grid-auto-columns:minmax(280px,320px);grid-auto-flow:column;gap:.7rem;min-height:calc(100vh - 228px);max-height:calc(100vh - 170px);padding:.45rem .25rem .65rem;display:grid;overflow:auto hidden}.project-column{background:#ffffffdb;border:0;border-radius:8px;flex-direction:column;min-height:100%;max-height:calc(100vh - 195px);display:flex;box-shadow:0 0 0 1px #0f172a0e,0 8px 20px #0f172a0b}.project-column-left-stack{z-index:8;isolation:isolate;background:var(--paper);border:0;gap:0;min-height:0;position:sticky;left:0;box-shadow:12px 0 18px -18px #0f172a57}.project-column-left-stack:before{z-index:-1;background:var(--paper);content:"";position:absolute;inset:-.45rem 0 -.65rem -.25rem}.project-left-pane{background:var(--surface);border:0;border-radius:8px;flex-direction:column;flex:1 1 0;min-height:0;display:flex;overflow:hidden;box-shadow:0 0 0 1px #0f172a0f,0 6px 16px #0f172a0a}.project-column-left-stack .project-column-header,.project-column-left-stack .project-card-list{background:inherit}.project-left-pane.collapsed{flex:0 0 56px}.project-left-pane.collapsed .project-column-header{border-bottom:0;border-radius:8px}.project-left-pane.collapsed .project-card-list{display:none}.project-left-pane+.project-left-pane,.project-left-hidden+.project-left-pane,.project-left-pane+.project-left-hidden,.project-left-hidden+.project-left-hidden{margin-top:.75rem}.project-left-hidden{border:1px dashed color-mix(in srgb, var(--subtle) 84%, white);min-height:42px;color:var(--muted);font:inherit;cursor:pointer;background:#ffffff8a;border-radius:8px;justify-content:space-between;align-items:center;gap:.65rem;padding:0 .75rem;display:flex}.project-left-hidden:hover{color:var(--text);background:var(--hover)}.project-left-hidden span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;overflow:hidden}.project-left-hidden small{color:var(--accent);font-size:11px;font-weight:680}.project-left-divider{cursor:row-resize;touch-action:none;flex:0 0 10px;justify-content:center;align-items:center;margin:.25rem 0;display:flex}.project-left-divider:before{background:color-mix(in srgb, var(--muted) 28%, transparent);content:"";border-radius:999px;width:46px;height:2px}.project-left-divider:hover:before,.project-resizing-left .project-left-divider:before{background:color-mix(in srgb, var(--accent) 52%, transparent)}.project-resizing-left{cursor:row-resize}.project-column-unassigned{background:var(--surface);box-shadow:0 0 0 1px color-mix(in srgb, var(--st-unassigned-fg) 12%, transparent), 0 6px 16px #0f172a0a}.project-column-unavailable{background:var(--surface);box-shadow:0 0 0 1px #0f172a12,0 6px 16px #0f172a0a}.project-column-header{z-index:2;background:#ffffffe6;border-bottom:0;border-radius:8px 8px 0 0;justify-content:space-between;align-items:center;min-height:50px;padding:.68rem .86rem;display:flex;position:sticky;top:0}.project-column-header h3{max-width:220px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:680;line-height:1.2;overflow:hidden}.project-column-title-link{color:inherit;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;display:block;overflow:hidden}.project-column-title-link:hover{color:var(--accent)}.project-column-header span{color:var(--muted);margin-top:.2rem;font-size:11.5px;font-weight:560;display:block}.project-pane-actions{align-items:center;gap:.15rem;display:inline-flex}.project-pane-collapse,.project-pane-menu{width:28px;height:28px;color:var(--muted);font:inherit;letter-spacing:.06em;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;font-size:16px;font-weight:700;line-height:1;display:inline-flex}.project-pane-collapse{letter-spacing:0;font-size:14px}.project-pane-collapse:hover,.project-pane-menu:hover{color:var(--text);background:var(--hover)}.project-card-list{flex-direction:column;flex:auto;gap:.5rem;min-height:0;padding:.55rem;display:flex;overflow-y:auto}.project-week-section{background:#f8fafcc2;border:0;border-radius:7px}.project-week-section summary{min-height:31px;color:var(--muted);cursor:pointer;background:0 0;border-bottom:0;border-radius:7px 7px 0 0;justify-content:space-between;align-items:center;gap:.6rem;padding:0 .58rem;font-size:11.5px;font-weight:680;list-style:none;display:flex}.project-week-section summary::-webkit-details-marker{display:none}.project-week-section summary:before{content:"›";width:14px;height:14px;color:var(--muted);justify-content:center;align-items:center;transition:transform .12s ease-out;display:inline-flex;transform:rotate(0)}.project-week-section[open] summary:before{transform:rotate(90deg)}.project-week-section summary span{flex:auto}.project-week-section summary small{min-width:22px;height:20px;color:var(--muted);background:#ffffffd1;border:0;border-radius:999px;justify-content:center;align-items:center;font-size:10.5px;font-weight:680;display:inline-flex}.project-week-cards{flex-direction:column;gap:.38rem;padding:.42rem;display:flex}.project-week-empty{min-height:34px;color:var(--muted);align-items:center;margin:0;padding:0 .45rem;font-size:11.5px;font-weight:560;display:flex}.project-person-card{min-height:52px;color:var(--text);background:color-mix(in srgb, var(--card-bg,var(--surface)) 76%, white);box-shadow:0 1px 2px #0f172a0e, 0 0 0 1px color-mix(in srgb, var(--card-border,var(--subtle)) 24%, transparent);cursor:grab;border:0;border-radius:7px;grid-template-columns:1fr auto;align-items:start;gap:.42rem;padding:.42rem .58rem .38rem;display:grid;position:relative}.project-person-card:has(.project-status-trigger[aria-expanded=true]){z-index:20}.project-person-card:hover{box-shadow:0 3px 8px #0f172a13, 0 0 0 1px color-mix(in srgb, var(--card-border,var(--subtle)) 34%, transparent)}.project-person-card:active{cursor:grabbing}.project-person-card.unassigned{--card-bg:var(--st-unassigned);--card-border:color-mix(in srgb, var(--st-unassigned-fg) 24%, var(--st-unassigned));color:var(--st-unassigned-fg)}.project-person-card.unavailable{--card-bg:#f8fafc;--card-border:#cbd5e1;cursor:default}.project-person-main{gap:.4rem;min-width:0;display:grid}.project-person-main strong{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:680;line-height:1.15;display:block;overflow:hidden}.project-person-link{color:inherit;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;display:block;overflow:hidden}.project-person-link:hover{color:var(--accent)}.project-person-main span{color:var(--muted);margin-top:0;font-size:11px;font-weight:560;line-height:1.15;display:block}.project-person-card.unassigned .project-person-main span{color:color-mix(in srgb, var(--st-unassigned-fg) 72%, white)}.project-unavailable-label{color:var(--muted);font-size:10.5px;font-weight:680}.project-card-status{justify-content:flex-end;place-self:start end;align-items:center;gap:.12rem;padding-top:.02rem;display:inline-flex;position:relative}.project-status-trigger{min-height:18px;color:color-mix(in srgb, var(--text) 68%, var(--muted));background:color-mix(in srgb, var(--card-border,var(--subtle)) 10%, white);font:inherit;cursor:pointer;border:0;border-radius:999px;padding:.1rem .34rem;font-size:10.25px;font-weight:650;line-height:1}.project-status-trigger:hover,.project-status-trigger[aria-expanded=true]{background:color-mix(in srgb, var(--card-border,var(--subtle)) 18%, white)}.project-status-menu{z-index:12;background:#fffffffa;border:0;border-radius:7px;min-width:132px;padding:.28rem;position:absolute;top:calc(100% + .3rem);right:0;box-shadow:0 14px 28px #0f172a29,0 0 0 1px #0f172a14}.project-status-menu button{width:100%;min-height:26px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:flex-start;align-items:center;padding:0 .5rem;font-size:11.5px;font-weight:620;display:flex}.project-status-menu button:hover:not(:disabled){background:var(--hover)}.project-status-menu button:disabled{color:var(--muted);cursor:default;opacity:.62}.project-status-menu button.danger{color:#b42318;margin-top:.2rem}.project-status-menu button.danger:hover:not(:disabled){color:#b42318;background:#b4231814}.project-column-add{border:1px dashed var(--subtle);min-height:38px;color:var(--muted);font:inherit;cursor:pointer;background:#ffffffad;border-radius:7px;justify-content:center;align-items:center;gap:.42rem;margin:.7rem;font-size:12px;font-weight:650;display:inline-flex}.project-week-add{border:1px dashed var(--subtle);min-height:32px;color:var(--muted);font:inherit;cursor:pointer;background:#ffffffad;border-radius:6px;justify-content:center;align-items:center;gap:.35rem;font-size:11.5px;font-weight:650;display:inline-flex}.project-week-add:hover,.project-column-add:hover{color:var(--text);background:var(--hover)}.project-add-popover{border:1px solid var(--subtle);background:var(--surface);border-radius:7px;gap:.45rem;padding:.55rem;display:grid;overflow:hidden;box-shadow:0 8px 18px #0f172a14}.project-add-popover-head{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.project-add-popover-head strong{color:var(--text);font-size:11.5px;font-weight:680}.project-add-popover-head button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:.16rem .3rem;font-size:11px;font-weight:650}.project-add-popover-head button:hover{color:var(--text);background:var(--hover)}.project-add-popover>input{border:1px solid var(--subtle);width:100%;min-height:32px;color:var(--text);background:var(--surface);font:inherit;border-radius:6px;padding:0 .5rem;font-size:12px}.project-add-options{gap:.16rem;max-height:176px;padding-right:.1rem;display:grid;overflow-y:auto}.project-add-options button{min-height:38px;color:var(--text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;gap:.12rem;padding:.34rem .45rem;display:grid}.project-add-options button:hover{background:var(--hover)}.project-add-options span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:660;line-height:1.15;overflow:hidden}.project-add-options small,.project-add-empty{color:var(--muted);font-size:11px;font-weight:560;line-height:1.15}.project-add-empty{margin:0;padding:.4rem .45rem}.detail-add-popover .bar-pop-field{gap:.45rem}.detail-add-popover .bar-pop-input{background:var(--surface);min-height:32px}.detail-add-popover .bar-pop-list{border:0;max-height:176px;padding:0}.detail-add-popover .bar-pop-option{border-radius:6px;min-height:38px;padding:.34rem .45rem;font-size:12px;font-weight:660}.detail-add-popover .bar-pop-option:hover,.detail-add-popover .bar-pop-option.keyboard-active{background:var(--hover);box-shadow:none}.gantt[data-zoom~=day-grid] .gantt-canvas{background-image:repeating-linear-gradient(to right, transparent 0 calc(var(--day-w) - 1px), #0f172a0d calc(var(--day-w) - 1px) var(--day-w)), repeating-linear-gradient(to right, transparent 0 calc(var(--col-w) - 1px), var(--subtler) calc(var(--col-w) - 1px) var(--col-w)), repeating-linear-gradient(to bottom, transparent 0 calc(var(--row-h) - 1px), var(--subtler) calc(var(--row-h) - 1px) var(--row-h))}.gantt[data-zoom~=day-grid] .gantt-headcells{background-image:repeating-linear-gradient(to right, transparent 0 calc(var(--day-w) - 1px), #0f172a0d calc(var(--day-w) - 1px) var(--day-w)), repeating-linear-gradient(to right, transparent 0 calc(var(--col-w) - 1px), var(--subtler) calc(var(--col-w) - 1px) var(--col-w))}.gantt-today-line{width:0;top:0;bottom:0;left:calc(var(--day-w) * var(--today-day-idx,0));border-left:2px solid var(--accent);opacity:.85;pointer-events:none;z-index:4;position:absolute}.gantt-past-veil{width:calc(var(--col-w) * var(--past-weeks,0));pointer-events:none;z-index:3;background:#f8fafc9e;position:absolute;top:0;bottom:0;left:0}.gantt-head.past{opacity:.45}.gantt-today-marker{top:4px;left:calc(var(--day-w) * var(--today-day-idx,0));z-index:2;pointer-events:none;flex-direction:column;align-items:center;gap:0;display:inline-flex;position:absolute;transform:translate(-50%)}.gantt-today-marker span{background:var(--accent);color:var(--surface);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:1px 7px;font-size:9px;font-weight:600;line-height:1.25;box-shadow:0 1px 3px #2563eb38}.gantt-today-marker strong{color:var(--accent);margin-top:2px;font-size:11px;font-weight:600;line-height:1}.gantt-today-tint{top:0;bottom:0;left:calc(var(--col-w) * var(--today-week-idx,0));width:var(--col-w);pointer-events:none;z-index:0;background:#2563eb12;position:absolute}.gantt-today-pill{top:-10px;left:calc(var(--col-w) * var(--past-weeks,0) + var(--col-w) / 2);background:var(--accent);color:var(--surface);letter-spacing:.04em;text-transform:uppercase;pointer-events:none;z-index:6;border-radius:999px;padding:1px 7px;font-size:.62rem;font-weight:600;position:absolute;transform:translate(-50%);box-shadow:0 1px 4px #5b6dcd4d}.range-picker{align-items:center;gap:.5rem;display:inline-flex;position:relative}.range-trigger{border:1px solid var(--subtle);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:12px;font-weight:var(--w-medium);align-items:center;gap:.35rem;padding:2px 8px;line-height:1.4;transition:border-color .14s ease-out,background .14s ease-out;display:inline-flex}.range-trigger:hover{border-color:var(--muted);background:var(--hover)}.range-trigger svg{color:var(--muted)}.range-popover{background:var(--surface);border:1px solid var(--subtle);border-radius:var(--r-xl);box-shadow:var(--sh-3);z-index:30;padding:.75rem;animation:.16s ease-out both fadeIn;position:absolute;top:calc(100% + 6px);right:0}.range-presets{flex-wrap:wrap;gap:.3rem;display:inline-flex}.range-actions{border-top:1px solid var(--subtle);justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:.65rem;display:flex}.range-actions-right{gap:.35rem;display:flex}.rdp-root.rdp-root{--rdp-accent-color:var(--accent);--rdp-accent-background-color:var(--accent-soft);--rdp-day-height:28px;--rdp-day-width:28px;--rdp-day_button-width:26px;--rdp-day_button-height:26px;--rdp-day_button-border-radius:var(--r-md);--rdp-day_button-font-size:11.5px;--rdp-weekday-padding:.2rem 0;--rdp-nav_button-width:22px;--rdp-nav_button-height:22px;--rdp-nav-height:24px;color:var(--text);font-size:11.5px}.rdp-nav button{color:var(--muted);border-radius:var(--r-md)}.rdp-chevron{fill:var(--muted);width:14px;height:14px}.rdp-month_caption{align-items:center;padding:0 0 .4rem}.rdp-caption_label{font-weight:var(--w-medium);font-size:12px}.rdp-weekday{color:var(--muted);font-size:10px;font-weight:var(--w-medium);text-transform:uppercase;letter-spacing:.04em;padding:.2rem 0}.rdp-day,.rdp-day_button{font-size:11.5px;font-weight:400;line-height:1}.rdp-day_button:hover{background:var(--hover)}.rdp-past:not(.rdp-selected) .rdp-day_button{color:var(--muted);opacity:.55}.rdp-today:not(.rdp-selected) .rdp-day_button{color:var(--accent);font-weight:var(--w-medium)}.rdp-outside:not(.rdp-selected) .rdp-day_button{color:var(--muted);opacity:.35}.rdp-range_middle .rdp-day_button{background:var(--accent-soft);color:var(--text);border-radius:0;font-size:11.5px;font-weight:400}.rdp-range_start .rdp-day_button,.rdp-range_end .rdp-day_button,.rdp-selected:not(.rdp-range_middle) .rdp-day_button{background:var(--accent-soft);color:var(--accent);font-weight:var(--w-medium);opacity:1;font-size:11.5px}.rdp-nav button:hover{background:var(--hover);color:var(--text)}.extend-spacer{flex:0 0 var(--rail-w);border-bottom:1px solid var(--subtle);background:var(--surface);z-index:3}.extend-spacer-l{box-shadow:1px 0 0 var(--subtle);will-change:transform;position:relative}.extend-spacer-r{position:sticky;right:0}.extend{width:var(--rail-w);z-index:4;color:var(--muted);background:var(--surface);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;transition:background .14s ease-out,color .14s ease-out;display:flex;position:sticky}.extend-l{will-change:transform;border-right:1px solid var(--subtle);grid-area:1/2;position:relative}.extend-r{border-left:1px solid var(--subtle);grid-area:1/4;position:sticky;right:0}.extend-marker{height:28px;font-size:14px;font-weight:var(--w-semi);justify-content:center;align-items:center;line-height:1;display:flex;position:sticky;top:calc(50% - 14px)}.extend-icon{display:block}.extend-label{white-space:nowrap;font-size:11px;font-weight:var(--w-medium);background:var(--paper);color:var(--ink-2);border:1px solid var(--hairline);border-radius:var(--r-md);opacity:0;pointer-events:none;z-index:6;padding:3px 7px;transition:opacity .14s ease-out;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px -3px #0f172a1f}.extend-l .extend-label{left:calc(100% + 8px)}.extend-r .extend-label{right:calc(100% + 8px)}.extend:hover{background:var(--accent-soft);color:var(--accent)}.extend:hover .extend-label{opacity:1}.bar-wrap{--gantt-bar-x-gap:2px;--gantt-bar-y-gap:4px;--gantt-bar-radius:6px;height:var(--row-h);padding:var(--gantt-bar-y-gap) var(--gantt-bar-x-gap);box-sizing:border-box;left:calc(var(--day-w) * var(--bar-left,0));width:calc(var(--day-w) * var(--bar-span,7));will-change:transform;align-items:stretch;transition:opacity .14s ease-out;animation:.22s ease-out both fadeIn;display:flex;position:absolute}.bar-wrap.busy{pointer-events:none}.bar-wrap.busy:not(.optimistic-move){opacity:.55}.bar-wrap.drag-source .bar{box-shadow:none;outline-offset:-2px;outline:1px dashed #2563eb57;opacity:.28!important}.bar-wrap.optimistic-move{z-index:9}.bar-wrap.optimistic-move .bar{box-shadow:0 8px 18px #0f172a24}.bar,.bar.working[role=link]{cursor:grab}.bar{border-radius:var(--gantt-bar-radius);font-size:12.5px;font-weight:var(--w-semi);color:var(--ink);-webkit-user-select:none;user-select:none;touch-action:none;border:1px solid #0000;flex:1;align-items:center;min-width:0;text-decoration:none;transition:transform .1s ease-out,box-shadow .14s ease-out;display:flex;overflow:hidden}.bar:hover{box-shadow:0 1px 4px #0f172a1f}.bar-label{white-space:nowrap;text-overflow:ellipsis;padding-right:8px;padding-left:calc(var(--label-anchor,0) * 100% + 8px);overflow:hidden}.bar.clip-l{border-top-left-radius:0;border-bottom-left-radius:0}.bar.clip-r{border-top-right-radius:0;border-bottom-right-radius:0}.bar.missing{cursor:pointer;background:var(--st-unassigned)!important;color:var(--st-unassigned-fg)!important}button.bar-wrap-missing{appearance:none;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0}button.bar-wrap-missing:active:not(:disabled){transform:none}button.bar-wrap-missing:focus-visible{outline:2px solid var(--st-attention);outline-offset:2px;border-radius:var(--gantt-bar-radius)}button.bar-wrap-missing:hover .bar.missing{box-shadow:0 1px 4px #0f172a1f}.bar{position:relative}.bar-drag-ghost{z-index:2147483647;cursor:grabbing;opacity:.98;transform-origin:0 0;will-change:transform;contain:paint;backface-visibility:hidden;filter:saturate(1.05);box-shadow:0 18px 38px #0f172a42,0 0 0 2px #2563eb3d;transition:none!important}.bar-drag-ghost .bar-handle{display:none}.bar-drop-preview{box-sizing:border-box;border-radius:var(--gantt-bar-radius);pointer-events:none;z-index:8;will-change:transform;background:#2563eb14;border:2px solid #2563eb9e;position:absolute;top:0;left:0;box-shadow:inset 0 0 0 1px #ffffffb8,0 8px 18px #2563eb1f}body[data-gantt-dragging=true]{cursor:grabbing;-webkit-user-select:none;user-select:none}body[data-gantt-dragging=true] *{cursor:grabbing!important}.gantt-legend{flex-wrap:wrap;align-items:center;gap:12px;margin:0;padding:0;list-style:none;display:flex}.gantt-legend-item{color:var(--ink-2);align-items:center;gap:6px;font-size:12px;display:inline-flex}.gantt-legend-swatch{border-radius:2px;width:14px;height:10px;display:inline-block}.gantt-legend-label{white-space:nowrap}.bar.non-working{color:var(--ink-2);background:repeating-linear-gradient(-45deg, #0f172a1a 0 1px, transparent 1px 6px), var(--paper-2)!important;border-color:#0000!important}.bar.non-working.type-assignment_type_vacation{color:var(--ink-2);background:repeating-linear-gradient(-45deg, #0f172a1a 0 1px, transparent 1px 6px), var(--paper-2)!important}.bar-handle{cursor:ew-resize;z-index:1;touch-action:none;background:0 0;flex:none;width:6px;margin-left:-3px;position:relative}.bar-handle-start{left:-4px;top:var(--gantt-bar-y-gap);bottom:var(--gantt-bar-y-gap);z-index:5;width:14px;margin-left:0;position:absolute}.bar-handle:after{content:"";opacity:0;background:#0f172a2e;border-radius:1px;width:2px;transition:opacity .12s ease-out;position:absolute;top:30%;bottom:30%;right:1px}.bar-handle-start:after{left:5px;right:auto}.bar-wrap:hover .bar-handle:after,.bar-handle:active:after{opacity:1}.type-tag{color:var(--muted);background:var(--subtler);border-radius:4px;flex:none;padding:.05rem .4rem;font-size:.7rem}.tiles{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.875rem;display:grid}.tile{background:var(--surface);border-radius:var(--r-xl);border:0;flex-direction:column;gap:.65rem;padding:.9rem 1rem 1rem;transition:transform .1s ease-out,box-shadow .16s ease-out;animation:.22s ease-out both fadeIn;display:flex;box-shadow:0 0 0 1px #0f172a0e,0 4px 14px #0f172a09}.tile:hover{box-shadow:0 0 0 1px #2563eb2e, var(--sh-2)}.tile.tile-empty{opacity:.7}.tile-tech{gap:.55rem}.tile-non-working{opacity:.85}.tile-other-techs{font-size:var(--t-meta);align-items:center;gap:.5rem;display:flex}.tile-other-label{color:var(--muted);flex:none}.back-link{color:var(--muted);align-items:center;margin-bottom:.25rem;padding:.2rem .4rem .2rem 0;font-size:.78rem;transition:color .14s ease-out;display:inline-flex}.back-link:hover{color:var(--text)}.detail-title{font-size:var(--t-h1);letter-spacing:0;align-items:center;gap:.65rem;display:flex}.detail-subtitle{color:var(--muted);font-weight:400;font-size:var(--t-meta);text-transform:capitalize}.swatch.large{border-radius:4px;width:16px;height:16px}.tech-head{color:var(--text);border-radius:var(--radius);align-items:center;gap:.7rem;margin:-.25rem -.35rem .15rem;padding:.25rem .35rem;transition:background .14s ease-out;display:flex}.tech-head:hover{background:var(--subtler)}.tech-id{flex-direction:column;min-width:0;display:flex}.tech-name{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;overflow:hidden}.tech-title{color:var(--muted);text-transform:capitalize;font-size:.78rem}.tech-now{font-size:var(--t-meta);align-items:baseline;gap:.5rem;display:flex}.tech-now-label{color:var(--muted);flex:none}.tech-now-value{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.tech-now-value.non-working{color:var(--muted);font-style:italic;font-weight:400}.tech-now-value.muted{color:var(--muted);font-weight:400}.tile-head{align-items:center;gap:.5rem;min-width:0;display:flex}.swatch{border-radius:3px;flex:none;width:10px;height:10px}.tile-title{color:var(--text);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.95rem;font-weight:600;overflow:hidden}.tile-title.muted{color:var(--muted);font-weight:500}.tile-count{color:var(--muted);font-size:var(--t-meta);font-variant-numeric:tabular-nums;flex:none}.tile-stats{color:var(--muted);font-size:var(--t-meta);align-items:center;gap:.6rem;display:flex}.tile-stats strong{color:var(--text);font-weight:600}.tile-stats.muted{color:var(--muted);font-style:italic}.tile-foot{flex-direction:column;gap:.35rem;margin-top:auto;display:flex}.focus-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.8rem;display:grid}.focus-card{border-radius:var(--r-xl);background:var(--paper);min-width:0;color:var(--text);border:0;gap:.8rem;padding:.95rem;display:grid;box-shadow:0 0 0 1px #0f172a0e,0 4px 14px #0f172a09}.focus-card-link{transition:box-shadow .14s ease-out,transform .1s ease-out}.focus-card-link:hover{box-shadow:0 0 0 1px #2563eb2e, var(--sh-2);transform:translateY(-1px)}.focus-card-head{align-items:center;gap:.7rem;min-width:0;display:flex}.focus-card-head>span:last-child{gap:.08rem;min-width:0;display:grid}.focus-card-head strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.96rem;font-weight:640;overflow:hidden}.focus-card-head small{color:var(--muted);text-transform:capitalize;font-size:.78rem}.focus-week-list{gap:.28rem;display:grid}.focus-week-row{border-top:1px solid #0f172a0e;grid-template-columns:minmax(5.8rem,.42fr) minmax(0,1fr);align-items:baseline;gap:.7rem;min-width:0;padding:.42rem 0;display:grid}.focus-week-row:first-child{border-top:0}.focus-week-label{color:var(--muted);font-size:.78rem;font-weight:560}.focus-week-value{min-width:0;color:var(--text);text-align:right;justify-content:flex-end;align-items:center;gap:.45rem;font-size:.84rem;font-weight:600;display:flex}.focus-week-value>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.focus-week-value.muted{color:var(--muted);font-weight:500}.mini-status{color:#8f4e3b;letter-spacing:0;background:#f8ece7;border:1px solid #edc9bd;border-radius:999px;flex:none;align-items:center;min-height:1.25rem;padding:0 .45rem;font-size:.68rem;font-weight:650;display:inline-flex}.detail-header{flex-wrap:wrap;align-items:flex-start;gap:1rem}.assignment-kanban{scrollbar-width:thin;grid-auto-columns:minmax(280px,1fr);grid-auto-flow:column;align-items:stretch;gap:.85rem;padding:.1rem 0 .8rem;display:grid;overflow-x:auto}.week-column{border-radius:var(--r-xl);background:#f8fafc;border:0;flex-direction:column;gap:.75rem;min-width:0;min-height:22rem;padding:.85rem;display:flex;box-shadow:0 0 0 1px #0f172a0e,0 6px 16px #0f172a09}.week-column-head{border-bottom:1px solid #0f172a0e;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.1rem .1rem .55rem;display:flex}.week-column-head>span{gap:.14rem;display:grid}.week-column-head strong{font-size:1rem;font-weight:660}.week-column-head small,.week-column-head em{color:var(--muted);font-size:.78rem;font-style:normal}.week-column-body{flex-direction:column;flex:1;gap:.55rem;min-height:0;display:flex}.assignment-list{gap:.55rem;display:grid}.kanban-card{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--card-bg,var(--paper)) 76%, white);box-shadow:0 1px 2px #0f172a0b, 0 0 0 1px color-mix(in srgb, var(--card-border,#0f172a1f) 24%, transparent);border:0;grid-template-columns:minmax(0,1fr) auto;gap:.55rem .75rem;padding:.8rem;transition:box-shadow .14s ease-out,transform .1s ease-out;display:grid;position:relative}.kanban-card:has(.project-status-trigger[aria-expanded=true]){z-index:20}.kanban-card:hover{box-shadow:0 0 0 1px color-mix(in srgb, var(--card-border,#2563eb2e) 38%, transparent), var(--sh-1);transform:translateY(-1px)}.kanban-card:has(.project-status-trigger[aria-expanded=true]):hover{transform:none}.kanban-card.person-card{align-items:center}.kanban-card-main{gap:.18rem;min-width:0;display:grid}.kanban-card-title,.assignment-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);font-size:.94rem;font-weight:660;overflow:hidden}.kanban-card-title:hover,.assignment-title:hover{color:var(--brand)}.kanban-card-title.muted,.assignment-title.muted{color:var(--muted)}.kanban-card-meta,.assignment-meta{color:var(--muted);font-size:.76rem}.kanban-card-side,.assignment-line-side{justify-content:flex-end;align-items:flex-start;display:flex}.kanban-card-crew,.assignment-crew{color:var(--muted);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.4rem;font-size:.76rem;display:flex}.person-chip{background:var(--paper);min-width:0;min-height:1.8rem;color:var(--ink-2);border:0;border-radius:999px;align-items:center;gap:.34rem;padding:.12rem .48rem .12rem .16rem;font-size:.78rem;font-weight:560;display:inline-flex;box-shadow:0 0 0 1px #0f172a0f}.person-chip:hover{color:var(--text);box-shadow:0 0 0 1px #2563eb33}.person-chip.prominent{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;font-size:.9rem}.person-chip.prominent:hover{box-shadow:none}.person-chip.prominent>span{gap:.08rem;display:grid}.person-chip.prominent strong{font-size:.92rem;font-weight:650}.person-chip.prominent small{color:var(--muted);text-transform:capitalize;font-size:.75rem}.assignment-person{min-width:0}.kanban-empty,.assignment-empty{border-radius:var(--radius-lg);min-height:8rem;color:var(--muted);text-align:center;background:#ffffff94;border:1px dashed #0f172a1f;flex:1;place-items:center;font-size:.88rem;display:grid}@media (width<=720px){.focus-grid{grid-template-columns:1fr}.assignment-kanban{grid-auto-columns:minmax(260px,86vw)}.focus-week-row{grid-template-columns:1fr;gap:.18rem}.focus-week-value{text-align:left;justify-content:flex-start}}.avatars{flex-wrap:wrap;align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.avatar-link{border-radius:50%;transition:transform .12s ease-out;display:inline-flex}.avatar-link:hover{transform:translateY(-1px)}.avatars .avatar{background:var(--subtler);width:24px;height:24px;color:var(--muted);font-size:.68rem}.avatar-link:hover .avatar{background:var(--hover);color:var(--text)}.avatars .overflow{color:var(--muted);font-variant-numeric:tabular-nums;align-self:center;padding:0 .35rem;font-size:.72rem}.status-bar{background:var(--subtler);border-radius:2px;height:4px;display:flex;overflow:hidden}.status-bar>span{height:100%;transition:width .22s ease-out}.status-bar .draft{background:var(--draft)}.status-bar .review{background:var(--review)}.status-bar .approved{background:var(--approved)}.status-legend{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.72rem}.list{border-top:1px solid var(--subtle);background:var(--surface);border-radius:var(--r-xl);border-inline:1px solid var(--subtle);margin:0;padding:0;list-style:none;overflow:hidden}.list li{border-bottom:1px solid var(--subtle)}.list-row{color:var(--text);justify-content:space-between;align-items:center;gap:.75rem;padding:.72rem .9rem;transition:background .14s ease-out;animation:.2s ease-out both fadeIn;display:flex}.list-row:hover{background:var(--brand-50)}.list-primary{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.list-primary.muted{color:var(--muted);font-style:italic;font-weight:400}.list-meta{color:var(--muted);flex:none;align-items:center;gap:.6rem;font-size:.8125rem;display:inline-flex}.planner-dock{z-index:20;background:var(--paper);-webkit-backdrop-filter:none;border:1px solid var(--subtle);min-width:0;box-shadow:var(--sh-3);flex-direction:column;transition:width .22s ease-out,height .22s ease-out,top .22s ease-out,bottom .22s ease-out,left .22s ease-out,right .22s ease-out,transform .22s ease-out,border-radius .22s ease-out;display:flex;overflow:visible;container-type:inline-size}.planner-dock.resizing{transition:none}.planner-dock.mode-floating{left:calc(var(--sidenav-w,220px) + (100vw - var(--sidenav-w,220px)) / 2);width:min(880px, calc(100vw - var(--sidenav-w,220px) - var(--planner-floating-gutter,24px)));border:0;border-radius:26px;position:fixed;bottom:18px;transform:translate(-50%)}.planner-dock.mode-floating.closed:focus-within:not(.chat-started){border:1px solid var(--subtle)}.planner-dock.mode-floating.closed{width:min(880px, calc(100vw - var(--sidenav-w,220px) - var(--planner-floating-gutter,24px)));bottom:18px}.planner-dock.mode-floating.open{height:var(--planner-floating-height,420px);max-height:calc(100vh - 48px);overflow:hidden}.planner-dock.mode-floating.closed.chat-started{box-shadow:none;background:0 0}.planner-dock.mode-floating.open.recipes-open{width:min(880px, calc(100vw - var(--sidenav-w,220px) - var(--planner-floating-gutter,24px)));height:var(--planner-floating-height,420px);max-height:calc(100vh - 48px);overflow:hidden}.planner-dock.mode-pinned{width:min(var(--planner-pinned-width,400px), calc(100vw - 64px));border:1px solid var(--subtle);background:var(--paper);box-shadow:var(--sh-2);border-radius:26px;position:fixed;top:18px;bottom:18px;right:18px;overflow:hidden}.planner-dock.mode-fullscreen{top:0;bottom:0;left:var(--sidenav-w,220px);width:auto;box-shadow:none;--planner-fullscreen-gutter:clamp(6rem, 17vw, 22rem);--planner-fullscreen-column:min(58rem, calc(100% - (var(--planner-fullscreen-gutter) * 2)));background:0 0;border:0;border-radius:0;margin:0;transition:none;position:fixed;right:0;overflow:hidden}.planner-dock.mode-embedded{width:100%;height:100%;min-height:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;position:static}.planner-dock.mode-embedded .planner-thread{max-height:none}.planner-dock.mode-embedded .planner-form{border-top:1px solid var(--subtle)}.planner-dock.mode-fullscreen .planner-thread{max-height:none;padding-inline:clamp(1rem,4vw,3.5rem)}.planner-dock.mode-fullscreen:not(.empty-chat) .planner-thread{box-sizing:border-box;width:100%;max-width:none;padding:1.25rem max(1.5rem, calc((100% - var(--planner-fullscreen-column)) / 2)) 1rem;margin-inline:0}.planner-dock.mode-fullscreen:not(.empty-chat) .msg.assistant,.planner-dock.mode-fullscreen:not(.empty-chat) .msg.system{max-width:none}.planner-dock.mode-fullscreen:not(.empty-chat) .msg.assistant .msg-body,.planner-dock.mode-fullscreen:not(.empty-chat) .msg.system .msg-body{width:100%}.planner-dock.mode-fullscreen:not(.empty-chat) .msg.user{box-sizing:border-box;align-items:flex-start;width:100%;padding-left:clamp(6rem,14%,12rem)}.planner-dock.mode-fullscreen:not(.empty-chat) .msg.user .msg-body{max-width:min(44rem,100%)}.planner-dock.mode-fullscreen:not(.empty-chat) .recipe-strip{min-height:0;width:var(--planner-fullscreen-column);flex-wrap:wrap;justify-content:center;gap:.75rem;max-width:calc(100% - 3rem);margin-inline:auto;padding:.55rem 0 .35rem;overflow:visible}.planner-dock.mode-fullscreen:not(.empty-chat) .recipe-strip .all-recipes{margin-left:0}.planner-dock.mode-fullscreen:not(.empty-chat) .recipe-strip button{max-width:min(13rem,100%)}.planner-dock.mode-fullscreen:not(.empty-chat).recipes-open .recipe-drawer{width:var(--planner-fullscreen-column);background:0 0;flex:0 auto;max-width:calc(100% - 3rem);max-height:min(24rem,100vh - 12rem);margin:auto auto .75rem;padding:.35rem 0;overflow:auto}.planner-dock.mode-fullscreen:not(.empty-chat).recipes-open .recipe-drawer-head{background:0 0;margin:0 0 .65rem;padding:0;position:static}.planner-dock.mode-fullscreen:not(.empty-chat).recipes-open .recipe-drawer-head strong{color:var(--muted);font-size:.86rem;font-weight:620}.planner-dock.mode-fullscreen:not(.empty-chat).recipes-open .recipe-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.planner-dock.mode-fullscreen:not(.empty-chat).recipes-open .recipe-row{min-width:0}.planner-dock.mode-fullscreen:not(.empty-chat).recipes-open .recipe-row>button:first-child{background:#ffffffc7;border:1px solid #0f172a1a;border-radius:14px;min-height:4.2rem;padding:.75rem .85rem;box-shadow:0 1px 2px #0f172a0a}.planner-dock.mode-fullscreen:not(.empty-chat).recipes-open .recipe-row>button:first-child:hover{background:var(--brand-50);border-color:#2563eb38}.planner-dock.mode-fullscreen:not(.empty-chat).recipes-open .recipe-row small{white-space:normal}.planner-dock.mode-fullscreen:not(.empty-chat).recipes-open .recipe-empty{padding-inline:0}.planner-dock.mode-fullscreen.empty-chat{overflow:hidden}.planner-dock.mode-fullscreen.empty-chat .planner-thread{flex:none;order:1;width:min(820px,100% - 3rem);margin:clamp(9rem,25vh,15rem) auto 0;padding:0;overflow:visible}.planner-dock.mode-fullscreen.empty-chat .planner-form{background:var(--paper);border:1px solid #0f172a1f;border-radius:1.75rem;flex:none;order:2;align-items:stretch;gap:0;width:min(820px,100% - 3rem);min-height:8.75rem;margin:2rem auto 0;padding:1.15rem 1.15rem 1rem;position:relative;box-shadow:0 16px 45px #0f172a14}.planner-dock.mode-fullscreen.empty-chat .recipe-strip{flex-wrap:wrap;order:3;justify-content:center;gap:.75rem;width:min(740px,100% - 3rem);min-height:0;margin:3rem auto 0;padding:0;overflow:visible}.planner-dock.mode-fullscreen.empty-chat .recipe-strip .all-recipes{margin-left:0}.planner-dock.mode-fullscreen.empty-chat .recipe-strip button{max-width:none;min-height:2.45rem;color:var(--ink-2);background:#ffffffc7;border:1px solid #0f172a1a;border-radius:999px;padding:0 .85rem;box-shadow:0 1px 2px #0f172a0a}.planner-dock.mode-fullscreen.empty-chat .recipe-strip button:hover{background:var(--brand-50);color:var(--text);border-color:#2563eb33}.planner-dock.mode-fullscreen.empty-chat.recipes-open .recipe-drawer{background:0 0;flex:0 auto;order:3;width:min(820px,100% - 3rem);max-height:min(24rem,100vh - 31rem);margin:1.25rem auto 0;padding:.35rem 0;overflow:auto}.planner-dock.mode-fullscreen.empty-chat.recipes-open .recipe-drawer-head{background:0 0;margin:0 0 .65rem;padding:0;position:static}.planner-dock.mode-fullscreen.empty-chat.recipes-open .recipe-drawer-head strong{color:var(--muted);font-size:.86rem;font-weight:620}.planner-dock.mode-fullscreen.empty-chat.recipes-open .recipe-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.planner-dock.mode-fullscreen.empty-chat.recipes-open .recipe-row{min-width:0}.planner-dock.mode-fullscreen.empty-chat.recipes-open .recipe-row>button:first-child{background:#ffffffc7;border:1px solid #0f172a1a;border-radius:14px;min-height:4.2rem;padding:.75rem .85rem;box-shadow:0 1px 2px #0f172a0a}.planner-dock.mode-fullscreen.empty-chat.recipes-open .recipe-row>button:first-child:hover{background:var(--brand-50);border-color:#2563eb38}.planner-dock.mode-fullscreen.empty-chat.recipes-open .recipe-row small{white-space:normal}.planner-dock.mode-fullscreen.empty-chat.recipes-open .recipe-empty{padding-inline:0}.planner-header{flex:none;justify-content:space-between;align-items:center;padding:.75rem 1rem .4rem;display:flex}.planner-header-actions{align-items:center;gap:.3rem;display:flex}.planner-header-icon{width:2rem;height:2rem;color:var(--ink-2);border-radius:999px;padding:0}.planner-header-icon svg{flex:none;width:1rem;height:1rem}.planner-header-icon:hover:not(:disabled){background:color-mix(in srgb, var(--brand-50) 74%, transparent)}.planner-header-left{min-width:0}.planner-header-right{margin-left:auto}.planner-history-popover{z-index:6;border:1px solid var(--subtle);background:var(--paper);width:min(260px,100% - 2rem);max-height:min(320px,100% - 4rem);box-shadow:var(--sh-3);border-radius:12px;padding:.7rem;position:absolute;top:3rem;left:1rem;overflow-y:auto}.planner-dock.mode-floating.closed .planner-history-popover{z-index:80;pointer-events:auto;max-height:min(320px,100vh - 7rem);top:auto;bottom:calc(100% - .85rem);left:1rem}.planner-history-popover strong{color:var(--text);margin-bottom:.45rem;font-size:.82rem;display:block}.planner-history-popover p{color:var(--muted);margin:0;font-size:.78rem}.planner-history-list{gap:.18rem;display:grid}.planner-history-list button{min-width:0;color:var(--ink-2);text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:.65rem;padding:.5rem .55rem;display:flex}.planner-history-list button:hover,.planner-history-list button.active{background:var(--brand-50);color:var(--text)}.planner-history-list span{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.planner-history-list small{color:var(--muted);font-size:.7rem}.recipe-strip{box-sizing:border-box;scrollbar-width:none;flex:none;align-items:center;gap:.55rem;width:100%;min-width:0;max-width:100%;min-height:2.75rem;padding:.55rem .75rem .2rem;display:flex;overflow-x:auto}.recipe-strip::-webkit-scrollbar{display:none}.recipe-strip.compact{padding:.75rem 1rem .15rem}.recipe-strip button{border-radius:var(--radius);min-width:0;max-width:11rem;min-height:2rem;color:var(--muted);white-space:nowrap;flex:none;align-items:center;gap:.34rem;padding:0 .35rem;font-size:.86rem;font-weight:560;transition:color .14s ease-out,background .14s ease-out;display:inline-flex}.recipe-strip button:hover{color:var(--text);background:var(--brand-50)}.recipe-strip button span{text-overflow:ellipsis;min-width:0;overflow:hidden}.recipe-strip .all-recipes{margin-left:auto;padding-inline:.45rem}.mode-pinned .recipe-strip{justify-content:flex-end;overflow:hidden}.mode-pinned .recipe-strip button:not(.all-recipes){display:none}.mode-pinned .recipe-strip .all-recipes{flex:none;max-width:none;margin-left:auto}@container (width<=760px){.recipe-strip{gap:.35rem;padding-inline:.6rem}.recipe-strip button:nth-last-child(2){display:none}}@container (width<=560px){.recipe-strip button:nth-last-child(3){display:none}}@container (width<=430px){.recipe-strip button:nth-last-child(4),.recipe-strip .all-recipes span{display:none}}.recipe-drawer{background:var(--paper);flex:1;min-height:0;padding:1rem 1.35rem .75rem;overflow:auto}.recipe-drawer-head{z-index:2;background:var(--paper);justify-content:space-between;align-items:center;gap:.75rem;margin:-1rem -1.35rem .9rem;padding:1rem 1.35rem .65rem;display:flex;position:sticky;top:-1rem}.recipe-drawer-head strong{color:var(--text);font-size:1.08rem}.recipe-drawer-head div{align-items:center;gap:.35rem;display:flex}.recipe-drawer-head button,.recipe-delete{border:1px solid var(--subtle);background:var(--surface);min-height:1.85rem;color:var(--ink-2);border-radius:999px;justify-content:center;align-items:center;gap:.35rem;padding:0 .65rem;font-size:.75rem;font-weight:560;display:inline-flex}.recipe-drawer-head button:hover,.recipe-delete:hover{border-color:var(--ink-4);color:var(--text)}.recipe-drawer-head button[aria-label]{background:0 0;border-color:#0000;width:2rem;padding:0}.recipe-list,.recipe-create{gap:.3rem;display:grid}.recipe-row{align-items:center;gap:.55rem;display:flex}.recipe-row>button:first-child{min-width:0;color:var(--text);text-align:left;border-radius:8px;flex:1;align-items:center;gap:.6rem;padding:.56rem .7rem;display:flex}.recipe-row>button:first-child:hover{background:var(--brand-50)}.recipe-row>button:first-child>svg{color:var(--muted);flex:none}.recipe-row span{gap:.16rem;min-width:0;display:grid}.recipe-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:620;overflow:hidden}.recipe-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;line-height:1.35;overflow:hidden}.recipe-delete{color:var(--muted);background:0 0;border-color:#0000;flex:none}.recipe-empty{color:var(--muted);margin:.4rem 0 0;padding:.45rem .65rem;font-size:.75rem}.recipe-create label{color:var(--muted);gap:.28rem;font-size:.76rem;font-weight:620;display:grid}.recipe-create input,.recipe-create textarea{border:1px solid var(--subtle);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:8px;outline:none;padding:.58rem .68rem;font-size:.85rem}.recipe-create textarea{resize:vertical;min-height:6.5rem}.recipe-create input:focus,.recipe-create textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.recipe-create-actions{justify-content:flex-end;gap:.45rem;padding-top:.25rem;display:flex}.planner-resize-handle{z-index:2;touch-action:none;position:absolute}.planner-resize-handle:after{content:"";background:0 0;border-radius:999px;transition:background .14s ease-out,opacity .14s ease-out,transform .14s ease-out;position:absolute}.planner-resize-handle:hover:after,.planner-dock.resizing .planner-resize-handle:after{background:var(--subtle)}.planner-resize-handle-y{cursor:ns-resize;height:28px;top:0;left:0;right:0}.planner-resize-handle-y:after{opacity:0;width:min(26rem,38%);height:5px;top:9px;left:50%;transform:translate(-50%)translateY(2px)}.planner-resize-handle-y:hover:after,.planner-dock.resizing .planner-resize-handle-y:after{opacity:1;background:#0f172a33;transform:translate(-50%)translateY(0)}.planner-resize-handle-x{cursor:ew-resize;width:10px;top:0;bottom:0;left:-5px}.planner-resize-handle-x:after{width:2px;top:35%;bottom:35%;left:4px}body[data-planner-resizing=vertical],body[data-planner-resizing=vertical] *{-webkit-user-select:none;user-select:none;cursor:ns-resize!important}body[data-planner-resizing=horizontal],body[data-planner-resizing=horizontal] *{-webkit-user-select:none;user-select:none;cursor:ew-resize!important}.planner-thread{flex-direction:column;flex:auto;gap:.75rem;min-height:0;max-height:50vh;padding:.85rem 1rem;display:flex;overflow-y:auto}.mode-pinned .planner-thread,.mode-floating.open .planner-thread{max-height:none}.planner-empty{color:var(--muted);text-align:center;max-width:16rem;margin:auto;font-size:.8125rem;line-height:1.55}.planner-dock.mode-fullscreen.empty-chat .planner-empty{text-align:center;max-width:none;margin:0}.planner-home-empty{display:block}.planner-home-empty strong{color:var(--text);letter-spacing:0;font-size:clamp(2rem,3vw,2.75rem);font-weight:560;line-height:1.12}.msg{flex-direction:column;gap:.28rem;animation:.22s ease-out both fadeIn;display:flex}.msg.user{align-items:flex-end;margin:.1rem 0 .15rem}.msg.assistant,.msg.system{align-items:flex-start;max-width:min(46rem,100%)}.msg-body{color:var(--text);word-break:break-word;font-family:var(--font-sans);letter-spacing:0;max-width:100%;font-size:.91rem;line-height:1.62}.msg.cot{align-self:stretch;gap:0;width:100%;margin-top:-.15rem}.cot-run{width:100%;color:var(--muted);border:1px solid color-mix(in srgb, var(--hairline) 78%, transparent);border-radius:var(--radius-lg);background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 94%, #f8fafc), var(--surface)), var(--surface);overflow:hidden;box-shadow:0 8px 20px #0f172a0d}.cot-run>summary{cursor:pointer;border-radius:inherit;grid-template-columns:.9rem minmax(0,1fr) auto .9rem;align-items:center;gap:.55rem;min-height:2.35rem;padding:.42rem .65rem;list-style:none;display:grid}.cot-run>summary::-webkit-details-marker{display:none}.cot-run-glyph{background:var(--muted);width:.6rem;height:.6rem;box-shadow:0 0 0 4px color-mix(in srgb, var(--muted) 12%, transparent);border-radius:999px;display:inline-block;position:relative}.cot-run.running .cot-run-glyph{background:#2563eb;animation:1.2s ease-in-out infinite pulse-dot;box-shadow:0 0 0 4px #2563eb1f}.cot-run.done .cot-run-glyph{background:#059669;box-shadow:0 0 0 4px #0596691f}.cot-run.error .cot-run-glyph{background:#b91c1c;box-shadow:0 0 0 4px #b91c1c1f}.cot-run-title,.cot-run-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cot-run-title{color:var(--text);font-size:.84rem;font-weight:650}.cot-run.running .cot-run-title{color:#0000;background:linear-gradient(100deg,#9ca3af 0%,#d1d5db 32%,#858b96 64%,#9ca3af 100%) 0 0/220% 100%;-webkit-background-clip:text;background-clip:text;animation:1.45s ease-in-out infinite cotTextShimmer}.cot-run-meta{border:1px solid var(--hairline);background:color-mix(in srgb, var(--subtler) 70%, transparent);color:var(--muted);border-radius:999px;padding:.18rem .45rem;font-size:.68rem}.cot-run.error .cot-run-meta{color:#b91c1c}.cot-run-chevron{color:var(--muted);font-size:.68rem;transition:transform .14s ease-out}.cot-run[open] .cot-run-chevron{transform:rotate(180deg)}.cot-run-body{gap:.4rem;padding:0 .65rem .65rem 1.7rem;display:grid}.cot-note{color:var(--muted);margin:0;padding:.1rem .2rem .2rem;font-size:.78rem;line-height:1.5}.cot-tool-row{color:var(--muted);border-radius:calc(var(--radius-lg) - 2px);background:color-mix(in srgb, var(--subtler) 42%, transparent);border:1px solid #0000}.cot-tool-head{min-height:2.1rem;color:var(--muted);border-radius:inherit;grid-template-columns:.9rem max-content minmax(0,1fr);align-items:center;gap:.45rem;padding:.22rem .45rem;display:grid}.cot-tool-status{border:1.5px solid;border-radius:999px;width:.58rem;height:.58rem}.cot-tool-row.running .cot-tool-status{border-color:#0000 #9ca3af #9ca3af;animation:.85s linear infinite spin}.cot-tool-row.done .cot-tool-status{color:#059669;background:linear-gradient(45deg,#0000 45%,currentColor 45% 56%,#0000 56%) 34% 51%/45% 45% no-repeat,linear-gradient(-45deg,#0000 44%,currentColor 44% 55%,#0000 55%) 58% 53%/55% 55% no-repeat;border-color:#059669}.cot-tool-row.error .cot-tool-status{color:#b91c1c;border-color:#b91c1c}.cot-tool-name{color:var(--text);font-weight:600;font-family:var(--font-mono,ui-monospace, SFMono-Regular, monospace);white-space:nowrap;font-size:.76rem}.cot-tool-preview{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}@keyframes cotTextShimmer{0%{background-position:180% 0}to{background-position:-80% 0}}@keyframes spin{to{transform:rotate(360deg)}}.msg-body>:first-child{margin-top:0}.msg-body>:last-child{margin-bottom:0}.msg-body p,.msg-body ul,.msg-body ol,.msg-body pre,.msg-body blockquote,.msg-body table{margin:.58rem 0}.msg-body ul,.msg-body ol{padding-left:1.35rem}.msg-body li{margin:.22rem 0;padding-left:.08rem}.msg-body li::marker{color:var(--muted);font-weight:600}.msg-body strong{color:var(--text);font-weight:650}.msg-body h1,.msg-body h2,.msg-body h3,.msg-body h4{color:var(--text);letter-spacing:0;margin:.85rem 0 .42rem;font-weight:650;line-height:1.28}.msg-body h1{font-size:1.22rem}.msg-body h2{font-size:1.08rem}.msg-body h3,.msg-body h4{font-size:.98rem}.msg-body blockquote{border-left:2px solid color-mix(in srgb, var(--muted) 22%, transparent);color:var(--muted);padding:.05rem 0 .05rem .85rem}.msg-body code{font-family:var(--font-mono,ui-monospace, monospace);background:color-mix(in srgb, var(--subtler) 82%, white);border-radius:var(--radius-sm,4px);padding:.08em .28em;font-size:.86em}.msg-body pre{background:color-mix(in srgb, var(--subtler) 88%, white);border:1px solid color-mix(in srgb, var(--hairline) 76%, transparent);border-radius:var(--radius-md,6px);padding:.7rem .78rem;overflow-x:auto}.msg-body pre code{background:0 0;padding:0}.msg-body a{color:var(--accent,inherit);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 42%, transparent);text-decoration-color:color-mix(in srgb, currentColor 42%, transparent);text-underline-offset:.16em}.msg-body table{border-collapse:collapse;width:100%;font-size:.88em}.msg-body th,.msg-body td{border-bottom:1px solid color-mix(in srgb, var(--hairline) 80%, transparent);text-align:left;vertical-align:top;padding:.35rem .45rem}.msg-body th{color:var(--text);background:color-mix(in srgb, var(--subtler) 58%, transparent);font-weight:650}.msg.user .msg-body{border:1px solid color-mix(in srgb, var(--hairline) 58%, transparent);background:color-mix(in srgb, var(--subtler) 86%, white);border-radius:1rem 1rem .35rem;align-self:flex-end;max-width:min(34rem,82%);padding:.58rem .78rem;box-shadow:0 1px 2px #0f172a0a}.msg.assistant .msg-body,.msg.system .msg-body{align-self:flex-start;width:min(46rem,100%);padding:.1rem 0}.action-card{border:1px solid var(--hairline);border-radius:var(--radius-md,6px);background:var(--surface);align-self:flex-start;gap:.4rem;width:min(100%,25rem);margin-top:.35rem;padding:.5rem .6rem;display:grid;box-shadow:0 1px 2px #0f172a0a}.action-card.editing{width:min(100%,34rem)}.action-card-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.35rem;display:grid}.action-card-head span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;grid-column:1/-1;font-size:.68rem;font-weight:700}.action-card-head>div:first-of-type{gap:.18rem;min-width:0;display:grid}.action-card-head strong{min-width:0;color:var(--text);font-size:.86rem;line-height:1.25}.action-card-head small{color:var(--muted);font-size:.69rem}.action-card-tools{align-items:center;gap:.18rem;display:flex}.action-card-tools small{white-space:nowrap}.action-card-tools button{border-radius:var(--radius-sm,4px);width:1.45rem;height:1.45rem;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;display:inline-grid}.action-card-tools .action-card-check{color:#2563eb}.action-card-tools button:hover:not(:disabled){border-color:var(--hairline);background:var(--subtler);color:var(--text)}.action-card-tools button:disabled{opacity:.45;cursor:default}.action-card.confirmed .action-card-head small{color:#047857}.action-card.confirmed{background:#ecfdf5b3;border-color:#04785738}.action-card.confirmed .action-card-head strong{color:#064e3b}.action-card.dismissed{box-shadow:none;background:#f3f4f6;border-color:#d1d5db}.action-card.dismissed .action-card-head strong,.action-card.dismissed .action-card-head small,.action-card.dismissed .action-card-tools{color:#6b7280}.action-card.error .action-card-head small,.action-card-error{color:#b91c1c}.action-card p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.45}.action-card label{gap:.25rem;display:grid}.action-card-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.action-field-wide{grid-column:1/-1}.action-card label span{color:var(--muted);font-size:.7rem;font-weight:700}.action-card input,.action-card select,.action-card textarea{border:1px solid var(--hairline);border-radius:var(--radius-sm,4px);background:var(--surface);width:100%;min-width:0;color:var(--text);font:inherit;font-size:.78rem}.action-card input,.action-card select{height:2rem;padding:0 .5rem}.action-card textarea{resize:vertical;min-height:5rem;max-height:15rem;font-family:var(--font-mono,ui-monospace, SFMono-Regular, monospace);padding:.5rem;line-height:1.45}.record-file-review,.record-file-sections{gap:.45rem;display:grid}.record-file-section{gap:.22rem}.record-file-section textarea{min-height:3.1rem;max-height:6.5rem;font-family:inherit}.action-card input:disabled,.action-card select:disabled,.action-card textarea:disabled{color:var(--muted);background:var(--subtler)}.action-card-error{border-radius:var(--radius-sm,4px);background:#fef2f2bf;border:1px solid #b91c1c2e;padding:.45rem .55rem;font-size:.76rem}.action-card-actions{justify-content:flex-end;gap:.45rem;display:flex}@media (width<=720px){.action-card-head{grid-template-columns:minmax(0,1fr)}.action-card-tools{justify-content:space-between}.action-card-fields{grid-template-columns:1fr}}.planner-form{align-items:flex-end;gap:.55rem;padding:.55rem .75rem;display:flex}.mode-floating.closed .planner-form{padding:.45rem .7rem .6rem}.planner-dock.mode-floating .planner-form,.planner-dock.mode-fullscreen:not(.empty-chat) .planner-form,.planner-dock.mode-pinned .planner-form{gap:0;position:relative}.planner-dock.mode-fullscreen:not(.empty-chat) .planner-form{width:var(--planner-fullscreen-column);border:1px solid var(--subtle);background:var(--surface);border-radius:1.5rem;max-width:calc(100% - 3rem);margin:.55rem auto 2.2rem;padding:0}.planner-form textarea{resize:none;background:var(--surface);border:1px solid var(--subtle);scrollbar-width:thin;border-radius:1.5rem;outline:none;flex:1;min-height:3rem;max-height:min(12rem,28vh);padding:.82rem 1rem;line-height:1.35;transition:border-color .14s ease-out;overflow-y:auto}.planner-dock.mode-pinned .planner-form textarea{padding-right:3.8rem}.planner-dock.mode-floating .planner-form textarea,.planner-dock.mode-fullscreen:not(.empty-chat) .planner-form textarea{z-index:1;background:0 0;border-color:#0000;padding-right:3.8rem;position:relative}.planner-dock.mode-fullscreen:not(.empty-chat) .planner-form textarea{min-height:3.35rem;padding-top:.98rem;padding-bottom:.98rem}.planner-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.planner-dock.mode-floating .planner-form textarea:focus,.planner-dock.mode-fullscreen:not(.empty-chat) .planner-form textarea:focus{box-shadow:none;border-color:#0000}.planner-dock.mode-floating:focus-within{box-shadow:var(--sh-2)}.planner-dock.mode-floating .planner-form:before{content:"";pointer-events:none;border:1px solid #0000;border-radius:1.5rem;transition:border-color .14s ease-out,box-shadow .14s ease-out;position:absolute;inset:.45rem .7rem .6rem}.planner-dock.mode-floating.chat-started .planner-form:before{border-color:var(--subtle);background:var(--surface)}.planner-dock.mode-floating:focus-within .planner-form:before,.planner-dock.mode-fullscreen:not(.empty-chat) .planner-form:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.planner-form .planner-send{background:var(--brand);border-color:var(--brand);color:#fff;border-radius:999px;place-items:center;width:3rem;min-width:3rem;height:3rem;padding:0;display:inline-grid}.planner-form .planner-send:disabled{background:var(--subtler);color:var(--muted);border-color:#0000}.planner-dock.mode-floating .planner-form .planner-send,.planner-dock.mode-fullscreen:not(.empty-chat) .planner-form .planner-send,.planner-dock.mode-pinned .planner-form .planner-send{z-index:1;width:2.18rem;min-width:2.18rem;height:2.18rem;position:absolute;top:calc(50% - 1px);right:1.25rem;transform:translateY(-50%)}.planner-dock.mode-floating.closed .planner-form .planner-send{right:1.2rem}.planner-dock.mode-fullscreen.empty-chat .planner-form textarea{background:0 0;border:0;border-radius:0;min-height:6.25rem;max-height:10rem;padding:.15rem 3.9rem 2.8rem .15rem;font-size:1.02rem;line-height:1.45}.planner-dock.mode-fullscreen.empty-chat .planner-form textarea:focus{box-shadow:none}.planner-dock.mode-fullscreen.empty-chat .planner-form .planner-send{background:var(--brand);border-color:var(--brand);color:#fff;width:2.7rem;min-width:2.7rem;height:2.7rem;position:absolute;bottom:1rem;right:1rem;box-shadow:0 8px 18px #0f172a24}.planner-dock.mode-fullscreen.empty-chat .planner-form .planner-send:disabled{background:var(--subtler);color:var(--muted);box-shadow:none;border-color:#0000}.thinking{align-items:center;gap:3px;display:inline-flex}.thinking span{background:var(--muted);border-radius:50%;width:4px;height:4px;animation:1.2s ease-in-out infinite blink}.thinking span:nth-child(2){animation-delay:.2s}.thinking span:nth-child(3){animation-delay:.4s}.planner-error{border-radius:var(--radius);color:#a04a3f;background:#b4463c14;margin:.5rem 1.25rem;padding:.5rem .75rem;font-size:.8125rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes blink{0%,80%,to{opacity:.25}40%{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.bar-pop{background:var(--paper);border:1px solid var(--subtle);border-radius:var(--r-xl);box-shadow:var(--sh-3);z-index:100;color:var(--ink);flex-direction:column;font-size:12px;display:flex;overflow:hidden}.bar-pop.inline-bar{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.bar-pop-body{flex-direction:column;gap:10px;max-height:380px;padding:10px 12px;display:flex;overflow-y:auto}.bar-pop.inline-bar .bar-pop-body{gap:4px;max-height:none;padding:0;overflow:visible}.bar-pop.edit-inline .bar-pop-body{gap:0}.bar-pop.inline-bar.above .bar-pop-body,.bar-pop.inline-bar.above .bar-pop-field{flex-direction:column-reverse}.bar-pop-field{flex-direction:column;gap:4px;display:flex}.bar-pop-label{font-size:10px;font-weight:var(--w-semi);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.bar-pop-input{appearance:none;background:var(--paper-2);border:1px solid var(--subtle);width:100%;font:inherit;color:var(--ink);border-radius:6px;padding:6px 10px;font-size:12px}.bar-pop.inline-bar .bar-pop-input{box-sizing:border-box;width:100%;height:var(--bar-pop-anchor-h);background:var(--bar-pop-inline-bg);border-color:var(--bar-pop-inline-border);border-radius:var(--gantt-bar-radius,6px);color:var(--bar-pop-inline-fg);font-weight:var(--w-semi);padding:0 12px;display:block;box-shadow:inset 0 0 0 1px #ffffff80,0 1px 4px #0f172a1f}.bar-pop-input:focus{outline:2px solid var(--info);outline-offset:-1px}.bar-pop.inline-bar .bar-pop-input:focus{outline-offset:0;outline:2px solid #2563ebbf}.bar-pop-input:disabled{color:var(--ink-3);cursor:wait}.bar-pop-list{border:1px solid var(--subtle);background:var(--paper);border-radius:6px;max-height:140px;margin:0;padding:3px;list-style:none;overflow-y:auto}.bar-pop.inline-bar .bar-pop-list{width:max(100%,280px);max-height:210px;box-shadow:var(--sh-3);overscroll-behavior:contain;border-radius:8px}.bar-pop.assign-inline .bar-pop-list{max-height:clamp(96px, calc(var(--bar-pop-available-h,360px) - var(--bar-pop-anchor-h,42px) - 12px), 210px)}.bar-pop.edit-inline .bar-pop-list{max-height:clamp(96px, calc(var(--bar-pop-available-h,360px) - var(--bar-pop-anchor-h,42px) - 94px), 260px);box-shadow:none;border-bottom:0;border-radius:8px 8px 0 0;padding-bottom:0}.bar-pop-inline-actions{box-sizing:border-box;background:var(--paper);border:1px solid var(--subtle);z-index:1;width:max(100%,280px);box-shadow:var(--sh-3);border-radius:0 0 8px 8px;justify-content:space-between;align-items:flex-end;gap:10px;padding:8px;display:flex;position:relative}.bar-pop-inline-buttons{flex:none;align-items:center;gap:8px;margin-left:auto;display:inline-flex}.bar-pop-option{appearance:none;width:100%;font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:5px 8px;font-size:12px;display:flex}.bar-pop-option:hover{background:var(--paper-2)}.bar-pop-option.keyboard-active{background:var(--paper-2);box-shadow:inset 2px 0 0 var(--accent)}.bar-pop-option.selected{color:var(--ink);font-weight:var(--w-semi);background:#f3f4f6;box-shadow:inset 2px 0 #6b7280,inset 0 0 0 1px #6b728014}.bar-pop-option:disabled{color:var(--ink-3);cursor:default}.bar-pop-option.selected:disabled{color:var(--ink)}.bar-pop-empty{color:var(--ink-3);padding:6px 8px;font-size:12px}.bar-pop-segmented{background:var(--paper-2);border:1px solid var(--subtle);border-radius:6px;width:fit-content;padding:2px;display:inline-flex}.bar-pop-segment{appearance:none;font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:4px 10px;font-size:11px}.bar-pop-segment.active{color:#fff;font-weight:var(--w-semi);background:#374151;box-shadow:0 1px 2px #0f172a1f,inset 0 0 0 1px #ffffff14}.bar-pop-segment:disabled{cursor:default}.bar-pop-segment.active:disabled{color:#fff}.bar-pop-error{color:var(--danger);background:var(--danger-soft);border-radius:6px;padding:6px 8px;font-size:11px}.records{flex-direction:column;min-width:0;height:100%;padding:2.5rem 2rem 3rem;display:flex}.records-head h1{font-size:var(--t-h1);font-weight:var(--w-semi);letter-spacing:var(--ls-tight);margin:0}.records-tabs{gap:.25rem;margin-top:.5rem;display:flex}.records-tab{border-radius:var(--radius);font-size:var(--t-meta);font-weight:var(--w-medium);color:var(--muted);padding:.25rem .6rem}.records-tab:hover{background:var(--hover);color:var(--text)}.records-tab.active{background:var(--subtler);color:var(--text)}.records-body{grid-template-columns:minmax(240px, var(--records-tree-width,360px)) 12px minmax(0, 1fr);flex:1;align-items:stretch;gap:.75rem;min-height:0;margin-top:0;display:grid}.records-body.empty{grid-template-columns:minmax(0,1fr)}.records-body.empty .records-tree{padding-right:0}.records-tree{flex-direction:column;gap:.3rem;min-width:0;min-height:0;padding-right:.35rem;display:flex;overflow:auto}.records-resize-handle{cursor:ew-resize;border-radius:var(--radius);position:relative}.records-resize-handle:after{content:"";background:var(--subtle);border-radius:999px;width:2px;transition:background .14s ease-out,width .14s ease-out;position:absolute;top:.4rem;bottom:.4rem;left:50%;transform:translate(-50%)}.records-resize-handle:hover:after{background:var(--accent);width:3px}body[data-records-resizing=horizontal],body[data-records-resizing=horizontal] *{cursor:ew-resize!important;-webkit-user-select:none!important;user-select:none!important}.records-search{border:1px solid var(--subtle);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);font-size:var(--t-meta);margin-bottom:.6rem;padding:.45rem .7rem}.records-search:focus{box-shadow:var(--sh-focus);outline:none}.records-cat{margin-bottom:.2rem}.records-cat-head,.records-file{text-align:left;border-radius:var(--radius);width:100%;min-width:0;color:var(--text);align-items:center;gap:.4rem;transition:background .14s ease-out,color .14s ease-out;display:flex}.records-cat-head{cursor:pointer;font-size:var(--t-meta);font-weight:var(--w-semi);color:var(--text);background:var(--paper-2);padding:.42rem .5rem}.records-cat-head:hover{background:var(--hover)}.records-file{cursor:pointer;width:calc(100% - 1.15rem);color:var(--muted);margin-left:1.15rem;padding:.34rem .5rem;font-size:.8rem}.records-file span:not(.records-file-size){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.records-file:hover{background:var(--hover);color:var(--text)}.records-file.active{background:var(--brand-50);color:var(--text);font-weight:var(--w-medium)}.records-caret{color:var(--ink-4);font-size:.65rem;transition:transform .14s ease-out;display:inline-block}.records-caret[data-open=true]{transform:rotate(90deg)}.records-folder-icon{color:var(--accent);fill:color-mix(in srgb, var(--accent) 18%, transparent)}.records-file-icon{color:var(--ink-4)}.records-count{font-size:var(--t-micro);color:var(--ink-4);font-variant-numeric:tabular-nums;margin-left:auto}.records-file-size{color:var(--ink-4);font-size:var(--t-micro);font-variant-numeric:tabular-nums;flex:none;margin-left:auto}.records-empty,.records-error,.records-muted{font-size:var(--t-meta);color:var(--muted);padding:.5rem}.records-error{color:var(--danger)}.records-doc{border:1px solid var(--subtle);border-radius:var(--radius-lg);background:var(--surface);min-width:0;min-height:0;box-shadow:var(--sh-card);flex-direction:column;padding:1rem;display:flex}.records-placeholder{color:var(--muted);text-align:center;padding:3rem 1rem}.records-md{max-width:60rem;min-height:0;color:var(--text);font-size:var(--t-body);line-height:var(--lh-normal);flex:1;overflow:auto}.records-docbar{align-items:center;gap:.75rem;min-width:0;margin-bottom:1rem;display:flex}.records-docbar>div:first-child{min-width:0;margin-right:auto}.records-docbar h2{color:var(--text);font-size:1rem;font-weight:var(--w-semi);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.records-docbar p{color:var(--muted);font-size:var(--t-meta);margin:.15rem 0 0}.last-edited{color:var(--muted);cursor:pointer;font:inherit;font-size:var(--t-meta);text-align:left;background:0 0;border:0;margin:.15rem 0 0;padding:0;display:inline}.last-edited:hover,.last-edited:focus-visible{color:var(--text);text-decoration:underline}.last-edited:disabled{cursor:default}.last-edited:disabled:hover,.last-edited:disabled:focus-visible{color:var(--muted);text-decoration:none}.records-editor{resize:none;border-radius:var(--radius);background:var(--paper);width:100%;min-height:0;color:var(--text);border-color:#0000;flex:1;padding:.75rem .85rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;line-height:1.65}.records-rich-editor{flex:1;min-height:0;display:flex;position:relative}.records-rich-editor .markdown-rich-root{box-shadow:none;border-color:#0000}.records-rich-content{min-height:100%;color:var(--text);flex:1;padding:.85rem .95rem 2rem;font-size:.95rem;line-height:1.65;overflow:visible}.records-rich-content table{table-layout:fixed}.records-rich-content th,.records-rich-content td{overflow-wrap:anywhere}.trajectory{background:var(--paper);flex-direction:column;gap:.8rem;width:100%;min-width:0;max-width:100%;height:100%;padding:1.35rem 1.5rem 3rem;display:flex;overflow-x:hidden}.trajectory-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;min-width:0;display:flex}.trajectory-head>div:first-child{min-width:0}.trajectory-head h1{color:var(--text);font-size:var(--t-h1);font-weight:var(--w-semi);letter-spacing:0;margin:0}.trajectory-head p{color:var(--muted);font-family:var(--font-mono);font-size:var(--t-meta);margin:.2rem 0 0}.trajectory-stats{flex:420px;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;min-width:0;max-width:620px;margin-left:auto;display:grid}.trajectory-stat{border:1px solid var(--hairline);border-radius:var(--r-lg);background:var(--paper-2);min-width:0;padding:.55rem .65rem}.trajectory-stat span{min-width:0;color:var(--muted);font-size:var(--t-micro);font-weight:var(--w-medium);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.trajectory-stat strong{color:var(--text);font-size:var(--t-body);font-weight:var(--w-semi);margin-top:.1rem;display:block}.trajectory-run-strip{gap:.5rem;max-width:100%;padding:.15rem 0 .35rem;display:flex;overflow:auto hidden}.trajectory-session-chip{border:1px solid var(--hairline);border-radius:var(--r-lg);background:var(--paper);color:var(--text);flex:0 0 188px;gap:.16rem;padding:.55rem .65rem;display:grid}.trajectory-session-chip:hover,.trajectory-session-chip.active{border-color:color-mix(in srgb, var(--brand) 34%, var(--hairline));background:var(--brand-50)}.trajectory-session-chip.active{box-shadow:inset 0 -2px 0 var(--brand)}.trajectory-session-chip span{font-size:var(--t-meta);font-weight:var(--w-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trajectory-session-chip small,.trajectory-session-chip em{color:var(--muted);font-size:var(--t-micro);align-items:center;gap:.25rem;font-style:normal;display:inline-flex}.trajectory-session-chip em{color:var(--danger)}.trajectory-main{border:1px solid var(--hairline);border-radius:var(--r-lg);background:var(--paper);width:100%;min-width:0;max-width:100%;overflow:hidden}.trajectory-axis{border-bottom:1px solid var(--hairline);background:var(--paper-2);min-width:0;color:var(--muted);font-family:var(--font-mono);font-size:var(--t-micro);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.75rem;padding:.5rem .7rem;display:grid}.trajectory-axis span:nth-child(2){color:var(--text);font-family:var(--font-sans);font-weight:var(--w-medium)}.trajectory-axis span:last-child{text-align:right}.trajectory-scroll{overscroll-behavior-x:contain;background:linear-gradient(90deg, var(--hairline) 1px, transparent 1px) 0 0 / 160px 100%, var(--paper);align-items:flex-start;gap:.8rem;width:100%;max-width:100%;min-height:240px;padding:1rem;display:flex;position:relative;overflow:auto visible}.trajectory-rail{background:var(--hairline-2);height:2px;position:absolute;top:124px;left:1rem;right:1rem}.trajectory-node{z-index:1;border:1px solid var(--hairline);border-radius:var(--r-lg);background:color-mix(in srgb, var(--paper) 96%, transparent);height:204px;box-shadow:var(--sh-1);text-align:left;flex-direction:column;flex:0 0 236px;gap:.5rem;display:flex;position:relative}.trajectory-node:hover,.trajectory-node.selected{border-color:var(--brand);box-shadow:var(--sh-focus)}.trajectory-message-node{justify-content:flex-start;padding:.75rem}.trajectory-message-node strong,.trajectory-iteration-summary strong{min-width:0;color:var(--text);font-size:var(--t-meta);font-weight:var(--w-medium);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.trajectory-message-node small,.trajectory-iteration-summary small{color:var(--muted);font-size:var(--t-micro)}.trajectory-role{border-radius:var(--r-md);background:var(--paper-2);width:fit-content;color:var(--ink-2);font-size:var(--t-micro);font-weight:var(--w-semi);text-transform:capitalize;justify-content:center;padding:.18rem .42rem;display:inline-flex}.trajectory-role.role-user{background:var(--info-soft);color:var(--info)}.trajectory-role.role-assistant{background:var(--ok-soft);color:var(--ok)}.trajectory-role.role-tool{background:var(--warn-soft);color:var(--warn)}.trajectory-iteration-node{flex-basis:280px;padding:0}.trajectory-iteration-summary{border-bottom:1px solid var(--hairline);text-align:left;gap:.24rem;min-height:116px;padding:.75rem;display:grid}.trajectory-iteration-summary>span{color:var(--brand);font-size:var(--t-micro);font-weight:var(--w-semi)}.trajectory-parallel-tools{flex:1;align-content:start;gap:.4rem;min-height:0;padding:.65rem .75rem .75rem;display:grid;overflow:auto}.trajectory-tool-chip{border:1px solid var(--hairline-2);border-radius:var(--r-md);background:var(--paper-2);width:100%;max-width:100%;min-height:30px;color:var(--text);text-align:left;align-items:center;gap:.35rem;padding:0 .55rem;display:inline-flex;overflow:hidden}.trajectory-tool-chip strong{min-width:0;font-size:var(--t-meta);font-weight:var(--w-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trajectory-tool-chip small{color:var(--muted);font-size:var(--t-micro);white-space:nowrap;margin-left:auto}.trajectory-tool-chip.status-success{border-color:color-mix(in srgb, var(--ok) 26%, var(--hairline));background:color-mix(in srgb, var(--ok-soft) 42%, var(--paper))}.trajectory-tool-chip.status-error{border-color:color-mix(in srgb, var(--danger) 28%, var(--hairline));background:color-mix(in srgb, var(--danger-soft) 52%, var(--paper))}.trajectory-tool-chip.status-pending{border-color:color-mix(in srgb, var(--warn) 28%, var(--hairline));background:color-mix(in srgb, var(--warn-soft) 55%, var(--paper))}.trajectory-tool-chip:hover,.trajectory-tool-chip.selected{border-color:var(--brand);box-shadow:var(--sh-focus)}.trajectory-details{border:1px solid var(--hairline);border-radius:var(--r-lg);background:var(--paper);flex:none;width:100%;min-width:0;max-width:100%;min-height:220px;overflow:hidden}.trajectory-panel-head{border-bottom:1px solid var(--hairline);background:var(--paper-2);align-items:center;min-height:42px;padding:.7rem .8rem;display:flex}.trajectory-panel-head h2{color:var(--text);font-size:var(--t-meta);font-weight:var(--w-semi);margin:0}.trajectory-detail-body{grid-template-columns:minmax(0,1fr);gap:.75rem;width:100%;min-width:0;max-width:100%;padding:.85rem;display:grid}.trajectory-detail-title{grid-template-columns:24px minmax(0,1fr);align-items:start;gap:.55rem;display:grid}.trajectory-detail-title h3{color:var(--text);font-size:var(--t-body);font-weight:var(--w-semi);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.trajectory-detail-title p{color:var(--muted);font-family:var(--font-mono);font-size:var(--t-micro);text-overflow:ellipsis;white-space:nowrap;margin:.15rem 0 0;overflow:hidden}.trajectory-kv{grid-template-columns:minmax(0,1fr);gap:.45rem;min-width:0;margin:0;display:grid}.trajectory-kv div{grid-template-columns:88px minmax(0,1fr);align-items:baseline;gap:.55rem;display:grid}.trajectory-kv dt{color:var(--muted);font-size:var(--t-micro);font-weight:var(--w-medium)}.trajectory-kv dd{min-width:0;color:var(--text);font-size:var(--t-meta);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.trajectory-status-text{text-transform:capitalize;align-items:center;gap:.3rem;display:inline-flex}.trajectory-status-text.status-success{color:var(--ok)}.trajectory-status-text.status-error{color:var(--danger)}.trajectory-status-text.status-pending{color:var(--warn)}.trajectory-detail-block{grid-template-columns:minmax(0,1fr);gap:.35rem;width:100%;min-width:0;max-width:100%;display:grid}.trajectory-detail-block h4{color:var(--muted);font-size:var(--t-micro);font-weight:var(--w-semi);margin:0}.trajectory-detail-block pre{border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--paper-2);min-width:0;max-width:100%;max-height:260px;color:var(--ink-2);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;margin:0;padding:.65rem;font-size:12px;line-height:1.45;overflow:auto}.trajectory-detail-block.tone-error pre{border-color:color-mix(in srgb, var(--danger) 30%, var(--hairline));background:var(--danger-soft);color:#991b1b}.trajectory-detail-tools{flex-wrap:wrap;gap:.35rem;display:flex}.trajectory-mini-tool{border:1px solid var(--hairline);border-radius:var(--r-md);max-width:100%;color:var(--ink-2);font-size:var(--t-micro);text-overflow:ellipsis;white-space:nowrap;align-items:center;padding:.2rem .45rem;display:inline-flex;overflow:hidden}.trajectory-mini-tool.status-success{border-color:color-mix(in srgb, var(--ok) 24%, var(--hairline));background:var(--ok-soft)}.trajectory-mini-tool.status-error{border-color:color-mix(in srgb, var(--danger) 24%, var(--hairline));background:var(--danger-soft)}.trajectory-muted,.trajectory-error{color:var(--muted);font-size:var(--t-meta);margin:0;padding:.75rem}.trajectory-error{color:var(--danger)}.revision-overlay{z-index:80;background:#0f172a5c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.revision-modal{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);width:min(980px,100%);max-height:min(760px,100vh - 2rem);box-shadow:var(--sh-3);flex-direction:column;display:flex;overflow:hidden}.revision-head{border-bottom:1px solid var(--line);align-items:center;gap:1rem;padding:.95rem 1rem;display:flex}.revision-head>div:first-child{min-width:0;margin-right:auto}.revision-head h2{color:var(--text);font-size:1rem;font-weight:var(--w-semi);margin:0}.revision-head p{color:var(--muted);font-size:var(--t-meta);text-overflow:ellipsis;white-space:nowrap;margin:.15rem 0 0;overflow:hidden}.revision-close{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);width:2rem;height:2rem;color:var(--muted);cursor:pointer;place-items:center;display:grid}.revision-close:hover{color:var(--text)}.revision-head-actions{align-items:center;gap:.5rem;display:flex}.revision-restore{min-height:2rem;font-size:var(--t-meta);padding:0 .75rem}.revision-body{flex:1;grid-template-columns:minmax(0,1fr) 220px;min-height:0;display:grid}.revision-body.no-revisions{grid-template-columns:1fr}.revision-list{border-left:1px solid var(--line);padding:.75rem .55rem;overflow:auto}.revision-day+.revision-day{margin-top:.85rem}.revision-day h3{color:var(--muted);font-size:var(--t-meta);font-weight:var(--w-medium);margin:0 0 .35rem;padding:0 .35rem}.revision-item{border-radius:var(--radius-sm);width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;margin:0 0 .2rem;padding:.55rem .6rem;display:block}.revision-item:hover,.revision-item.is-active{border-color:var(--line);background:var(--surface)}.revision-item span{font-size:var(--t-meta);font-weight:var(--w-medium);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.revision-item em{color:var(--muted);font-size:var(--t-meta);margin-top:.2rem;font-style:normal;display:block}.revision-item small{color:var(--muted);font-size:var(--t-meta);text-overflow:ellipsis;white-space:nowrap;margin-top:.2rem;display:block;overflow:hidden}.revision-diff{background:var(--surface);min-width:0;overflow:auto}.revision-muted,.revision-error{color:var(--muted);font-size:var(--t-body);margin:0;padding:1rem}.revision-error{color:var(--danger)}.revision-document-diff{align-content:start;padding:1.2rem 1.4rem;display:grid}.diff-doc-block{min-width:0;padding:.05rem .45rem}.diff-doc-block.added{background:#14b8a61f}.diff-doc-block.removed{color:#991b1b;background:#dc262614;text-decoration:line-through;text-decoration-thickness:.08em}.diff-doc-block.changed{background:0 0}.diff-inline.added{background:#14b8a62e;border-radius:3px;padding:0 .12em}.diff-inline.removed{color:#991b1b;background:#dc26261f;border-radius:3px;padding:0 .12em;text-decoration:line-through;text-decoration-thickness:.08em}.diff-doc-block>:last-child,.diff-doc-block :where(p,ul,ol,pre,blockquote,table,h1,h2,h3,h4,h5,h6):last-child{margin-bottom:0}.diff-doc-block :where(h1,h2,h3,h4,h5,h6){margin:.35rem 0 .5rem;line-height:1.2}.diff-doc-block :where(p,ul,ol,pre,blockquote,table){margin:.45rem 0}.diff-doc-block :where(ul,ol){padding-left:1.35rem}.diff-doc-block code{background:#0000000f;border-radius:4px;padding:.1rem .25rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.diff-doc-block pre{border-radius:var(--radius-sm);background:#0000000f;padding:.75rem;overflow:auto}.diff-doc-block pre code{background:0 0;padding:0}.diff-doc-block table{border-collapse:collapse;width:100%}.diff-doc-block th,.diff-doc-block td{border:1px solid var(--line);text-align:left;padding:.35rem .45rem}@media (width<=900px){.trajectory{height:auto;min-height:100%;padding:1rem}.trajectory-head{flex-direction:column}.trajectory-stats{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.trajectory-details{max-height:520px;overflow:auto}.trajectory-node{flex-basis:220px}.trajectory-iteration-node{flex-basis:260px}.records-body{grid-template-columns:1fr}.records-resize-handle{display:none}.records-tree{max-height:280px}.records-docbar{flex-wrap:wrap;align-items:flex-start}.revision-body{grid-template-columns:1fr}.revision-list{border-left:0;border-bottom:1px solid var(--line);max-height:220px}}
