:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#0f1f3d;--muted:#64748b;--line:#e2e8f0;--surface:#fff;--panel:#f5f8fc;--accent:#0891b2;--accent-2:#7c3aed;--warning:#d97706;--error:#dc2626;--success:#059669;--brand-cyan:#05d0ff;--brand-purple:#7b2fff;--radius:8px;--radius-sm:6px;--radius-pill:999px;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", "Cascadia Mono", "Roboto Mono", monospace;--accent-grad:linear-gradient(135deg, #0891b2 0%, #7c3aed 100%);--shadow-sm:0 1px 3px #0f1f3d0a;--shadow-md:0 4px 20px #0f1f3d14;--focus-ring:0 0 0 3px #0891b226}*{box-sizing:border-box}body{background:var(--panel);color:var(--ink);-webkit-font-smoothing:antialiased;flex-direction:column;height:100vh;margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.5;display:flex;overflow:hidden}.auth-screen{background:linear-gradient(135deg,#090f1d 0%,#12213a 50%,#0c1a2e 100%);flex:1;justify-content:center;align-items:center;min-height:0;padding:24px;display:flex;overflow-y:auto}.auth-panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:18px;width:100%;max-width:380px;padding:28px 28px 24px;display:grid;box-shadow:0 20px 60px #0003}.auth-panel .logo-wrap{justify-content:center;margin-bottom:4px;display:flex}.auth-panel .logo-wrap img{width:180px;height:auto}.session-strip{border-bottom:1px solid var(--line);color:var(--muted);background:#fff;flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;min-height:34px;padding:4px 20px;font-size:12px;display:flex}.text-button{color:var(--accent-2);background:0 0;border:0;min-height:auto;padding:0;font-size:12px;font-weight:600}.text-button:disabled{color:var(--muted);cursor:not-allowed;opacity:.6}.shell{flex:1;grid-template-columns:252px 1fr;min-height:0;display:grid;overflow:hidden}.sidebar{color:#e8f0fe;background:#00041a;border-right:1px solid #ffffff0f;flex-direction:column;padding:0;display:flex;overflow-y:auto}.sidebar-logo{border-bottom:1px solid #ffffff0f;padding:20px 18px 16px}.sidebar-logo img{width:178px;height:auto;display:block}.sidebar-nav{align-content:start;gap:2px;padding:12px 10px;display:grid}.sidebar-nav a{border-radius:var(--radius-sm);color:#94a3b8;align-items:center;gap:10px;padding:9px 12px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.sidebar-nav a:hover{color:#e2e8f0;background:#ffffff0f}.sidebar-nav a.active{border-left:2px solid var(--brand-cyan);color:#fff;background:linear-gradient(90deg,#05d0ff26 0%,#7b2fff14 100%);padding-left:10px;font-weight:600}.sidebar-section-label{color:#4a5568;letter-spacing:.08em;text-transform:uppercase;margin:14px 12px 4px;font-size:10px;font-weight:700}.workspace{min-width:0;padding:28px 28px 40px;overflow-y:auto}.topbar,.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;margin-bottom:22px;display:flex}.page-eyebrow{color:var(--accent);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}h1,h2,p{margin:0}h1{letter-spacing:-.3px;font-size:22px;font-weight:700}h2{font-size:15px;font-weight:600}p{color:var(--muted);margin-top:3px;font-size:13px}button,select,input{border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit;outline:none;min-height:36px;transition:border-color .15s,box-shadow .15s}button:focus-visible,select:focus-visible,input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #0891b226}button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0891b2 0%,#0e7490 100%);border-color:#0000;padding:0 16px;font-weight:600}button:hover:not(:disabled){background:linear-gradient(135deg,#0e7490 0%,#0891b2 100%)}button:disabled{cursor:not-allowed;opacity:.5}button.secondary{background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%);border-color:#0000}button.secondary:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9 0%,#7c3aed 100%)}button.ghost{border-color:var(--line);color:var(--ink);background:0 0}button.ghost:hover:not(:disabled){background:var(--panel)}button.danger{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);border-color:#0000}.btn-sm{min-height:28px;padding:0 11px;font-size:12px;font-weight:600}.btn-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.btn-row.end{justify-content:flex-end}.btn-toggle{border-color:var(--line);color:var(--muted);background:0 0}.btn-toggle.on{background:var(--accent-grad);color:#fff;border-color:#0000}.btn-toggle:hover:not(:disabled){background:var(--panel);color:var(--ink)}.btn-toggle.on:hover:not(:disabled){color:#fff;background:linear-gradient(135deg,#0e7490 0%,#6d28d9 100%)}select,input{background:var(--surface);color:var(--ink);padding:0 10px}.grid{grid-template-columns:minmax(280px,360px) 1fr;gap:20px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 1px 3px #0000000a}.panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:14px;display:flex}.panel-header .page-actions{margin-left:auto}.panel-subtitle{color:var(--muted);margin-top:3px;font-size:12.5px}.page-stack{gap:16px;display:grid}.mono{font-family:var(--font-mono);font-size:12px}.muted{color:var(--muted)}.error{color:var(--error)}.muted-sm{color:var(--muted);font-size:12px}.cell-id{color:var(--muted);font-family:var(--font-mono);font-size:12px}.id-link{color:var(--accent-2);font-family:var(--font-mono);font-size:12px;font-weight:600;text-decoration:none}.id-link:hover{text-decoration:underline}.empty-cell{color:var(--muted);text-align:center;padding:22px 8px}.form-error{color:var(--error);font-size:12px}.form-hint{color:var(--muted);font-size:11px;line-height:1.4}.form-card{gap:14px;max-width:480px;display:grid}.form-card textarea.mono{resize:vertical}.positive{color:var(--success);font-weight:600}.negative{color:var(--error);font-weight:600}.timesheet-accordion{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.timesheet-accordion-item+.timesheet-accordion-item{border-top:1px solid var(--line)}.timesheet-accordion-trigger{cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;grid-template-columns:24px minmax(140px,1.4fr) repeat(3,minmax(64px,.7fr)) minmax(120px,1fr);align-items:center;gap:10px 14px;width:100%;padding:12px 14px;display:grid}.timesheet-accordion-trigger:hover{background:#00000008}.timesheet-accordion-trigger-nested{grid-template-columns:24px minmax(120px,1.2fr) repeat(3,minmax(64px,.7fr)) minmax(120px,1fr);padding-left:28px}.timesheet-accordion-chevron{color:var(--muted);text-align:center;font-size:12px}.timesheet-accordion-panel{border-top:1px solid var(--line);background:#00000005}.timesheet-accordion-entries{padding:0 14px 14px 42px}.timesheet-accordion-entries .velocity-table th,.timesheet-accordion-entries .velocity-table td{padding:8px 6px;font-size:12px}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--line);text-align:left;padding:10px 8px;font-size:13px}th{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:600}tr:last-child td{border-bottom:none}tr:hover td{background:#0891b205}.badge{border-radius:var(--radius-pill);letter-spacing:.02em;padding:3px 9px;font-size:11px;font-weight:600;display:inline-block}.awaiting_approval{color:#92400e;background:#fef3c7}.succeeded{color:var(--success);background:#d1fae5}.dry_run_running,.dry_run_queued,.apply_queued,.apply_running{color:#0369a1;background:#e0f2fe}.failed{color:var(--error);background:#fee2e2}.cancelled{color:var(--muted);background:#f1f5f9}.draft{color:var(--muted);background:#f8fafc}.trigger-scheduled{color:#6d28d9;background:#ede9fe}.trigger-manual{color:#475569;background:#f1f5f9}.client{color:var(--success);background:#d1fae5}.internal{color:#0369a1;background:#e0f2fe}.restricted{color:var(--error);background:#fee2e2}.alert{border-radius:var(--radius-sm);border:1px solid;flex-wrap:wrap;gap:8px 12px;padding:11px 14px;font-size:13px;display:flex}.alert.error{color:#991b1b;background:#fff5f5;border-color:#fecaca}.alert.error a,.recovery-links a{color:var(--error);font-weight:600}.markdown-preview{color:var(--ink);overflow-wrap:anywhere;line-height:1.6}.markdown-preview>:first-child{margin-top:0}.markdown-preview>:last-child{margin-bottom:0}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4{margin:20px 0 8px}.markdown-preview h1{font-size:20px}.markdown-preview h2{font-size:17px}.markdown-preview h3,.markdown-preview h4{font-size:14px}.markdown-preview p{color:var(--ink);margin:8px 0}.markdown-preview ul,.markdown-preview ol{margin:8px 0;padding-left:24px}.markdown-preview li{margin:4px 0}.markdown-preview blockquote{border-left:3px solid var(--line);color:var(--muted);margin:12px 0;padding-left:12px}.markdown-preview code{background:#f1f5f9;border-radius:4px;padding:2px 5px;font-family:ui-monospace,SF Mono,Cascadia Mono,monospace;font-size:.875em}.markdown-preview pre{border-radius:var(--radius-sm);color:#e2e8f0;background:#0f1f3d;padding:14px 16px;overflow-x:auto}.markdown-preview pre code{color:inherit;background:0 0;padding:0}.markdown-preview a{color:var(--accent)}.markdown-preview.compact h1,.markdown-preview.compact h2,.markdown-preview.compact h3,.markdown-preview.compact h4{margin-top:12px}.action-panel{gap:14px;display:grid}.launcher{gap:20px;padding:22px;display:grid}.launcher-heading,.launcher-footer,.section-heading,.action-summary{justify-content:space-between;align-items:center;gap:16px;display:flex}.launcher-heading h2{font-size:18px}.mode-badge{border-radius:var(--radius-pill);letter-spacing:.05em;text-transform:uppercase;flex:none;padding:5px 11px;font-size:11px;font-weight:700}.mode-badge.preview{color:#92400e;background:#fef3c7}.mode-badge.direct{color:#6d28d9;background:#ede9fe}.launcher-selectors{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.launcher select,.launcher input{background:var(--surface);width:100%;padding:0 10px}.action-summary{border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc;padding:12px 14px}.action-summary p{font-size:13px;line-height:1.5}.action-flags{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:5px;display:flex}.action-flags span{border-radius:var(--radius-pill);color:#6d28d9;background:#ede9fe;padding:3px 8px;font-size:11px;font-weight:600}.launcher-body{grid-template-columns:minmax(0,1fr) minmax(250px,310px);align-items:start;gap:20px;display:grid}.section-heading{align-items:start;margin-bottom:14px}.section-heading h3,.readiness-card h3{margin:0;font-size:13px;font-weight:600}.section-heading p,.readiness-card p{font-size:12px;line-height:1.5}.muted-status,.permission-note{color:var(--muted);font-size:12px}.input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.input-field{align-content:start;gap:5px;display:grid}.input-label{color:var(--ink);font-size:13px;font-weight:600}.required-mark{color:var(--error);margin-left:3px}.field-help,.field-error{font-size:11px;line-height:1.4}.field-help{color:var(--muted)}.field-error{color:var(--error)}.input-field.has-error input,.input-field.has-error select,.input-field.has-error textarea{border-color:var(--error)}.empty-state{background:var(--panel);border:1px dashed var(--line);border-radius:var(--radius-sm);color:var(--muted);text-align:center;padding:20px;font-size:13px}.readiness-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);gap:10px;padding:14px;display:grid}.readiness-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-top:10px;font-size:12px;display:flex}.readiness-status{border-radius:var(--radius-pill);text-transform:capitalize;padding:3px 8px;font-size:11px;font-weight:700}.readiness-status.ready{color:var(--success);background:#d1fae5}.readiness-status.attention{color:#92400e;background:#fef3c7}.missing-bindings{flex-wrap:wrap;gap:4px;display:flex}.missing-bindings code{color:var(--error);background:#fee2e2;border-radius:4px;padding:2px 5px;font-family:ui-monospace,monospace;font-size:10px}.recovery-links{gap:6px;display:grid}.recovery-links a{font-size:12px;font-weight:600}.launcher-footer{border-top:1px solid var(--line);padding-top:16px}.launcher-footer p{font-size:12px;line-height:1.5}.launcher-footer button{flex:none;min-width:150px}.runs-section,.dashboard-load-error{margin-top:16px}.anchored-panel{scroll-margin-top:16px}.checkbox-label{align-items:center;gap:8px;display:flex}.checkbox-label input{min-height:auto}label{color:var(--muted);gap:5px;font-size:13px;display:grid}textarea{border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit;width:100%;padding:8px 10px}textarea:focus-visible{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #0891b226}@media (max-width:680px){.shell{grid-template-rows:auto 1fr;grid-template-columns:1fr;overflow:visible}.grid{grid-template-columns:1fr}.sidebar{z-index:20;border-bottom:1px solid #ffffff0f;border-right:none;flex-flow:wrap;padding:0;position:sticky;top:0;overflow-y:visible}.workspace{overflow-y:auto}.sidebar-logo{border-bottom:none;border-right:1px solid #ffffff0f;padding:10px 16px}.sidebar-logo img{width:130px}.sidebar-nav{flex:1;grid-template-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;align-content:center;gap:4px;padding:8px}.sidebar-nav a{justify-content:center;padding:8px 6px;font-size:12px}.sidebar-section-label{display:none}.topbar{flex-wrap:wrap;gap:12px}table{white-space:nowrap;display:block;overflow-x:auto}h1{font-size:19px}.launcher-body{grid-template-columns:1fr}}@media (max-width:480px){.workspace{padding:16px}.launcher-heading,.launcher-footer,.action-summary{flex-direction:column;align-items:stretch}.mode-badge{align-self:flex-start}.launcher-selectors,.input-grid{grid-template-columns:1fr}.action-flags{justify-content:flex-start}.launcher-footer button{width:100%}}.velocity-item-heading{align-items:baseline;gap:.75rem;width:100%;display:flex}.velocity-evidence{color:var(--muted);margin-top:.35rem;font-size:.8rem;line-height:1.45}.velocity-badge{border-radius:var(--radius-pill);color:#92400e;text-transform:uppercase;border:1px solid #d69e2e;margin-right:.5rem;padding:.1rem .4rem;font-size:.7rem;font-weight:700;display:inline-block}.provisional-badge{color:#374151;vertical-align:middle;border-color:#6b7280;margin-left:.4rem}.estimate-suggestion{border-left:3px solid var(--accent-2);color:inherit;background:#7c3aed0f;margin-top:.35rem;padding:.45rem .6rem}.velocity-warning{color:var(--warning);margin-top:.3rem;font-weight:700}.sub-item-rollup{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);margin-top:.4rem;padding:.45rem .6rem}.sub-item-details{margin-top:.5rem}.sub-item-details summary{cursor:pointer;font-weight:600}.sub-item-tree{margin:.4rem 0 0;padding-left:1.25rem}.sub-item-tree li{margin:.35rem 0}.sub-item-row{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.flow-evidence{background:color-mix(in srgb, var(--surface) 92%, #05d0ff 8%);border:1px solid var(--line);border-radius:.45rem;gap:.25rem;margin-top:.55rem;padding:.65rem .75rem;display:grid}.flow-evidence.unavailable{background:var(--surface);color:var(--muted)}.flow-evidence .velocity-badge{margin-left:.45rem}.flow-forecast{border-top:1px solid var(--line);margin-top:.35rem;padding-top:.45rem}.status-residence-list{margin:.4rem 0 0;padding-left:1.2rem}.scope-summary{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);gap:.35rem;margin-bottom:.75rem;padding:.85rem 1rem;display:grid}.velocity-page{gap:28px;display:grid}.velocity-page .page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;margin-bottom:0;display:flex}.velocity-page .page-controls select{min-width:180px}.velocity-nav{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);z-index:4;flex-wrap:wrap;gap:4px;padding:4px;display:flex;position:sticky;top:0}.velocity-nav a{border-radius:var(--radius-sm);color:var(--muted);padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s,color .15s}.velocity-nav a:hover{background:var(--panel);color:var(--ink)}.velocity-nav button{border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;background:0 0;border:none;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s,color .15s}.velocity-nav button:hover,.velocity-nav button.active{background:var(--panel);color:var(--ink)}.velocity-nav-badge{background:color-mix(in srgb, var(--warning) 18%, var(--surface));border:1px solid color-mix(in srgb, var(--warning) 35%, var(--line));border-radius:var(--radius-pill);color:var(--ink);margin-left:6px;padding:1px 7px;font-size:11px;font-weight:700}.velocity-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:16px;padding:20px 22px 22px;scroll-margin-top:72px;display:grid;box-shadow:0 1px 3px #0000000a}.velocity-section-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;display:flex}.velocity-section h2{letter-spacing:-.2px;font-size:17px;font-weight:700}.velocity-section h4{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:700}.forecast-meta{margin-top:-6px;font-size:12.5px}.sprint-chip-row{flex-wrap:wrap;gap:6px;display:flex}.sprint-chip{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--ink);cursor:pointer;align-items:center;gap:6px;padding:5px 12px;font-family:inherit;font-size:12px;font-weight:600;transition:border-color .15s,background .15s,box-shadow .15s;display:inline-flex}.sprint-chip:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--line))}.sprint-chip.active{border-color:var(--accent);background:linear-gradient(135deg,#05d0ff1f 0%,#7b2fff14 100%);box-shadow:0 0 0 1px #0891b226}.chip-dot{background:var(--warning);border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.kpi-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);gap:4px;min-width:0;padding:14px 16px;display:grid}.kpi-value{color:var(--ink);letter-spacing:-.4px;font-size:22px;font-weight:700;line-height:1.15}.kpi-value.kpi-warn{color:var(--warning)}.kpi-denominator{color:var(--muted);font-size:14px;font-weight:500}.kpi-label{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:700}.kpi-sub{color:var(--muted);font-size:12px;line-height:1.4}.kpi-bar{background:var(--line);border-radius:var(--radius-pill);height:5px;margin:6px 0 4px;overflow:hidden}.kpi-bar-fill{background:linear-gradient(90deg, var(--accent) 0%, var(--brand-cyan) 100%);border-radius:var(--radius-pill);min-width:2px;height:100%;transition:width .3s}.insight-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.insight-toolbar-title{margin:0}.insight-filters{flex-wrap:wrap;gap:6px;display:flex}.insight-filter{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--muted);cursor:pointer;padding:5px 11px;font-family:inherit;font-size:12px;font-weight:600;transition:border-color .15s,color .15s,background .15s}.insight-filter:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));color:var(--ink)}.insight-filter.active{background:var(--ink);border-color:var(--ink);color:#fff}.insight-filter.warn.active{background:#b45309;border-color:#b45309}.insight-list{gap:8px;display:grid}.insight{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;text-align:left;border-left-width:3px;gap:4px;width:100%;padding:10px 12px;transition:border-color .15s,box-shadow .15s,transform .1s;display:grid}.insight:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0f1f3d0f}.insight.warn{border-left-color:var(--warning)}.insight.info{border-left-color:var(--accent)}.insight.good{border-left-color:var(--success)}.insight-cat{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:700}.insight-text{color:var(--ink);font-size:13px;line-height:1.45}.contributor-strip{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.contributor-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;text-align:left;gap:6px;width:100%;padding:12px 14px;transition:border-color .15s,box-shadow .15s;display:grid}.contributor-card:hover{border-color:var(--accent);box-shadow:0 2px 10px #0891b214}.contributor-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px #0891b233}.contributor-card strong{font-size:14px}.contributor-card .contributor-pts{color:var(--accent);font-size:18px;font-weight:700}.contributor-card .contributor-meta{color:var(--muted);font-size:12px}.velocity-layout{gap:0;scroll-margin-top:72px;display:grid}.velocity-layout.with-detail{grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:16px}.velocity-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:auto;box-shadow:0 1px 3px #0000000a}.velocity-table{min-width:640px}.velocity-table th,.velocity-table td{vertical-align:top}.velocity-table thead th{background:var(--panel);z-index:2;position:sticky;top:0}.velocity-table .user-cell{background:var(--surface);z-index:3;min-width:120px;font-weight:600;position:sticky;left:0}.velocity-table thead .user-cell{background:var(--panel);z-index:4}.sprint-header{cursor:pointer;text-transform:none;min-width:108px;transition:background .15s}.sprint-header:hover{background:#0891b20f}.sprint-header.selected{box-shadow:inset 0 -2px 0 var(--accent);background:#0891b21a}.sprint-header>div:first-child{color:var(--ink);letter-spacing:0;text-transform:none;font-size:13px;font-weight:700}.sprint-dates,.sprint-scope-hint{letter-spacing:0;text-transform:none;margin-top:3px;font-size:11px;font-weight:400}.velocity-cell{cursor:default;text-align:center;min-width:96px;transition:background .12s,box-shadow .12s}.velocity-cell.has-data{cursor:pointer}.velocity-cell.has-data:hover{background:#0891b20f}.velocity-cell.selected{box-shadow:inset 0 0 0 2px var(--accent);background:#0891b21f}.velocity-cell.heat{background:color-mix(in srgb, #05d0ff38 calc(var(--cell-intensity,0) * 100%), var(--surface) calc(100% - var(--cell-intensity,0) * 100%))}.completed-pts{color:var(--ink);font-size:14px;font-weight:700}.cell-sub{margin-top:2px;font-size:11px}.partial-pts{color:var(--warning)}.velocity-totals-row td{background:var(--panel);border-top:2px solid var(--line);font-weight:600}.velocity-totals-row .totals-cell{text-align:center}.velocity-detail{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;max-height:calc(100vh - 120px);display:flex;position:sticky;top:72px;overflow:hidden;box-shadow:0 4px 20px #0f1f3d14}.detail-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.detail-header strong{font-size:15px}.close-btn,.expand-toggle{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;flex-shrink:0;padding:5px 9px;font-family:inherit;font-size:12px;line-height:1;transition:border-color .15s,color .15s}.close-btn:hover,.expand-toggle:hover{border-color:var(--accent);color:var(--ink)}.detail-scroll{flex:1;gap:0;min-height:0;padding:12px 16px 16px;display:grid;overflow-y:auto}.detail-chips{flex-wrap:wrap;gap:6px;margin:12px 0 14px;display:flex}.chip{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-pill);padding:4px 10px;font-size:12px;font-weight:600}.chip-strong{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));color:var(--ink);background:linear-gradient(135deg,#05d0ff24 0%,#7b2fff1a 100%)}.contributor-grid{gap:8px;margin:12px 0 16px;display:grid}.contributor-grid h4{grid-column:1/-1}.item-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.item-list>li{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px}.item-name{flex:1;min-width:0;font-weight:600}.item-pts{color:var(--success);flex-shrink:0;font-size:13px;font-weight:700}.item-status{text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:40%;font-size:12px;overflow:hidden}.evidence-details{margin-top:.4rem}.evidence-details summary{color:var(--accent);cursor:pointer;font-size:12px;font-weight:600}.rollover-context{margin-top:.25rem;font-size:12px}.forecast-section .velocity-table-wrap{margin-top:4px}.forecast-row{cursor:pointer}.forecast-row:hover td{background:#0891b20a}.forecast-expand td{background:var(--panel);padding:12px 16px 16px}.forecast-expand .item-list>li{background:var(--surface)}.velocity-hint{color:var(--muted);margin:0;font-size:12.5px}@media (max-width:1100px){.velocity-layout.with-detail{grid-template-columns:1fr}.velocity-detail{max-height:none;position:static}}@media (max-width:640px){.velocity-section{padding:16px}.kpi-value{font-size:19px}.contributor-strip{grid-template-columns:1fr}}.work-item-picker{grid-column:1/-1}.work-item-chips{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.work-item-chip{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--ink);align-items:center;gap:6px;max-width:100%;padding:3px 4px 3px 10px;font-size:12px;display:inline-flex}.work-item-chip-label{text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.work-item-chip button{color:var(--muted);cursor:pointer;border-radius:var(--radius-pill);background:0 0;border:none;padding:2px 6px;font-size:14px;line-height:1}.work-item-chip button:hover{color:var(--error);background:var(--surface)}.work-item-toolbar{justify-content:space-between;align-items:center;gap:8px;margin:6px 0;display:flex}.work-item-toolbar-actions{gap:12px;display:flex}.link-button{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.link-button:hover{text-decoration:underline}.work-item-list{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);max-height:260px;overflow-y:auto}.work-item-row{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:7px 10px;font-size:13px;display:grid}.work-item-row:last-child{border-bottom:none}.work-item-row:hover{background:var(--panel)}.work-item-name{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);overflow:hidden}.work-item-meta{align-items:center;gap:6px;display:inline-flex}.work-item-badge{border-radius:var(--radius-pill);background:var(--panel);border:1px solid var(--line);color:var(--muted);white-space:nowrap;padding:1px 7px;font-size:11px}.work-item-id{color:var(--muted);font-size:11px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
