@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{color-scheme:light;--bg: #f5f8fa;--surface: #ffffff;--surface-2: #f5f8fa;--surface-3: #eaf0f6;--text: #22364a;--text-muted: #55697d;--text-faint: #64798e;--border: #cbd6e2;--border-strong: #7c98b6;--accent: #7d6229;--accent-hover: #6f5724;--accent-soft: #f6efe1;--accent-border: #d9c69a;--on-accent: #ffffff;--focus: #7d6229;--danger-bg: #fdeceb;--danger-border: #b3261e;--danger-text: #8c1d18;--status-complete: #15803d;--status-active: #1257a0;--status-at-risk: #8a5000;--status-blocked: #b3261e;--status-idle: #55697d;--tint-complete: #e8f5ec;--tint-active: #e7f0f9;--tint-at-risk: #fbf0dd;--tint-blocked: #fdeceb;--tint-idle: #eef2f6;--radius-sm: 3px;--radius: 4px;--radius-lg: 6px;--radius-pill: 999px;--shadow-0: none;--shadow-1: 0 2px 8px rgba(34, 54, 74, .12);--shadow-2: 0 8px 24px rgba(34, 54, 74, .18);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 48px;--control-h: 36px;--control-h-sm: 28px;--touch-target: 44px;--row-y: 8px;--row-x: 12px;--page-max: 1440px;--rail-w: 224px;--rail-w-collapsed: 56px;--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "Cascadia Mono", Menlo, monospace;--ease: cubic-bezier(.2, 0, 0, 1);--motion-fast: .1s;--motion: .15s;--motion-slow: .2s}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #0d0f13;--surface: #14171d;--surface-2: #1a1e26;--surface-3: #232833;--text: #eceef2;--text-muted: #98a1b2;--text-faint: #8b96a6;--border: #252a34;--border-strong: #333a47;--accent: #c9a86a;--accent-hover: #d8bb84;--accent-soft: #2a2418;--accent-border: #6b5730;--on-accent: #1a1408;--focus: #c9a86a;--danger-bg: #3a1a18;--danger-border: #f2b8b5;--danger-text: #f2b8b5;--status-complete: #4ade80;--status-active: #7ab8f5;--status-at-risk: #e8b45c;--status-blocked: #f2b8b5;--status-idle: #a4b3c2;--tint-complete: #12301d;--tint-active: #142738;--tint-at-risk: #33280f;--tint-blocked: #3a1a18;--tint-idle: #222a33;--shadow-0: none;--shadow-1: 0 2px 8px rgba(0, 0, 0, .5);--shadow-2: 0 8px 24px rgba(0, 0, 0, .65)}}:root[data-theme=dark]{color-scheme:dark;--bg: #0d0f13;--surface: #14171d;--surface-2: #1a1e26;--surface-3: #232833;--text: #eceef2;--text-muted: #98a1b2;--text-faint: #8b96a6;--border: #252a34;--border-strong: #333a47;--accent: #c9a86a;--accent-hover: #d8bb84;--accent-soft: #2a2418;--accent-border: #6b5730;--on-accent: #1a1408;--focus: #c9a86a;--danger-bg: #3a1a18;--danger-border: #f2b8b5;--danger-text: #f2b8b5;--status-complete: #4ade80;--status-active: #7ab8f5;--status-at-risk: #e8b45c;--status-blocked: #f2b8b5;--status-idle: #a4b3c2;--tint-complete: #12301d;--tint-active: #142738;--tint-at-risk: #33280f;--tint-blocked: #3a1a18;--tint-idle: #222a33;--shadow-0: none;--shadow-1: 0 2px 8px rgba(0, 0, 0, .5);--shadow-2: 0 8px 24px rgba(0, 0, 0, .65)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--text-md);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{letter-spacing:-.011em}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.auth-shell{min-height:100dvh;display:grid;place-items:center;padding:var(--space-6) var(--space-4);background:radial-gradient(1200px 600px at 50% -10%,var(--surface-2),transparent 70%),var(--bg)}.card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);padding:var(--space-7) var(--space-6)}.brand{margin:0 0 var(--space-1);font-size:var(--text-2xl);font-weight:680;letter-spacing:-.02em}.brand-sub{margin:0 0 var(--space-7);color:var(--text-muted);font-size:var(--text-base)}.field{margin-bottom:var(--space-4)}.field label{display:block;margin-bottom:var(--space-1);font-size:var(--text-base);font-weight:560;color:var(--text)}.field input,.field select,.field textarea{width:100%;min-height:44px;padding:10px var(--space-3);font-size:var(--text-md);font-family:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);transition:border-color .12s ease,box-shadow .12s ease}.field input:hover:not(:disabled),.field select:hover:not(:disabled),.field textarea:hover:not(:disabled){border-color:var(--accent)}.field input:disabled,.field select:disabled,.field textarea:disabled{background:var(--surface-2);color:var(--text-muted)}.field input[aria-invalid=true]{border-color:var(--danger-border)}button{width:100%;min-height:44px;padding:var(--space-3) var(--space-4);font-size:var(--text-md);font-weight:600;font-family:inherit;color:var(--on-accent);background:var(--accent);border:1px solid transparent;border-radius:var(--radius);box-shadow:var(--shadow-1);cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease,transform 60ms ease}button:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-2)}button:active:not(:disabled){transform:translateY(1px);box-shadow:var(--shadow-1)}button:disabled{opacity:.55;box-shadow:none;cursor:not-allowed}button.secondary{color:var(--text);background:var(--surface);border-color:var(--border-strong)}button.secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--accent)}.alert{display:flex;gap:var(--space-3);align-items:flex-start;margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4);font-size:var(--text-base);color:var(--danger-text);background:var(--danger-bg);border:1px solid var(--danger-border);border-inline-start-width:4px;border-radius:var(--radius)}.alert:before{content:"!";flex:0 0 20px;height:20px;font-weight:700;line-height:20px;text-align:center;border:2px solid currentColor;border-radius:50%}.alert.is-caution{color:var(--text);background:var(--surface-2);border-color:var(--border);border-inline-start-color:var(--accent)}.alert .request-id{display:block;margin-top:var(--space-1);font-family:var(--font-mono);font-size:var(--text-xs);opacity:.85}.brand{display:flex;align-items:baseline;gap:var(--space-2)}.brand svg{align-self:center;flex:none}.app-bar h1{margin:0;font-size:var(--text-lg);font-weight:660;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.app-bar button{width:auto;min-width:96px}.detail-grid{display:grid;grid-template-columns:minmax(140px,max-content) 1fr;gap:var(--space-3) var(--space-5);margin:0;padding:var(--space-4) var(--space-5);font-size:var(--text-base);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1)}.detail-grid dt{color:var(--text-muted)}.detail-grid dd{margin:0;font-weight:550;overflow-wrap:anywhere}.note{margin-top:var(--space-7);padding:var(--space-4);font-size:var(--text-base);color:var(--text-muted);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;transform:none!important;scroll-behavior:auto!important}}.section-head{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);align-items:center;margin-bottom:var(--space-4)}.section-head>:first-child{margin-inline-end:auto}.section-head h2{margin:0;font-size:var(--text-xl);font-weight:650}button.inline{width:auto;min-width:0;padding:10px var(--space-4);font-size:var(--text-base)}.button-row{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.button-row button{width:auto;min-width:140px}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0 var(--space-5);align-items:start}.hint{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--text-muted)}.empty{padding:var(--space-7) var(--space-6);text-align:center;background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius-lg)}.empty p{margin:0 0 var(--space-2)}.empty p:first-child{font-size:var(--text-lg)}.grid{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-base);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.grid th,.grid td{padding:var(--space-3) var(--space-5);text-align:start;vertical-align:top}.grid tbody tr:not(:last-child)>td,.grid tbody tr:not(:last-child)>th{border-bottom:1px solid var(--border)}.grid thead th{position:sticky;top:0;z-index:1;padding-top:var(--space-2);padding-bottom:var(--space-2);font-size:var(--text-sm);font-weight:560;color:var(--text-muted);background:var(--surface-2);letter-spacing:0;box-shadow:inset 0 -1px 0 var(--border)}.grid th,.grid td{overflow-wrap:break-word}.grid tbody tr:not(.dwg-overdue,.sla-overdue,.sla-red,.risk-red,.snag-overdue,.ins-failed,.diary-missing,.editing,.is-focused):hover{background:var(--surface-2)}.grid tbody th[scope=row]{font-weight:550;text-align:start}.mono{font-family:var(--font-mono);font-size:.95em}@media (max-width: 620px){.grid{display:block;overflow-x:auto;white-space:nowrap}.grid thead th{position:static}.page{padding:var(--space-4) var(--space-3) var(--space-8)}.app-bar{flex-wrap:wrap;padding:var(--space-2) var(--space-3)}}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--accent-hover)}.breadcrumb{margin:0 0 var(--space-2);font-size:var(--text-base)}.breadcrumb a{display:inline-block;padding-block:var(--space-3);padding-inline:0 var(--space-2);font-weight:550;text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.sub-head{margin:var(--space-7) 0 var(--space-3);font-size:var(--text-lg);font-weight:640;color:var(--text);letter-spacing:-.011em}h4.sub-head{margin-top:var(--space-6);font-size:var(--text-base);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.lifecycle{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none;counter-reset:stage}.stage{display:grid;grid-template-columns:22px 1fr;gap:var(--space-1) var(--space-2);padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-inline-start:4px solid var(--status-idle);border-radius:var(--radius);box-shadow:var(--shadow-1)}.stage-symbol{grid-row:span 2;align-self:center;font-size:var(--text-md);line-height:1;color:var(--status-idle)}.stage-name{font-size:var(--text-base);font-weight:620}.stage-status{font-size:var(--text-sm);color:var(--text-muted)}.stage-overridden{grid-column:2;justify-self:start;margin-top:var(--space-1);padding:1px var(--space-2);font-size:var(--text-xs);font-weight:650;color:var(--status-at-risk);background:var(--tint-at-risk);border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.04em}.stage-complete{border-inline-start-color:var(--status-complete)}.stage-complete .stage-symbol{color:var(--status-complete)}.stage-active{border-inline-start-color:var(--status-active);background:var(--tint-active)}.stage-active .stage-symbol{color:var(--status-active)}.stage-at_risk{border-inline-start-color:var(--status-at-risk);background:var(--tint-at-risk)}.stage-at_risk .stage-symbol{color:var(--status-at-risk)}.stage-blocked{border-inline-start-color:var(--status-blocked);background:var(--tint-blocked)}.stage-blocked .stage-symbol{color:var(--status-blocked)}.sub-head-row{align-items:baseline;margin-bottom:var(--space-3)}.sub-head-row .sub-head{margin:var(--space-7) 0 0}.panel{margin-bottom:var(--space-4);padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2)}.panel p{margin:0 0 var(--space-3)}.panel .field:last-of-type{margin-bottom:var(--space-3)}.check{display:flex;gap:var(--space-3);align-items:flex-start;margin-bottom:var(--space-4)}.check input{flex:0 0 auto;width:20px;height:20px;margin:var(--space-3) 0;accent-color:var(--accent)}.check label{padding:var(--space-3) 0;font-size:var(--text-base)}.check .hint{display:block;max-width:46ch}.check.compact{margin:0}.check.compact label{font-size:var(--text-sm)}.check input:disabled,.check input:disabled+label{opacity:.55}.row-actions{white-space:normal}.row-actions>*{white-space:nowrap}button.link-button{width:auto;min-width:0;min-height:44px;padding:11px var(--space-2);font-size:var(--text-base);font-weight:560;color:var(--accent);background:none;border:none;border-radius:var(--radius-sm);box-shadow:none;text-decoration:underline;text-underline-offset:2px}button.link-button:hover:not(:disabled){color:var(--accent-hover);background:var(--accent-soft);box-shadow:none}button.link-button.danger{color:var(--status-blocked)}button.link-button.danger:hover:not(:disabled){background:var(--tint-blocked)}.grid tr.editing{background:var(--accent-soft)}.app-nav{display:flex;gap:var(--space-1);margin-inline-end:auto;margin-inline-start:var(--space-3);position:relative;overflow-x:auto;scrollbar-width:none;min-width:0}.app-nav::-webkit-scrollbar{display:none}.invite-link{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);font-family:var(--font-mono);font-size:var(--text-sm);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);overflow-wrap:anywhere}.lifecycle:has(.stage-actions){grid-template-columns:1fr}.stage-actions{grid-column:2;display:flex;flex-wrap:wrap;gap:2px var(--space-3);margin-top:2px}.stage-reason{grid-column:1 / -1;margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.stage-reason label{display:block;margin-bottom:var(--space-1);font-size:var(--text-base);font-weight:560}.stage-reason textarea{width:100%;padding:10px var(--space-3);font-family:inherit;font-size:var(--text-md);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);resize:vertical}.stage-gate{grid-column:1 / -1;margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.gate-list{margin:0;padding:0;list-style:none}.gate-item{display:flex;gap:var(--space-2);align-items:baseline;padding:var(--space-1) 0;font-size:var(--text-base)}.gate-mark{flex:0 0 14px;font-weight:700}.gate-satisfied .gate-mark{color:var(--status-complete)}.gate-unsatisfied{color:var(--status-blocked);font-weight:560}.gate-not_checkable{color:var(--text-muted)}.gate-go{display:inline-flex;align-items:center;min-height:24px;margin-inline-start:var(--space-2);font-size:var(--text-sm);font-weight:560;white-space:nowrap}.filter-group{display:inline-flex;gap:var(--space-1);padding:var(--space-1);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-pill)}button.chip-button{width:auto;min-width:0;min-height:40px;padding:var(--space-2) var(--space-4);font-size:var(--text-base);font-weight:560;color:var(--text-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-pill);box-shadow:none}button.chip-button:hover:not(:disabled){color:var(--text);background:var(--surface)}button.chip-button.current{color:var(--on-accent);background:var(--accent);border-color:var(--accent);box-shadow:var(--shadow-1)}.task-list{margin:0;padding:0;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);overflow:hidden}.task-row{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);align-items:flex-start;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);border-inline-start:4px solid transparent;transition:background-color .12s ease}.task-row:hover{background:var(--surface-2)}.task-row:last-child{border-bottom:none}.task-todo{border-inline-start-color:var(--status-idle)}.task-in_progress{border-inline-start-color:var(--status-active)}.task-blocked{border-inline-start-color:var(--status-blocked)}.task-done{border-inline-start-color:var(--status-complete)}.task-cancelled{border-inline-start-color:var(--border)}.task-done .task-title,.task-cancelled .task-title{color:var(--text-muted);text-decoration:line-through}.task-main{display:flex;flex-direction:column;gap:3px;flex:1 1 260px;min-width:0}.task-title{font-size:15px;font-weight:550}.task-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px;color:var(--text-muted)}.task-description{font-size:13px;color:var(--text-muted);overflow-wrap:anywhere}.task-overdue{font-weight:650;color:var(--status-blocked)}.task-meta a{display:inline-block;min-height:24px;padding:2px 0}.chip-priority-critical{color:var(--status-blocked);border-color:var(--status-blocked)}.chip-priority-high{color:var(--status-at-risk);border-color:var(--status-at-risk)}.chip-priority-normal,.chip-priority-low{color:var(--text-muted)}.nav-badge{display:inline-block;min-width:20px;margin-inline-start:var(--space-1);padding:1px var(--space-2);font-size:var(--text-xs);font-weight:700;line-height:18px;text-align:center;color:var(--on-accent);background:var(--status-blocked);border-radius:var(--radius-pill)}.notif.is-read .task-title{font-weight:400;color:var(--text-muted)}.notif.sev-urgent{border-inline-start-color:var(--status-blocked)}.notif.sev-warning{border-inline-start-color:var(--status-at-risk)}.notif.sev-info{border-inline-start-color:var(--status-active)}.notif.is-read{border-inline-start-color:var(--border)}.unread-dot{padding:1px 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--status-blocked);border:1px solid currentColor;border-radius:999px}.blocker-list{flex:1 1 100%;order:3;margin:4px 0 0;padding:0;list-style:none}.blocker{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;padding:8px 10px;margin-top:4px;font-size:13px;background:var(--bg);border:1px solid var(--border);border-inline-start:3px solid var(--status-idle);border-radius:var(--radius)}.blocker-why{flex:1 1 240px;overflow-wrap:anywhere}.blocker-age{color:var(--text-muted)}.blocker button{margin-inline-start:auto}.sev-critical{border-inline-start-color:var(--status-blocked)}.sev-high{border-inline-start-color:var(--status-at-risk)}.blocker-form{flex:1 1 100%;order:4;margin:8px 0 0}.comments{flex:1 1 100%;order:5;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.comment-list{margin:0 0 12px;padding:0;list-style:none}.comment{display:flex;flex-direction:column;gap:3px;padding:8px 10px;margin-bottom:6px;font-size:14px;background:var(--bg);border:1px solid var(--border);border-inline-start:3px solid var(--border);border-radius:var(--radius)}.vis-internal{border-inline-start-color:var(--status-at-risk)}.vis-shared{border-inline-start-color:var(--status-active)}.comment-head{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;font-size:13px}.comment-when{color:var(--text-muted)}.vis-badge{padding:1px 8px;font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.03em;border:1px solid currentColor;border-radius:999px}.vis-badge.internal{color:var(--status-at-risk)}.vis-badge.shared{color:var(--status-active)}.comment-body{white-space:pre-wrap;overflow-wrap:anywhere}.comment textarea,.comment-compose textarea{width:100%;padding:8px 10px;font-family:inherit;font-size:16px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);resize:vertical}.compose-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.compose-actions .inline{margin-inline-start:auto}.task-row.editing{display:block;padding:0;background:var(--bg)}.task-row.editing .panel{margin:0;border:none;background:transparent}.task-row .row-actions{margin-inline-start:auto}.head-actions{display:flex;flex-wrap:wrap;gap:8px}.panel-title{margin:0 0 16px;font-weight:600}.panel code{padding:1px 4px;font-size:13px;background:var(--bg);border:1px solid var(--border);border-radius:4px}.tree{margin:0;padding:0;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);overflow:hidden}.tree-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:6px;padding-bottom:6px;padding-inline-end:12px;border-bottom:1px solid var(--border)}.tree-row:last-child{border-bottom:none}.tree-row.editing{background:var(--bg)}.tree-name{font-size:15px;font-weight:550}.tree-code{font-size:13px;color:var(--text-muted)}.tree-row .row-actions{margin-inline-start:auto}.tree-input{min-height:40px;padding:6px 10px;font-family:inherit;font-size:15px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.tree-input.narrow{width:90px;font-size:13px}.chip{display:inline-block;flex:0 0 auto;min-width:62px;margin-inline-start:var(--space-2);padding:2px var(--space-2);font-size:var(--text-xs);font-weight:650;text-align:center;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-pill)}.tree-row .chip{margin-inline-start:0}.chip-building{color:var(--status-active);border-color:var(--status-active)}.chip-level{color:var(--status-complete);border-color:var(--status-complete)}.grid tr.editing select{width:100%;min-width:160px;min-height:44px;padding:8px 10px;font-family:inherit;font-size:15px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.ms-symbol{font-weight:700}.ms-late .ms-symbol{color:var(--status-blocked)}.ms-at_risk .ms-symbol{color:var(--status-at-risk)}.ms-on_track .ms-symbol{color:var(--status-active)}.ms-achieved .ms-symbol{color:var(--status-complete)}.ms-not_set .ms-symbol{color:var(--status-idle)}.grid tr.editing input[type=date]{min-width:140px}.diary-coverage{margin:0 0 var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-inline-start-width:4px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-2)}.diary-coverage p{margin:0 0 var(--space-1)}.diary-coverage p:last-child{margin-bottom:0}.diary-verdict{font-size:var(--text-lg);font-weight:600}.diary-symbol{font-weight:700}.diary-coverage-green{border-inline-start-color:var(--status-complete)}.diary-coverage-green .diary-symbol{color:var(--status-complete)}.diary-coverage-amber{border-inline-start-color:var(--status-at-risk)}.diary-coverage-amber .diary-symbol{color:var(--status-at-risk)}.diary-coverage-red{border-inline-start-color:var(--status-blocked)}.diary-coverage-red .diary-symbol{color:var(--status-blocked)}.diary-coverage-not_started{border-inline-start-color:var(--status-idle)}.diary-coverage-not_started .diary-symbol{color:var(--status-idle)}.diary-days{margin:0;padding:0;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);overflow:hidden}.diary-day+.diary-day{border-top:1px solid var(--border)}.diary-row{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline;padding:10px 12px}.diary-missing{background:var(--danger-bg)}.diary-rest_day{color:var(--text-muted)}.diary-when{flex:0 0 auto;min-width:170px;font-weight:600}.diary-today-tag{margin-inline-start:6px;font-weight:400;color:var(--text-muted)}.diary-what{display:flex;flex:1 1 260px;flex-direction:column;gap:2px;min-width:0}.diary-state{font-weight:600}.diary-missing .diary-state .diary-symbol{color:var(--danger-text)}.diary-submitted .diary-state .diary-symbol{color:var(--status-complete)}.diary-draft .diary-state .diary-symbol{color:var(--status-at-risk)}.diary-people,.diary-summary,.diary-delay,.diary-late{font-size:14px;overflow-wrap:anywhere}.diary-summary,.diary-late{color:var(--text-muted)}.diary-delay{color:var(--danger-text)}.diary-form{margin:0;border:0;border-radius:0}.diary-manpower{margin:0 0 12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius)}.diary-manpower legend{padding:0 6px;font-weight:600}.diary-trade{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;padding:4px 0}.diary-trade-name{flex:1 1 120px;font-weight:600}.diary-stepper{display:flex;gap:8px;align-items:center}.diary-step{width:44px;min-height:44px;padding:0;font-size:20px;font-weight:700;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}.diary-step:hover:not(:disabled){border-color:var(--accent)}.diary-step:disabled{color:var(--text-muted);cursor:not-allowed}.diary-count{width:72px;min-height:44px;padding:8px;font-family:inherit;font-size:16px;text-align:center;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.diary-total{margin:8px 0 12px}.diary-add-trade{display:flex;flex-wrap:wrap;gap:8px}.diary-add-trade input{flex:1 1 160px;min-width:0}@media (max-width: 620px){.diary-when{min-width:0}.diary-row{flex-direction:column;align-items:stretch}}.site-home{max-width:34rem;margin:0 auto}.site-home-head h2{margin-bottom:var(--space-1)}.site-home-project{margin:0 0 var(--space-4);font-size:var(--text-base);color:var(--text-muted)}.site-tiles{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.site-tile{display:flex;gap:var(--space-3);align-items:center;width:100%;min-height:64px;padding:var(--space-3) var(--space-4);font-size:var(--text-md);font-weight:500;text-align:start;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-0);cursor:pointer}.site-tile:hover{background:var(--surface-3)}.site-tile:focus-visible,input:focus-visible+.site-tile,.site-tile:has(:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.site-tile-symbol{flex:0 0 auto;width:1.75rem;font-size:var(--text-xl);color:var(--accent);text-align:center}.site-tile-words{display:flex;flex-direction:column;gap:2px;min-width:0}.site-tile-label{font-size:var(--text-md);font-weight:600}.site-tile-says{font-size:var(--text-sm);font-weight:400;color:var(--text-muted)}.site-home-saved{margin:0 0 var(--space-3);padding:var(--space-3) var(--space-4);font-size:var(--text-base);background:var(--surface-2);border-inline-start:3px solid var(--status-complete);border-radius:var(--radius-sm)}.site-home-unreachable{margin:0 0 var(--space-3);padding:var(--space-3) var(--space-4);font-size:var(--text-base);background:var(--surface-2);border-inline-start:3px solid var(--status-blocked);border-radius:var(--radius-sm)}.site-home-foot{margin-top:var(--space-5)}.site-subject{margin-bottom:var(--space-5);padding:var(--space-4);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius)}.site-subject-head{margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:640}.site-subject-group+.site-subject-group{margin-top:var(--space-4)}.site-subject-kind{margin:0 0 var(--space-2);font-size:var(--text-xs);font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint)}.site-subject-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.site-subject-pick{display:flex;flex-direction:column;gap:2px;width:100%;min-height:64px;padding:var(--space-3) var(--space-4);text-align:start;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-0)}.site-subject-pick:hover:not(:disabled){background:var(--surface-3)}.site-subject-pick:disabled{color:var(--text-faint);cursor:not-allowed}.site-subject-label{font-size:var(--text-md);font-weight:550;overflow-wrap:anywhere}.site-subject-detail{font-size:var(--text-sm);color:var(--text-muted)}.site-subject-cancel{width:100%;margin-top:var(--space-4)}.dwg-issued .ms-symbol{color:var(--status-complete)}.dwg-in_progress .ms-symbol{color:var(--status-active)}.dwg-planned .ms-symbol{color:var(--status-idle)}.dwg-cancelled .ms-symbol,.dwg-superseded .ms-symbol{color:var(--text-muted)}.dwg-overdue{background:var(--danger-bg)}.dwg-overdue .ms-symbol{color:var(--danger-text)}.dwg-cancelled td,.dwg-superseded td{color:var(--text-muted)}.dwg-revisions{margin:0 0 12px;padding:0;list-style:none}.dwg-revisions li{display:flex;flex-direction:column;gap:2px;padding:8px 0}.dwg-revisions li+li{border-top:1px solid var(--border)}.sub-approved .ms-symbol,.sub-approved_with_comments .ms-symbol{color:var(--status-complete)}.sub-submitted .ms-symbol{color:var(--status-active)}.sub-rejected .ms-symbol,.sub-resubmit_required .ms-symbol{color:var(--status-blocked)}.sub-draft .ms-symbol,.sub-internal_review .ms-symbol,.sub-void .ms-symbol{color:var(--text-muted)}.sla-word{font-weight:600}.sla-due_soon .sla-word{color:var(--status-at-risk)}.sla-overdue,.sla-red{background:var(--danger-bg)}.sla-overdue .sla-word,.sla-red .sla-word{color:var(--danger-text)}.sub-void td{color:var(--text-muted)}.sub-history{margin:0 0 12px;padding:0;padding-inline-start:20px}.sub-history li{padding:6px 0}.sub-history li+li{border-top:1px solid var(--border)}.sub-history .diary-summary,.sub-history .diary-late{display:block}.mat-at_site .ms-symbol,.mat-inspected .ms-symbol,.mat-installed .ms-symbol{color:var(--status-complete)}.mat-blocked_pending_approval .ms-symbol,.mat-rejected .ms-symbol{color:var(--status-blocked)}.mat-ordered .ms-symbol,.mat-in_production .ms-symbol,.mat-shipped .ms-symbol,.mat-ready_to_order .ms-symbol{color:var(--status-active)}.mat-identified .ms-symbol,.mat-cancelled .ms-symbol{color:var(--text-muted)}.risk-word{display:block;font-weight:600}.risk-why{display:block;font-size:14px;color:var(--text-muted);overflow-wrap:anywhere}.risk-amber .risk-word{color:var(--status-at-risk)}.risk-red{background:var(--danger-bg)}.risk-red .risk-word,.risk-red .risk-why{color:var(--danger-text)}.mat-cancelled td{color:var(--text-muted)}.mat-exception{display:block;font-size:14px;color:var(--status-at-risk);overflow-wrap:anywhere}.mat-chain{margin:0 0 12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius)}.mat-chain legend{padding:0 6px;font-weight:600}.mat-chain .field{min-width:96px}.mat-orderby{margin:8px 0 4px;font-size:16px}.snag-verified_closed .ms-symbol,.snag-accepted_as_is .ms-symbol{color:var(--status-complete)}.snag-closure_submitted .ms-symbol{color:var(--status-active)}.snag-open .ms-symbol,.snag-assigned .ms-symbol,.snag-in_progress .ms-symbol{color:var(--status-at-risk)}.snag-void .ms-symbol{color:var(--text-muted)}.snag-overdue{background:var(--danger-bg)}.snag-overdue .ms-symbol{color:var(--danger-text)}tr.sev-critical>:first-child{box-shadow:inset 3px 0 0 var(--status-blocked)}tr.sev-high>:first-child{box-shadow:inset 3px 0 0 var(--status-at-risk)}.snag-verified_closed td,.snag-accepted_as_is td,.snag-void td{color:var(--text-muted)}.snag-note,.snag-check{display:block;font-size:14px;color:var(--text-muted);overflow-wrap:anywhere}.snag-check{font-style:italic}.quality-list{margin:0 0 var(--space-4);padding:0;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);overflow:hidden}.quality-list>li+li{border-top:1px solid var(--border)}.quality-row{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:flex-start;padding:10px 12px}.quality-what{display:flex;flex:1 1 300px;flex-direction:column;gap:2px;min-width:0}.quality-title{overflow-wrap:anywhere}.quality-note{font-size:14px;color:var(--text-muted);overflow-wrap:anywhere}.ins-passed .ms-symbol,.ins-passed_with_observations .ms-symbol,.ncr-verified .ms-symbol{color:var(--status-complete)}.ins-failed .ms-symbol{color:var(--danger-text)}.ins-in_progress .ms-symbol,.ins-scheduled .ms-symbol,.ncr-work_complete .ms-symbol{color:var(--status-active)}.ncr-open .ms-symbol,.ncr-corrective_action_assigned .ms-symbol{color:var(--status-at-risk)}.ins-cancelled .ms-symbol,.ncr-void .ms-symbol{color:var(--text-muted)}.ins-failed{background:var(--danger-bg)}.ncr-verified,.ncr-void{color:var(--text-muted)}.checklist{padding:0 12px 12px}.checklist-line{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:8px 0;border-top:1px solid var(--border)}.checklist-text{flex:1 1 240px;min-width:0;overflow-wrap:anywhere}.checklist-results{display:flex;gap:6px}.checklist-choice{min-width:56px;min-height:44px;padding:8px 12px;font-family:inherit;font-size:15px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}.checklist-choice:hover:not(:disabled){border-color:var(--accent)}.checklist-choice.chosen{font-weight:700;color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.checklist-choice.fail.chosen{color:#fff;background:var(--danger-border);border-color:var(--danger-border)}.checklist-answer{font-weight:600}.budget-up{color:var(--status-at-risk)}.grid tfoot th,.grid tfoot td{padding-top:12px;border-top:2px solid var(--border)}.budget-unrevised{display:block;font-size:14px;font-family:var(--font-body, inherit);color:var(--text-muted)}.pulse-overall{margin:0 0 var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--border);border-inline-start-width:4px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-2)}.pulse-overall p{margin:0 0 var(--space-1)}.pulse-overall p:last-child{margin-bottom:0}.pulse-verdict{font-size:var(--text-xl);font-weight:600;letter-spacing:-.011em}.pulse-symbol{font-weight:700}.pulse-green{border-inline-start-color:var(--status-complete)}.pulse-green .pulse-symbol{color:var(--status-complete)}.pulse-amber{border-inline-start-color:var(--status-at-risk)}.pulse-amber .pulse-symbol{color:var(--status-at-risk)}.pulse-red{border-inline-start-color:var(--status-blocked)}.pulse-red .pulse-symbol{color:var(--status-blocked)}.pulse-unknown{border-inline-start-color:var(--status-idle)}.pulse-unknown .pulse-symbol{color:var(--status-idle)}.pulse-signals{margin:0 0 var(--space-3);padding:0;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);overflow:hidden}.pulse-signal+.pulse-signal{border-top:1px solid var(--border)}.pulse-signal{border-inline-start:4px solid transparent}.pulse-signal.pulse-green{border-inline-start-color:var(--status-complete)}.pulse-signal.pulse-amber{border-inline-start-color:var(--status-at-risk)}.pulse-signal.pulse-red{border-inline-start-color:var(--status-blocked)}.pulse-signal.pulse-unknown{border-inline-start-color:var(--status-idle)}.pulse-row{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline;padding:10px 12px}.pulse-name{flex:0 0 auto;min-width:130px;font-weight:600}.pulse-status{flex:0 0 auto;min-width:90px;font-weight:600}.pulse-count{flex:1 1 200px;font-size:14px;color:var(--text-muted);overflow-wrap:anywhere}.pulse-override-note{margin:0;padding:8px 12px;font-size:14px;background:var(--bg);overflow-wrap:anywhere}.pulse-drivers{margin:0;padding-block:0 12px;padding-inline:32px 12px}.pulse-drivers li{padding:3px 0;overflow-wrap:anywhere}.pulse-why{color:var(--text-muted)}@media (max-width: 620px){.pulse-row{flex-direction:column;align-items:stretch}}.setup-steps{margin:12px 0;padding:0;list-style:none}.setup-step{display:flex;gap:12px;align-items:baseline;padding:10px 0}.setup-step+.setup-step{border-top:1px solid var(--border)}.setup-mark{flex:0 0 auto;width:20px;font-size:16px;text-align:center}.setup-step.done .setup-mark{color:var(--status-complete)}.setup-step.done .setup-body strong{color:var(--text-muted);font-weight:500}.setup-body{flex:1 1 auto;min-width:0}.setup-step .link-button{flex:0 0 auto;min-height:44px;padding:0 8px}@media (max-width: 620px){.setup-step{flex-wrap:wrap}.setup-step .link-button{margin-inline-start:32px}}.audit-list{margin:var(--space-3) 0;padding:0;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);overflow:hidden}.audit-entry+.audit-entry{border-top:1px solid var(--border)}.audit-entry{padding:10px 12px}.audit-line{margin:0;overflow-wrap:anywhere}.audit-when{color:var(--text-muted);white-space:nowrap}.audit-reason{margin:4px 0 0;padding-inline-start:12px;border-inline-start:3px solid var(--border);color:var(--text-muted);overflow-wrap:anywhere}.audit-entry .link-button{min-height:44px;padding:0}.audit-changes{margin:4px 0 8px}.audit-changes td,.audit-changes th{overflow-wrap:anywhere}.file-button{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;cursor:pointer}.file-button:focus-within,input[type=file]:focus+.file-button,input[type=file]:focus-visible+.file-button{outline:2px solid var(--focus, currentColor);outline-offset:2px}.attachments{margin:6px 0 0}.attachment-list{margin:0 0 4px;padding:0;list-style:none}.attachment-list li{padding:2px 0;overflow-wrap:anywhere}.attachment-list .link-button{min-height:44px;padding:0 8px}.detail-label{margin:12px 0 0;font-weight:600}.exposure{border-inline-start:4px solid var(--border)}.exposure-green{border-inline-start-color:var(--status-complete)}.exposure-amber{border-inline-start-color:var(--status-at-risk, #b8860b)}.exposure-red{border-inline-start-color:var(--status-blocked, #a3342a)}.exposure p{margin:0 0 6px}.vo-exposed{border-inline-start:4px solid var(--status-blocked, #a3342a)}.portfolio-counts{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0 20px;padding:0;list-style:none}.portfolio-count{flex:1 1 140px;padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--border);border-inline-start-width:4px;border-radius:var(--radius);box-shadow:var(--shadow-1)}.portfolio-count.pulse-green{border-inline-start-color:var(--status-complete)}.portfolio-count.pulse-amber{border-inline-start-color:var(--status-at-risk, #b8860b)}.portfolio-count.pulse-red{border-inline-start-color:var(--status-blocked, #a3342a)}.portfolio-number{display:block;font-size:var(--text-2xl);font-weight:660;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.portfolio-word{display:block;font-size:var(--text-base);color:var(--text-muted)}.attention-list{margin:0 0 var(--space-5);padding:0;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);overflow:hidden}.attention-item+.attention-item{border-top:1px solid var(--border)}.attention-item{border-inline-start:4px solid transparent}.attention-item.pulse-amber{border-inline-start-color:var(--status-at-risk, #b8860b)}.attention-item.pulse-red{border-inline-start-color:var(--status-blocked, #a3342a)}.attention-item a{display:block;min-height:44px;padding:var(--space-3) var(--space-4);text-decoration:none;overflow-wrap:anywhere}.attention-item a:hover{background:var(--surface-2)}.attention-item a:hover .attention-ref{text-decoration:underline}.attention-ref{font-weight:600}.attention-why{color:var(--text-muted)}@media (max-width: 620px){.portfolio-count{flex-basis:100%}}.handover-readiness{margin:.5rem 0 1rem}.meter{height:.75rem;border-radius:.375rem;background:var(--surface);border:1px solid var(--border);overflow:hidden}.meter-fill{height:100%;background:var(--status-complete);transition:width .2s ease}.photo-grid{list-style:none;padding:0;margin:.5rem 0 1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.75rem}.photo-cell img{width:100%;height:8rem;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border);display:block}.photo-caption{display:block;margin-top:.25rem}.photo-caption .hint{display:block}.photo-withheld{display:flex;align-items:center;height:8rem;padding:.5rem;border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2);color:var(--text-muted);font-size:var(--text-sm)}.task-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.75rem;margin:.5rem 0 1rem}.board-column{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .75rem}.board-head{margin:.25rem 0 .5rem}.board-cards{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.board-card{border:1px solid var(--border);border-radius:var(--radius);padding:.5rem;display:grid;gap:.25rem}.calendar-grid{list-style:none;margin:.5rem 0 1rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.5rem}.calendar-day{border:1px solid var(--border);border-radius:var(--radius);padding:.375rem .5rem;min-height:3.5rem}.calendar-day.has-tasks{background:var(--surface)}.calendar-date{font-weight:600;display:block}.calendar-task{display:block;font-size:.875rem}.operator-shell{background:var(--bg)}.operator-console{min-height:100dvh;background:var(--bg)}.operator-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-5);color:var(--surface);background:var(--text)}.operator-bar .hint,.operator-bar .link-button{color:var(--surface);opacity:.85}.operator-main{max-width:1100px;margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-8)}.operator-form,.operator-panel{margin-bottom:var(--space-6);padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.operator-link{margin-bottom:var(--space-5);padding:var(--space-5);background:var(--surface-2);border:2px solid var(--accent);border-radius:var(--radius-lg)}.operator-link h3{margin:0 0 var(--space-2)}.operator-link-value{display:block;margin:var(--space-3) 0;padding:var(--space-3);font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-sm);word-break:break-all;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}.pill{display:inline-block;padding:2px 8px;font-size:var(--text-sm);font-weight:560;border-radius:999px;border:1px solid var(--border)}.pill-ok{color:var(--status-complete);border-color:var(--status-complete)}.pill-risk{color:var(--status-at-risk);border-color:var(--status-at-risk)}.pill-blocked{color:var(--status-blocked);border-color:var(--status-blocked)}.support-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-3) var(--space-5);color:var(--danger-text);background:var(--danger-bg);border-bottom:3px solid var(--danger-border)}.support-banner-text{display:flex;flex-direction:column;gap:2px;min-width:0}.support-banner-detail{font-size:var(--text-sm);opacity:.9}.support-banner-leave{flex:none;color:var(--danger-text);background:transparent;border:1px solid var(--danger-border)}.operator-visit{margin-bottom:var(--space-5);padding:var(--space-5);color:var(--danger-text);background:var(--danger-bg);border:2px solid var(--danger-border);border-radius:var(--radius-lg)}.operator-visit h3{margin:0 0 var(--space-2)}.operator-visit .hint{color:inherit;opacity:.9}.project-head .section-head{margin-bottom:var(--space-1)}.project-head .signed-in-as{margin-bottom:var(--space-2)}.stage-strip{margin:0;font-size:var(--text-base);color:var(--text-muted)}.stage-strip-count{font-variant-numeric:tabular-nums}.stage-strip-running strong{color:var(--text)}.section-nav{position:sticky;top:61px;z-index:10;display:flex;gap:var(--space-1);margin:0 0 var(--space-6);padding:var(--space-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);box-shadow:var(--shadow-1);overflow-x:auto;scrollbar-width:none;min-width:0;max-width:100%}.section-nav::-webkit-scrollbar{display:none}.section-tab{flex:1 0 auto;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-4);font-size:var(--text-base);font-weight:560;color:var(--text-muted);text-align:center;text-decoration:none;white-space:nowrap;border-radius:var(--radius-pill);transition:background-color .12s ease,color .12s ease}.section-tab.current{color:var(--on-accent);background:var(--accent)}.section-tab.current:hover{color:var(--on-accent);background:var(--accent-hover)}.needs .sub-head{margin-top:0}.split>.needs{grid-column:1 / -1;margin-bottom:0}.needs-wanting{border-inline-start-color:var(--status-at-risk)}.needs-clear{border-inline-start-color:var(--status-complete)}.needs-verdict{margin:0;font-size:var(--text-lg)}.needs-symbol{font-weight:700}.needs-clear .needs-symbol{color:var(--status-complete)}.needs-wanting .needs-symbol{color:var(--status-at-risk)}.needs-count{flex:0 0 auto;padding:2px var(--space-3);font-size:var(--text-sm);font-weight:640;color:var(--status-at-risk);background:var(--tint-at-risk);border-radius:var(--radius-pill);white-space:nowrap}.needs-blocked{margin:0 0 var(--space-3);padding:var(--space-3);font-size:var(--text-base);color:var(--text);background:var(--tint-blocked);border-radius:var(--radius)}.needs-blocked .needs-symbol{color:var(--status-blocked)}.needs-group+.needs-group{margin-top:var(--space-4)}.needs-group-head{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:baseline;margin:0 0 var(--space-2);font-size:var(--text-sm);font-weight:650;text-transform:uppercase;letter-spacing:.05em}.needs-group-count{padding:0 var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--text);background:var(--surface-3);border-radius:var(--radius-pill)}.needs-group-gist{flex:1 1 100%;font-size:var(--text-xs);font-weight:450;color:var(--text-faint);text-transform:none;letter-spacing:0}.needs-sev{font-weight:700}.band-overdue .needs-sev,.needs-group.band-overdue .needs-group-label{color:var(--status-blocked)}.band-due_soon .needs-sev,.needs-group.band-due_soon .needs-group-label{color:var(--status-at-risk)}.band-open .needs-sev,.needs-group.band-open .needs-group-label{color:var(--status-active)}.needs-list{margin:0;padding:0;list-style:none;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;position:relative}.needs-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:var(--space-3);row-gap:2px;padding:var(--space-2) var(--space-3);border-inline-start:3px solid transparent;min-width:0}.needs-item-head{grid-column:1;grid-row:1;min-width:0}.needs-facts{grid-column:1 / -1;grid-row:2;min-width:0}.needs-item+.needs-item{border-top:1px solid var(--border)}.needs-item.band-overdue{border-inline-start-color:var(--status-blocked);background:var(--tint-blocked)}.needs-item.band-due_soon{border-inline-start-color:var(--status-at-risk)}.needs-item.band-open{border-inline-start-color:var(--status-active)}.needs-item:not(.band-overdue):hover{background:var(--surface-2)}.needs-item-head{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2);align-items:baseline;grid-column:1;grid-row:1}.needs-stage{flex:0 0 auto;font-size:var(--text-xs);font-weight:650;color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em}.needs-what{flex:1 1 240px;font-weight:550}.needs-facts{margin:0;font-size:var(--text-sm);color:var(--text-muted);text-wrap:pretty}.needs-fact.needs-count,.needs-fact.needs-timing{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:620}.needs-timing{font-weight:620}.needs-timing.band-overdue{color:var(--status-blocked)}.needs-timing.band-due_soon{color:var(--status-at-risk)}.needs-owner{font-weight:560;color:var(--text)}.needs-why{font-weight:400}.needs-go{grid-column:2;grid-row:1;min-height:44px;display:inline-flex;align-items:center;padding:0 var(--space-2);font-size:var(--text-base);font-weight:560;white-space:nowrap}.needs-count-pressing{color:var(--status-blocked)}@media (max-width: 620px){.needs-item{grid-template-columns:minmax(0,1fr)}.needs-go{grid-column:1;grid-row:3;justify-content:flex-start;padding-inline-start:0}.needs-what{flex-basis:100%}}.cross-link{font-weight:560;text-decoration:none;border-bottom:1px solid var(--accent-border);white-space:nowrap}.cross-link:after{content:" \2197";font-size:.85em}.cross-link:hover{border-bottom-color:var(--accent);background:var(--accent-soft)}.is-focused{background:var(--accent-soft)!important;box-shadow:inset 3px 0 0 var(--accent);scroll-margin-top:120px}li.is-focused{box-shadow:inset 3px 0 0 var(--accent)}@media (max-width: 900px){.section-nav{flex-wrap:wrap;overflow-x:visible;border-radius:var(--radius-lg)}.section-tab{flex:1 1 auto}}.shell{min-height:100dvh}@media (min-width: 1000px){.shell{display:grid;grid-template-columns:248px minmax(0,1fr);align-items:start}.shell.is-collapsed{grid-template-columns:68px minmax(0,1fr)}.is-collapsed .app-bar{padding-inline:var(--space-2)}.is-collapsed .app-brand-name,.is-collapsed .nav-label,.is-collapsed .signed-in-as,.is-collapsed .user-chevron{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.is-collapsed .app-brand,.is-collapsed .nav-tab,.is-collapsed .user-button{justify-content:center;padding-inline:var(--space-2)}.is-collapsed .rail-toggle{position:static;margin:0}.is-collapsed .nav-tab .nav-badge{position:absolute;margin:0;transform:translate(14px,-12px)}.is-collapsed .nav-tab{position:relative}}.app-bar{position:sticky;top:0;z-index:30;display:flex;gap:var(--space-4);align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-1)}@media (min-width: 1000px){.app-bar{top:0;height:100dvh;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--space-5);padding:var(--space-5) var(--space-3);border-bottom:none;border-inline-end:1px solid var(--border);box-shadow:none;overflow-y:auto}}.app-brand{display:flex;gap:var(--space-2);align-items:center;min-width:0;padding:0 var(--space-2)}.app-mark{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--on-accent);background:var(--accent);border-radius:var(--radius-sm)}.app-mark svg{width:19px;height:19px}.app-brand-name{font-size:var(--text-base);font-weight:640;letter-spacing:-.011em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.app-bar h1{margin:0;font-size:var(--text-base);font-weight:640;min-width:0}.app-nav{display:flex;gap:2px;margin:0;min-width:0;overflow-x:auto;scrollbar-width:none;position:relative}@media (min-width: 1000px){.app-nav{flex-direction:column;overflow-x:visible;margin-inline-end:0;margin-inline-start:0}}@media (max-width: 999px){.app-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand account" "nav nav";row-gap:var(--space-2);column-gap:var(--space-3);align-items:center}.app-bar>.app-brand{grid-area:brand}.app-bar>.app-user{grid-area:account;justify-self:end}.app-bar>.app-nav{grid-area:nav;flex-wrap:wrap;gap:var(--space-1);overflow-x:visible}}.nav-tab{display:flex;gap:var(--space-3);align-items:center;min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-weight:550;color:var(--text-muted);text-decoration:none;white-space:nowrap;border-bottom:none;border-radius:var(--radius);transition:background-color .12s ease,color .12s ease}.nav-tab:hover{color:var(--text);background:var(--surface-2)}.nav-tab.current{color:var(--accent);background:var(--accent-soft);font-weight:620;border-bottom-color:transparent}.nav-icon{flex:0 0 auto;display:inline-flex;align-items:center;color:currentColor;opacity:.9}.nav-label{min-width:0}.nav-tab .nav-badge{margin-inline-start:auto}.rail-toggle{display:none;width:44px;min-width:44px;min-height:44px;padding:0;margin-inline-start:auto;color:var(--text-muted);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);box-shadow:none}.app-bar .rail-toggle{width:44px;min-width:44px}.rail-toggle:hover:not(:disabled){color:var(--text);background:var(--surface-2);box-shadow:none}.rail-toggle svg{width:18px;height:18px}@media (min-width: 1000px){.rail-toggle{display:inline-flex;align-items:center;justify-content:center}}.app-user{position:relative;display:flex;gap:var(--space-3);align-items:center;flex:0 0 auto}@media (min-width: 1000px){.app-user{margin-top:auto;flex-direction:column;align-items:stretch;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border)}.app-user button{width:100%}}.user-button{display:flex;gap:var(--space-2);align-items:center;width:auto;min-height:44px;padding:var(--space-2);font-family:inherit;color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--radius);box-shadow:none;text-align:start}.user-button:hover:not(:disabled){background:var(--surface-2);box-shadow:none}.user-avatar{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:var(--text-sm);font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-pill)}.user-chevron{margin-inline-start:auto;display:inline-flex;color:var(--text-muted)}.user-chevron svg{width:16px;height:16px;transform:rotate(90deg)}.signed-in-as{display:flex;flex-direction:column;gap:0;margin:0;min-width:0;font-size:var(--text-sm);color:var(--text-muted)}.signed-in-role{font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.signed-in-company{font-size:var(--text-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu{position:absolute;z-index:40;inset-inline-end:0;top:calc(100% + var(--space-2));width:max(248px,100%);padding:var(--space-4);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-3)}@media (min-width: 1000px){.user-menu{top:auto;bottom:calc(100% + var(--space-2));inset-inline-start:0;inset-inline-end:auto}}.user-menu-line{margin:0 0 var(--space-3);font-size:var(--text-base)}.finance-flag{font-size:var(--text-xs);font-weight:640;letter-spacing:.04em;text-transform:uppercase;color:var(--status-complete)}.page{width:100%;max-width:1440px;margin:0 auto;min-width:0;padding:var(--space-6) var(--space-6) var(--space-8);position:relative}@media (max-width: 620px){.page{padding:var(--space-4) var(--space-4) var(--space-8)}}.register{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:var(--space-5) var(--space-6) var(--space-6);scroll-margin-top:92px;min-width:0;overflow-x:auto;position:relative}.register>.sub-head:first-child,.register>.section-head:first-child .sub-head,.register>.sub-head-row:first-child .sub-head{margin-top:0}.register .grid{box-shadow:none;background:transparent}.split{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-items:start}@media (min-width: 1100px){.split{grid-template-columns:minmax(0,1.55fr) minmax(300px,.95fr);gap:var(--space-5)}}.split-main,.split-rail{display:grid;gap:var(--space-4);align-content:start;min-width:0}.split-main>*,.split-rail>*{min-width:0}.split-main>.register+.register,.split-rail>.register+.register{margin-top:0;padding-top:var(--space-4)}.stepper{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:var(--space-1);margin:0 0 var(--space-4);padding:0;list-style:none;counter-reset:none}.step{display:flex;min-width:0}.step-button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:44px;padding:var(--space-2) var(--space-3);font-family:inherit;font-size:var(--text-sm);font-weight:550;text-align:start;color:var(--text-muted);background:var(--surface-2);border:1px solid transparent;border-inline-start:3px solid var(--status-idle);border-radius:var(--radius-sm);box-shadow:none;cursor:pointer}.step-button:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.step-button.is-selected{color:var(--text);background:var(--surface);border-color:var(--border-strong);box-shadow:var(--shadow-1)}.step-index{display:none}.step-name{font-size:var(--text-base);font-weight:620;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.step-state{font-size:var(--text-xs);white-space:nowrap}.step-symbol{font-weight:700}.step-flag{margin-top:2px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--status-at-risk)}.step-complete .step-button{border-inline-start-color:var(--status-complete)}.step-complete .step-symbol{color:var(--status-complete)}.step-active .step-button{border-inline-start-color:var(--status-active)}.step-active .step-symbol{color:var(--status-active)}.step-at_risk .step-button{border-inline-start-color:var(--status-at-risk)}.step-at_risk .step-symbol{color:var(--status-at-risk)}.step-blocked .step-button{border-inline-start-color:var(--status-blocked)}.step-blocked .step-symbol{color:var(--status-blocked)}.stage-detail{padding:var(--space-4);background:var(--surface-2);border:1px solid var(--border);border-inline-start:3px solid var(--status-idle);border-radius:var(--radius)}.stage-detail.stage-complete{border-inline-start-color:var(--status-complete)}.stage-detail.stage-active{border-inline-start-color:var(--status-active)}.stage-detail.stage-at_risk{border-inline-start-color:var(--status-at-risk)}.stage-detail.stage-blocked{border-inline-start-color:var(--status-blocked)}.stage-detail-head{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);align-items:baseline;margin-bottom:var(--space-2)}.stage-risk{margin:var(--space-3) 0 0;padding:var(--space-3);font-size:var(--text-md);line-height:1.5;color:var(--text);background:var(--surface);border-inline-start:3px solid var(--status-at-risk);border-radius:var(--radius)}.stage-detail-head h4{margin:0;font-size:var(--text-lg);font-weight:640}.stage-detail-state{font-size:var(--text-sm);color:var(--text-muted)}.stage-detail .stage-actions{display:flex;flex-wrap:wrap;gap:2px var(--space-2);margin:0;margin-inline-start:auto}.stage-detail .stage-gate{margin-top:var(--space-2);padding-top:var(--space-2)}.stage-detail .stage-reason{margin-top:var(--space-3);padding-top:var(--space-3)}.project-head{margin-bottom:var(--space-4)}.project-head h2{font-size:clamp(22px,3vw,30px);letter-spacing:-.02em}.project-head .signed-in-as{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--text-base)}.stage-strip{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface-2);border-radius:var(--radius);font-size:var(--text-sm)}.section-nav{top:61px}@media (min-width: 1000px){.section-nav{top:var(--space-3);display:flex;width:100%;max-width:100%}.section-tab{flex:0 0 auto}}.grid td,.grid th,.mono,.portfolio-number,.stage-strip-count{font-variant-numeric:tabular-nums}.split-main>.needs{margin-bottom:0}.needs-item{padding:2px var(--space-3);gap:var(--space-1) var(--space-3)}.needs-what{font-size:var(--text-base);line-height:1.4}.needs-go{min-height:44px;font-size:var(--text-sm)}.needs-list{border-radius:var(--radius-sm)}.cross-link{display:inline-block;min-height:24px;padding:2px 0}.register .empty{padding:var(--space-5) var(--space-4);background:var(--surface-2);border-style:solid;border-color:var(--border)}.role-picker{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.role-chip{padding:6px var(--space-3);font-size:var(--text-md);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}.role-chip.current{color:var(--surface);background:var(--text);border-color:var(--text)}.role-chip-mark{font-weight:700}.role-head{margin-bottom:var(--space-3)}.role-head h4{margin:0 0 2px;font-size:var(--text-lg);font-weight:640}.table-scroll{overflow-x:auto}.role-grid th[scope=row]{font-weight:500;text-align:start;white-space:nowrap}.role-cell{text-align:center}.role-cell-forbidden{color:var(--text-muted);text-align:center}.threshold-group{margin-bottom:var(--space-5)}.threshold-group h4{margin:0 0 var(--space-3);font-size:var(--text-lg);font-weight:640}.threshold-row{padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.threshold-row:last-child{border-bottom:0}.threshold-row label{display:block;margin-bottom:6px;font-weight:500}.threshold-input{display:flex;align-items:center;gap:var(--space-3)}.threshold-input input{width:6rem}.threshold-default{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap}.threshold-mark{font-weight:700}.threshold-row .hint{margin:6px 0 0}.rk-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin-bottom:var(--space-4);padding:var(--space-3) 0 var(--space-4);border-bottom:1px solid var(--border);position:relative}.rk-field{display:flex;flex-direction:column;gap:2px;min-width:0}.rk-field>label,.rk-field-label{font-size:var(--text-sm);font-weight:560;color:var(--text-muted);letter-spacing:0}.rk-field>input,.rk-field>select{min-height:44px;padding:0 var(--space-2);font-size:var(--text-md);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm)}.rk-search{flex:1 1 220px}.rk-density-buttons{display:flex}.rk-density-button{min-height:44px;padding:0 var(--space-3);font-size:var(--text-sm);font-weight:560;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);cursor:pointer}.rk-density-button:first-child{border-radius:0;border-start-start-radius:var(--radius-sm);border-end-start-radius:var(--radius-sm)}.rk-density-button:last-child{margin-inline-start:-1px;border-radius:0;border-start-end-radius:var(--radius-sm);border-end-end-radius:var(--radius-sm)}.rk-density-button[aria-pressed=true]{color:var(--on-accent);background:var(--accent);border-color:var(--accent);position:relative;z-index:1}.rk-count{flex:1 1 100%;margin:0;font-size:var(--text-sm);color:var(--text-muted);font-variant-numeric:tabular-nums}.rk-scroll{overflow-x:auto;overflow-y:auto;max-height:70vh;border-radius:var(--radius);position:relative}.rk-scroll table{margin:0;border:0}.rk-scroll thead th{position:sticky;top:0;z-index:2;background:var(--surface-2);box-shadow:inset 0 -1px 0 var(--border)}.rk-open{padding:0;font:inherit;color:inherit;text-align:start;text-decoration:none;background:transparent;border:0;cursor:pointer;position:relative}.rk-open:hover strong{color:var(--accent);text-decoration:underline}.rk-actions{display:flex;flex-wrap:nowrap;gap:var(--space-1);align-items:center;position:relative}.rk-action,.rk-more{min-height:44px;display:inline-flex;align-items:center;gap:4px;padding:0 var(--space-2);font-size:var(--text-sm);font-weight:560;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);white-space:nowrap;cursor:pointer}.rk-action:hover:not(:disabled),.rk-more:hover{background:var(--surface-3)}.rk-action:disabled{color:var(--text-faint);cursor:not-allowed}.rk-action.danger{color:var(--status-blocked)}.rk-caret{font-size:var(--text-xs)}.rk-menu{position:fixed;z-index:120;min-width:200px;max-height:80vh;overflow-y:auto;display:flex;flex-direction:column;padding:var(--space-1);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-3)}.rk-menu-item{min-height:44px;display:flex;align-items:center;padding:0 var(--space-2);font-size:var(--text-base);color:var(--text);text-align:start;background:transparent;border:0;border-radius:var(--radius-sm);cursor:pointer}.rk-menu-item:hover{background:var(--surface-3)}.rk-menu-item.danger{color:var(--status-blocked)}.rk-scrim{position:fixed;inset:0;z-index:100;display:flex;justify-content:flex-end;background:#00000073}.rk-drawer{display:flex;flex-direction:column;width:min(560px,100%);max-height:100%;background:var(--surface);border-inline-start:1px solid var(--border);box-shadow:var(--shadow-3);animation:rk-slide var(--motion-slow) var(--ease);--rk-slide-from: 16px}[dir=rtl] .rk-drawer{--rk-slide-from: -16px}@keyframes rk-slide{0%{transform:translate(var(--rk-slide-from));opacity:0}}@media (prefers-reduced-motion: reduce){.rk-drawer{animation:none}}.rk-drawer-head{display:flex;gap:var(--space-3);align-items:flex-start;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border)}.rk-drawer-title{margin:0;font-size:var(--text-lg);letter-spacing:-.011em}.rk-drawer-sub{margin:2px 0 0;font-size:var(--text-sm);color:var(--text-muted)}.rk-drawer-close{flex:0 0 auto;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-lg);color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;position:relative}.rk-drawer-close:hover{background:var(--surface-3);border-color:var(--border-strong)}.rk-drawer-body{flex:1 1 auto;overflow-y:auto;padding:var(--space-4);position:relative}.rk-drawer-foot{flex:0 0 auto;padding:var(--space-3) var(--space-4);background:var(--surface-2);border-top:1px solid var(--border)}.rk-guard{position:sticky;top:0;z-index:5;margin:calc(var(--space-4) * -1) calc(var(--space-4) * -1) var(--space-4);padding:var(--space-3) var(--space-4);background:var(--surface-2);border-bottom:1px solid var(--border-strong)}.rk-drawer-body .panel{margin:0;padding:0;background:transparent;border:0;box-shadow:none}.rk-compact .grid th,.rk-compact .grid td{padding-top:var(--space-1);padding-bottom:var(--space-1);line-height:1.35}.rk-compact .rk-secondary{display:none}@media (max-width: 1100px){.rk-drawer{width:100%;align-self:flex-end;max-height:92%;border-inline-start:0;border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rk-scrim{align-items:flex-end}.rk-cards{overflow-x:visible;white-space:normal}.rk-cards thead{display:none}.rk-cards,.rk-cards tbody,.rk-cards tr,.rk-cards td{display:block;width:auto}.rk-cards tr{margin-bottom:var(--space-3);padding:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);position:relative}.rk-cards td{padding:2px 0;border:0}.rk-cards td[data-label]:before{content:attr(data-label) ": ";font-size:var(--text-xs);font-weight:650;color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em}.rk-cards td:empty{display:none}.rk-actions{flex-wrap:wrap;margin-top:var(--space-2)}.rk-scroll{max-height:none;overflow:visible;border:0}}a,button,select,input,textarea,.nav-tab,.section-tab,.rk-action,.rk-more,.rk-menu-item,.rk-density-button,.rk-open,.needs-go{transition:background-color var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}.grid tbody tr{transition:background-color var(--motion-fast) var(--ease)}.register{transition:box-shadow var(--motion) var(--ease)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.register{container-type:inline-size;container-name:register}.page>section{container-type:inline-size;container-name:register}@container register (max-width: 760px){.grid,.grid tbody,.grid tr,.grid td{display:block;width:auto}.grid{overflow-x:visible;white-space:normal}.grid thead{display:none}.grid tbody tr{padding:var(--space-3) 0}.grid tbody tr:not(:last-child)>td,.grid tbody tr:not(:last-child)>th{border-bottom:0}.grid tbody tr:not(:last-child){border-bottom:1px solid var(--border)}.grid td{padding:2px 0;border:0}.grid td[data-label]:before{content:attr(data-label) ": ";font-size:var(--text-xs);font-weight:650;color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em}.grid td:empty{display:none}.grid .row-actions{margin-top:var(--space-2)}}input[type=checkbox],input[type=radio]{flex:none;width:24px;height:24px;accent-color:var(--accent);cursor:pointer}label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:inline-flex;gap:var(--space-2);align-items:center;min-height:44px;cursor:pointer}select{min-height:44px;font-size:var(--text-md);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:0 var(--space-2)}input:not([type=checkbox]):not([type=radio]):not(.visually-hidden){min-width:44px}.rk-partial{flex:1 1 100%;margin:var(--space-2) 0 0;padding:var(--space-2) var(--space-3);font-size:var(--text-md);line-height:1.5;color:var(--text);background:var(--surface-2);border-inline-start:3px solid var(--status-at-risk);border-radius:var(--radius)}.app-bar{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-0)}@media (min-width: 1000px){.shell{grid-template-columns:var(--rail-w) minmax(0,1fr)}.shell.is-collapsed{grid-template-columns:var(--rail-w-collapsed) minmax(0,1fr)}.app-bar{padding:var(--space-4) var(--space-2);background:var(--bg);border-inline-end:1px solid var(--border)}}.nav-tab{position:relative;min-height:var(--control-h);padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-weight:500;border-radius:var(--radius)}.nav-tab.current{font-weight:600;color:var(--text);background:var(--surface-3)}.nav-tab.current:before{content:"";position:absolute;inset-inline-start:0;width:3px;height:20px;background:var(--accent);border-radius:0;border-start-end-radius:var(--radius-sm);border-end-end-radius:var(--radius-sm)}.page{max-width:var(--page-max);padding:var(--space-6)}.register{padding:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-0);overflow:visible}.register+.register{margin-top:var(--space-6);padding-top:0}.register>.section-head,.register>.sub-head-row{margin:0;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.register .sub-head{margin:0;font-size:var(--text-md);font-weight:600;letter-spacing:0}.register>p,.register>.hint,.register>.alert,.register>.empty,.register>.rk-toolbar,.register>form,.register>dl,.register>h4{margin-inline-start:var(--space-4);margin-inline-end:var(--space-4)}.grid{border-radius:0;box-shadow:var(--shadow-0);font-size:var(--text-base)}.grid th,.grid td{padding:var(--row-y) var(--row-x)}.grid thead th{padding-top:var(--space-2);padding-bottom:var(--space-2);font-size:var(--text-xs);font-weight:600;color:var(--text-muted);background:var(--surface-2)}.grid tbody tr:hover:not([class*=risk-]):not([class*=tint]){background:var(--surface-2)}.grid .mono{font-variant-numeric:tabular-nums}button.inline,button.secondary,.rk-action,.rk-more,.rk-density-button,.field input,.field select,.rk-field>input,.rk-field>select,select,input:not([type=checkbox]):not([type=radio]){min-height:var(--control-h);border-radius:var(--radius);font-size:var(--text-base)}button.inline{font-weight:600}button,button.link-button{min-height:var(--control-h)}.rk-open{min-height:24px}.rk-toolbar{padding:var(--space-3) 0;background:transparent;border-bottom:1px solid var(--border)}.rk-scroll{border-radius:0}button,button.inline,button.secondary,button.link-button,.rk-action,.rk-more,.rk-open,.rk-density-button,.section-nav{box-shadow:var(--shadow-0)}.section-nav{gap:var(--space-1);padding:0;background:var(--bg);border:0;border-bottom:1px solid var(--border);border-radius:0}.section-tab{min-height:auto;padding:var(--space-3) var(--space-3);font-size:var(--text-base);font-weight:500;color:var(--text-muted);border-radius:0;border-bottom:2px solid transparent}.section-tab:hover{color:var(--text);background:transparent;border-bottom-color:var(--border-strong)}.section-tab.current,.section-tab.current:hover{font-weight:600;color:var(--accent);background:transparent;border-bottom-color:var(--accent)}.needs-stage{color:var(--text-muted)}.needs{margin-bottom:var(--space-6);padding:0;background:var(--surface);border:1px solid var(--border);border-inline-start:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-0)}.needs .section-head,.needs .sub-head-row{margin:0;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.needs .needs-blocked,.needs>.hint{margin:var(--space-3) var(--space-4)}.needs-clear{border-inline-start:1px solid var(--border)}.needs-clear .needs-verdict{margin:var(--space-4);font-size:var(--text-base)}.needs-queue{border-radius:0}.needs{container-type:inline-size;container-name:register}.needs-row.band-overdue .needs-sev,.needs-row.band-overdue .needs-priority{color:var(--status-blocked);font-weight:600}.needs-row.band-due_soon .needs-sev,.needs-row.band-due_soon .needs-priority{color:var(--status-at-risk);font-weight:600}.needs-row.band-open .needs-sev{color:var(--status-active)}.needs-row .needs-what{display:block;font-weight:500;color:var(--text)}.needs-row .needs-stage{display:block;font-size:var(--text-xs);color:var(--text-muted);text-transform:none;letter-spacing:0}.needs-row .needs-why{max-width:42ch;font-size:var(--text-sm);color:var(--text-muted);font-weight:400}.needs-timing-late{color:var(--status-blocked);font-weight:600}.needs-row .needs-go{min-height:24px;font-size:var(--text-sm);font-weight:500;white-space:normal}.chip{padding:2px var(--space-2);font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-sm)}.rk-menu,.user-menu{border-radius:var(--radius);box-shadow:var(--shadow-1)}.user-menu{max-width:100%;box-sizing:border-box}.rk-drawer{border-radius:0;box-shadow:var(--shadow-2)}.theme-switch{display:flex;margin:var(--space-3) var(--space-2) var(--space-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:2px;gap:2px}.theme-switch .theme-switch-option{flex:1 1 0;min-height:28px;min-width:0;padding:0 var(--space-1);font-size:var(--text-xs);font-weight:500;color:var(--text-muted);background:transparent;border:0;border-radius:var(--radius-sm);cursor:pointer}.theme-switch .theme-switch-option:hover{color:var(--text)}.theme-switch .theme-switch-option[aria-checked=true]{font-weight:600;color:var(--text);background:var(--surface);box-shadow:0 1px 2px #0000001f}.is-collapsed .theme-switch{display:none}.user-menu-group{display:flex;flex-direction:column;gap:2px;margin:var(--space-3) 0;padding-top:var(--space-3);border-top:1px solid var(--border)}.user-menu-label{margin:0 0 var(--space-1);font-size:var(--text-xs);font-weight:600;color:var(--text-faint)}.user-menu-choice{display:flex;gap:var(--space-2);align-items:center;min-height:var(--control-h);padding:0 var(--space-2);font-size:var(--text-base);color:var(--text);text-align:start;background:transparent;border:0;border-radius:var(--radius);cursor:pointer}.user-menu-choice:hover{background:var(--surface-3)}.user-menu-choice[aria-checked=true]{font-weight:600}.user-menu-tick{width:14px;color:var(--accent)}h2,.section-head h2,.project-head h2{font-size:var(--text-xl);font-weight:600;letter-spacing:0}@media (pointer: coarse){:root{--control-h: 44px;--row-y: var(--space-3)}}.record-back{margin-bottom:var(--space-3)}.record-head{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.record-head-main{flex:1 1 280px;min-width:0}.record-title{margin:0;min-width:0;font-size:var(--text-xl);font-weight:650;line-height:1.3;letter-spacing:-.01em}.record-title .mono{font-weight:700}.record-title>span+span{font-weight:550;color:var(--text-muted)}.record-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);align-items:center;margin:var(--space-3) 0 0;font-size:var(--text-base);color:var(--text-muted)}.record-status{padding:2px var(--space-3);font-size:var(--text-sm);font-weight:600;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-pill)}.record-meta-rest{min-width:0}.record-actions{flex:0 0 auto}.record-actions .rk-action:not(.danger){color:var(--on-accent);background:var(--accent);border-color:transparent}.record-actions .rk-action:not(.danger):hover:not(:disabled){background:var(--accent-hover)}.record-actions .rk-action:disabled{color:var(--text-faint);background:var(--surface-2);border-color:var(--border)}.record-body .split-rail .register>dl{margin-bottom:var(--space-4)}.record-section+.record-section{margin-top:var(--space-5)}.record-body .register>.section-head h4.sub-head,.record-body .register>.sub-head-row h4.sub-head{color:var(--text);text-transform:none;letter-spacing:0}@media (max-width: 700px){.record-head{margin-bottom:var(--space-4);padding-bottom:var(--space-3)}.record-title{font-size:var(--text-lg)}.record-actions{flex:1 1 100%}.record-actions .rk-actions{flex-wrap:wrap}.record-actions .rk-action{flex:1 1 auto;justify-content:center}}
/*# sourceMappingURL=app.css.map */
