.app{grid-template-columns:1fr;grid-template-rows:var(--header-height) auto 1fr;grid-template-areas:"header""nav""main";height:100vh;display:grid}.header{padding:0 var(--space-6);border-bottom:var(--border-default);align-items:center;gap:var(--space-5);background:var(--bg-header);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-area:header;display:flex}.brand{align-items:center;gap:var(--space-3);-webkit-user-select:none;user-select:none;display:flex}.brand-mark{width:28px;height:28px;color:var(--signal);flex-shrink:0}.brand-text{flex-direction:column;line-height:1;display:flex}.brand-name{font-family:var(--font-display);color:var(--ink);font-size:16px;font-weight:500}.brand-org{font-family:var(--font-metric);letter-spacing:.15em;color:var(--ink-subtle);text-transform:uppercase;margin-top:2px;font-size:9px}.header-spacer{flex:1}.user{-webkit-user-select:none;user-select:none;flex-direction:column;align-items:flex-end;line-height:1.2;display:flex}.user-name{color:var(--ink);font-size:13px}.user-email{font-family:var(--font-metric);color:var(--ink-subtle);margin-top:2px;font-size:10px}.signout-btn{margin-left:var(--space-3);border:var(--border-default);border-radius:var(--radius-sm);color:var(--ink-muted);font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.12em;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;padding:8px 14px;font-size:10px;transition:border-color .15s,color .15s}.signout-btn:hover{border-color:var(--ink-muted);color:var(--ink)}.theme-icon-btn{margin-left:var(--space-2);border:var(--border-default);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--ink-muted);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:inline-flex;position:relative}.theme-icon-btn:hover{border-color:var(--ink-muted);color:var(--ink)}.theme-icon-btn svg{width:18px;height:18px}.theme-panel{top:calc(var(--header-height) + 6px);right:var(--space-6);background:var(--bg-surface);border:var(--border-emphasis);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-2);z-index:1000;flex-direction:column;min-width:220px;display:none;position:absolute;box-shadow:0 4px 16px #0000004d}.theme-panel.open{display:flex}.theme-panel-label{font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.15em;color:var(--ink-subtle);margin-bottom:2px;font-size:9px}.theme-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.theme-btn{border:var(--border-default);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-body);color:var(--ink-muted);text-align:left;background:0 0;align-items:center;gap:8px;padding:6px 8px;font-size:11px;transition:border-color .15s;display:flex}.theme-btn:hover{border-color:var(--ink-subtle);color:var(--ink)}.theme-btn.active{border-color:var(--signal);color:var(--ink)}.main{padding:var(--space-6) var(--space-8);scrollbar-gutter:stable;grid-area:main;overflow:auto}.nav-row{align-items:center;gap:var(--space-5);padding:var(--space-3) var(--space-8) var(--space-3) 18px;border-bottom:var(--border-subtle);background:var(--bg-page);grid-area:nav;display:flex}.nav-section{gap:var(--space-2);display:flex}.nav-section-item{color:var(--ink-subtle);font-family:var(--font-body);cursor:pointer;border-radius:var(--radius-md);-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:500;transition:color .15s;display:inline-flex;position:relative}.nav-section-item:hover:not(.disabled){color:var(--ink)}.nav-section-item.active{color:var(--signal)}.nav-section-item.active:after{content:"";background:var(--signal);border-radius:2px;height:2px;position:absolute;bottom:-12px;left:14px;right:14px}.nav-section-icon{flex-shrink:0;width:16px;height:16px}.nav-divider{background:var(--ink-subtle);opacity:.3;width:1px;height:24px;margin:0 var(--space-4)}.nav-tabs{gap:var(--space-2);display:flex}.nav-tab{color:var(--ink-subtle);font-family:var(--font-body);cursor:pointer;border-radius:var(--radius-md);-webkit-user-select:none;user-select:none;background:0 0;border:none;padding:8px 16px;font-size:13px;transition:color .15s;position:relative}.nav-tab:hover{color:var(--ink)}.nav-tab.active{color:var(--signal-tab)}.nav-tab.active:after{content:"";background:var(--signal-tab);border-radius:2px;height:2px;position:absolute;bottom:-12px;left:16px;right:16px}.nav-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.cutoff-action-chip{border:var(--border-default);color:var(--ink);font-size:12px;font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;transition:border-color .15s,background .15s;display:inline-flex}.cutoff-action-chip:hover{border-color:var(--ink-muted);background:var(--bg-surface-2)}.cutoff-action-chip .dot{background:var(--ok);width:6px;height:6px;box-shadow:0 0 8px var(--ok);border-radius:50%}.coming-soon{text-align:center;color:var(--ink-subtle);font-family:var(--font-body);-webkit-user-select:none;user-select:none;padding:64px 0;font-size:14px}.coming-soon-eyebrow{font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.15em;color:var(--ink-muted);margin-bottom:8px;font-size:10px}.models-view{color:var(--ink)}.models-card{background:var(--bg-surface);border:var(--border-default);border-radius:10px;padding:20px 24px}.models-card-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.models-card-title{font-family:var(--font-display);color:var(--ink);font-size:15px;font-weight:500}.models-card-subtitle{color:var(--ink-subtle);margin-top:2px;font-size:12px}.routes-table{border-collapse:collapse;width:100%;font-size:13px}.routes-table th{text-align:left;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;border-bottom:var(--border-subtle);font-size:11px;font-weight:400;font-family:var(--font-body);padding:8px 10px}.routes-table td{border-bottom:var(--border-subtle);color:var(--ink);vertical-align:middle;padding:12px 10px}.routes-table tbody tr:last-child td{border-bottom:0}.col-product{width:16%}.product-badge{border:1px solid var(--signal);border-radius:var(--radius-sm);font-family:var(--font-metric);color:var(--signal);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;cursor:help;align-items:center;gap:7px;padding:4px 10px;font-size:10px;display:inline-flex}.product-badge .conn-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.product-badge .conn-dot.ok{background:var(--ok);box-shadow:0 0 5px var(--ok)}.product-badge .conn-dot.fail{background:var(--alert);box-shadow:0 0 5px var(--alert)}.product-badge .conn-dot.never{background:var(--warn);box-shadow:0 0 5px var(--warn)}.product-badge .conn-dot.pending{opacity:.5;animation:.9s ease-in-out infinite conn-dot-pulse}@keyframes conn-dot-pulse{0%{opacity:.3;transform:scale(.8)}50%{opacity:.9;transform:scale(1.1)}to{opacity:.3;transform:scale(.8)}}.col-capability{width:22%}.col-capability .name{font-family:var(--font-body);color:var(--ink);font-size:13px}.col-deployment{width:20%}.col-deployment .name{font-family:var(--font-body);color:var(--ink);white-space:nowrap;cursor:help;border-bottom:1px dotted var(--ink-subtle);font-size:13px}.col-profile{width:34%}.profile-chips{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.chip{font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;border-radius:3px;align-items:center;padding:3px 8px;font-size:9.5px;line-height:1.2;display:inline-flex}.chip--mode-tab{border:1px solid var(--signal-tab);color:var(--signal-tab);background:0 0}.chip--param{color:var(--ink-muted);background:0 0;border:1px solid #7f7f7f59}.col-actions{text-align:right;width:8%;position:relative}.menu-btn{width:28px;height:28px;color:var(--ink-subtle);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.menu-btn:hover{color:var(--ink);border-color:#7f7f7f59}.menu-btn.open{border-color:var(--signal-tab);color:var(--signal-tab);background:var(--bg-surface-2)}.menu-btn svg{width:14px;height:14px}.new-route-btn{color:var(--ink-muted);font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.12em;cursor:pointer;background:0 0;border:1px solid #7f7f7f59;border-radius:5px;align-items:center;gap:7px;padding:7px 12px;font-size:9.5px;transition:border-color .15s,color .15s;display:inline-flex}.new-route-btn:hover{border-color:var(--signal-tab);color:var(--signal-tab)}.new-route-btn svg{width:12px;height:12px}.models-state{font-family:var(--font-body);color:var(--ink-subtle);text-align:center;padding:24px 0;font-size:13px}.models-state.error{color:var(--alert)}.col-deployment .stale-glyph{border:1.4px solid var(--alert);width:13px;height:13px;color:var(--alert);font-family:var(--font-body);cursor:help;vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;margin-left:6px;font-size:9px;font-weight:700;line-height:1;display:inline-flex}.col-deployment .name.stale{color:var(--alert);border-bottom-color:var(--alert)}.row-menu{background:var(--bg-surface);border:var(--border-emphasis);border-radius:var(--radius-md);z-index:100;flex-direction:column;gap:1px;min-width:140px;padding:4px;display:none;position:absolute;box-shadow:0 4px 16px #0000002e}.row-menu.open{display:flex}.row-menu-item{border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:7px 12px;font-size:13px;transition:background .12s,color .12s;display:flex}.row-menu-item:hover{background:var(--bg-surface-2)}.row-menu-item:disabled{opacity:.5;cursor:not-allowed}.row-menu-item.destructive{color:var(--alert)}.row-menu-item.destructive:hover{background:#cf5a5a14}.row-menu-item svg{flex-shrink:0;width:14px;height:14px}.drawer-scrim{opacity:0;pointer-events:none;z-index:998;background:#00000059;transition:opacity .25s;position:fixed;inset:0}.drawer-scrim.open{opacity:1;pointer-events:auto}.edit-drawer{top:var(--header-height,0);background:var(--bg-surface-2);border-left:var(--border-emphasis);z-index:999;flex-direction:column;width:440px;max-width:100vw;transition:transform .28s cubic-bezier(.2,.8,.2,1);display:flex;position:fixed;bottom:0;right:0;transform:translate(100%);box-shadow:-8px 0 24px #0000002e}.edit-drawer.open{transform:translate(0)}.edit-drawer[aria-hidden=true]{visibility:hidden;transition:transform .28s cubic-bezier(.2,.8,.2,1),visibility 0s linear .28s}.edit-drawer.open[aria-hidden=true],.edit-drawer[aria-hidden=false]{visibility:visible;transition:transform .28s cubic-bezier(.2,.8,.2,1)}.edit-drawer-inner{flex-direction:column;height:100%;display:flex;overflow:hidden}.edit-drawer-header{padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:var(--border-default);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.edit-drawer-eyebrow{font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.15em;color:var(--ink-subtle);margin-bottom:4px;font-size:10px}.edit-drawer-title{color:var(--ink);font-family:Fraunces,serif;font-size:17px;font-weight:500;line-height:1.2}.drawer-close-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--ink-subtle);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;transition:border-color .15s,color .15s;display:inline-flex}.drawer-close-btn:hover{color:var(--ink);border-color:#7f7f7f59}.drawer-close-btn svg{width:13px;height:13px}.edit-drawer-body{padding:var(--space-5);gap:var(--space-5);flex-direction:column;flex:1;display:flex;overflow-y:auto}.form-section{flex-direction:column;gap:12px;display:flex}.form-section-heading{font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.15em;color:var(--ink-muted);border-bottom:var(--border-subtle);justify-content:space-between;align-items:center;gap:8px;padding-bottom:6px;font-size:10px;display:flex}.form-section-tag{font-family:var(--font-metric);text-transform:none;letter-spacing:.02em;color:var(--ink-subtle);font-size:10px;font-weight:400}.form-field{flex-direction:column;gap:5px;display:flex}.form-label{font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-subtle);font-size:9.5px}.form-control{font-family:var(--font-body);background:var(--bg-surface);border:var(--border-subtle);border-radius:var(--radius-sm);color:var(--ink);outline:none;width:100%;padding:7px 10px;font-size:13px;transition:border-color .15s,background .15s}.form-control:hover{border-color:var(--ink-subtle)}.form-control:focus{border-color:var(--signal-tab);background:var(--bg-page)}.form-hint{color:var(--ink-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:2px;font-size:11.5px;display:flex}.form-hint-text{flex:1;line-height:1.4}.form-hint-tag{font-family:var(--font-metric);color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.1em;flex-shrink:0;align-items:center;gap:6px;font-size:9.5px;display:inline-flex}.form-fields-grid{grid-template-columns:1fr 130px;align-items:center;gap:8px 14px;display:grid}.form-fields-grid .grid-label{font-family:var(--font-body);color:var(--ink-muted);font-size:12px}.form-fields-grid .grid-input{font-family:var(--font-metric);background:var(--bg-surface);border:var(--border-subtle);color:var(--ink);border-radius:3px;outline:none;width:100%;padding:5px 8px;font-size:12px;transition:border-color .15s,background .15s}.form-fields-grid .grid-input::placeholder{color:var(--ink-subtle);opacity:.7}.form-fields-grid .grid-input:hover{border-color:var(--ink-subtle)}.form-fields-grid .grid-input:focus{border-color:var(--signal);background:var(--bg-page)}.form-fields-grid .grid-empty{font-family:var(--font-body);color:var(--ink-subtle);grid-column:1/-1;padding:4px 0;font-size:11.5px}.last-check-display{font-family:var(--font-metric);background:var(--bg-surface);border:var(--border-subtle);border-radius:var(--radius-sm);color:var(--ink);align-items:center;gap:10px;padding:10px 12px;font-size:12px;display:flex}.edit-drawer-footer{padding:var(--space-4) var(--space-5);border-top:var(--border-default);background:var(--bg-surface);flex-shrink:0;gap:8px;display:flex}.drawer-btn{border-radius:var(--radius-sm);font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.12em;cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:8px 14px;font-size:10px;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.drawer-btn svg{width:12px;height:12px}.drawer-btn:disabled{opacity:.5;cursor:not-allowed}.drawer-btn--secondary{color:var(--ink-muted);background:0 0;border:1px solid #7f7f7f59}.drawer-btn--secondary:hover{border-color:var(--signal-tab);color:var(--signal-tab)}.drawer-btn--primary{background:var(--signal-tab);border:1px solid var(--signal-tab);color:var(--bg-page);margin-left:auto;font-weight:500}.drawer-btn--primary:hover{opacity:.88}.drawer-btn--destructive{background:var(--alert);border:1px solid var(--alert);color:var(--bg-page);font-weight:500}.drawer-btn--destructive:hover{opacity:.88}.confirm-dialog{background:var(--bg-surface);border:var(--border-emphasis);border-radius:var(--radius-md);z-index:1000;flex-direction:column;gap:14px;width:min(420px,100vw - 32px);padding:20px 22px 16px;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 32px #00000052}.confirm-dialog-title{color:var(--ink);font-family:Fraunces,serif;font-size:16px;font-weight:500;line-height:1.3}.confirm-dialog-body{font-family:var(--font-body);color:var(--ink-muted);font-size:13px;line-height:1.5}.confirm-dialog-error{font-family:var(--font-body);color:var(--alert);background:#d9614a14;border:1px solid #d9614a4d;border-radius:4px;padding:8px 10px;font-size:12px}.confirm-dialog-footer{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.deployments-strip{background:var(--bg-surface);border:var(--border-default);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:10px 16px;transition:background .15s;display:flex}.deployments-strip:hover{background:var(--bg-surface-2)}.deployments-strip-left{color:var(--ink-muted);font-size:12px;font-family:var(--font-body);align-items:center;gap:10px;display:flex}.deployments-strip-chevron{width:14px;height:14px;color:var(--ink-subtle);transition:transform .2s}.deployments-panel.expanded .deployments-strip-chevron{transform:rotate(180deg)}.deployments-strip-label{font-family:var(--font-body);color:var(--ink);font-size:12px}.deployments-strip-meta{font-family:var(--font-metric);color:var(--ink-subtle);font-size:11px}.deployments-strip-right{align-items:center;gap:8px;display:flex}.deployments-refresh-btn{border:var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-metric);color:var(--ink);cursor:pointer;text-transform:uppercase;letter-spacing:.06em;background:0 0;align-items:center;gap:6px;padding:5px 12px;font-size:10px;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.deployments-refresh-btn:hover{background:var(--bg-surface-2);border-color:var(--signal)}.deployments-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.deployments-refresh-btn svg{stroke:currentColor;fill:none;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:11px;height:11px}.deployments-refresh-btn.busy svg{animation:1.2s linear infinite deployments-spin}@keyframes deployments-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.deployments-panel-body{background:var(--bg-surface);border:var(--border-default);border-radius:8px;margin-top:4px;padding:16px 20px;display:none}.deployments-panel.expanded .deployments-panel-body{display:block}.deployments-panel-empty{text-align:center;color:var(--ink-subtle);font-size:12px;font-family:var(--font-body);padding:32px 20px;display:none}.deployments-panel.empty .deployments-panel-body .deployments-table-wrap{display:none}.deployments-panel.empty .deployments-panel-body .deployments-panel-empty{display:block}.deployments-panel-error{color:var(--alert);font-size:12px;font-family:var(--font-body);background:#d9614a14;border:1px solid #d9614a4d;border-radius:6px;margin-bottom:12px;padding:12px 16px;display:none}.deployments-panel.error .deployments-panel-error{display:block}.deployments-table{border-collapse:collapse;width:100%;font-size:13px}.deployments-table th{text-align:left;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;border-bottom:var(--border-subtle);font-size:11px;font-weight:400;font-family:var(--font-body);padding:8px 10px}.deployments-table td{border-bottom:var(--border-subtle);color:var(--ink);font-family:var(--font-body);vertical-align:middle;padding:10px}.deployments-table tbody tr:last-child td{border-bottom:0}.deployments-panel-footnote{font-family:var(--font-metric);color:var(--ink-subtle);margin-top:10px;font-size:11px}.embed-wrap{margin:0;padding:0}.embed-plan{color:initial;box-sizing:border-box;background:0 0;min-width:800px;font-family:initial}.embed-plan,.embed-plan *{box-sizing:border-box}.embed-plan{--plan-phase-dnd-fill:#3282dc2e;--plan-phase-dnd-stroke:#3282dc73;--plan-phase-dnd-ink:#1850a0;--plan-phase-staging-fill:#dc9e1440;--plan-phase-staging-stroke:#dc9e148c;--plan-phase-staging-ink:#8c5e00;--plan-phase-staging-overlay-fill:#dc9e146b;--plan-phase-staging-overlay-stroke:#dc9e14bf;--plan-phase-uat-fill:#e14b916b;--plan-phase-uat-stroke:#e14b91bf;--plan-phase-uat-ink:#8a2451;--plan-phase-proddep-fill:#825ad72e;--plan-phase-proddep-stroke:#825ad780;--plan-phase-proddep-ink:#5530a0;--plan-phase-proditer-fill:#28a55f33;--plan-phase-proditer-stroke:#28a55f80;--plan-phase-proditer-ink:#1a6f3f;--plan-phase-contingency-fill:#7f7f7f14;--plan-phase-contingency-hatch:#7f7f7f2e;--plan-phase-contingency-stroke:#7f7f7f73;--plan-phase-contingency-ink:#6b7280}:root[data-theme^=dark] .embed-plan{--plan-phase-dnd-fill:#6ea7d938;--plan-phase-dnd-stroke:#6ea7d980;--plan-phase-dnd-ink:#b8d4ee;--plan-phase-staging-fill:#d9b47540;--plan-phase-staging-stroke:#d9b4758c;--plan-phase-staging-ink:#f0c878;--plan-phase-staging-overlay-fill:#d9b47573;--plan-phase-staging-overlay-stroke:#d9b475bf;--plan-phase-uat-fill:#e178aa73;--plan-phase-uat-stroke:#e178aabf;--plan-phase-uat-ink:#f5a8c8;--plan-phase-proddep-fill:#a082dc38;--plan-phase-proddep-stroke:#a082dc8c;--plan-phase-proddep-ink:#cab5ff;--plan-phase-proditer-fill:#78c89638;--plan-phase-proditer-stroke:#78c8968c;--plan-phase-proditer-ink:#aeeec8;--plan-phase-contingency-fill:#a0a5af1f;--plan-phase-contingency-hatch:#a0a5af3d;--plan-phase-contingency-stroke:#a0a5af80;--plan-phase-contingency-ink:#aab2bf}.embed-plan .plan-stack{min-width:800px;max-width:1240px}.embed-plan .gantt-card{background:var(--embed-card-bg);border:1px solid var(--embed-card-border);border-radius:12px;padding:26px 28px 22px}.embed-plan .gantt-card-head{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:22px;display:flex}.embed-plan .gantt-card-title{color:var(--embed-ink-strong);margin:0;font-family:Fraunces,serif;font-size:15px;font-weight:500;line-height:1.2}.embed-plan .gantt-card-chip{background:var(--embed-code-bg);color:var(--embed-ink-muted);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;border-radius:5px;flex-shrink:0;align-items:center;padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:400;line-height:1.2;display:inline-flex}.embed-plan .gantt-card-chip .chip-dot{color:var(--embed-ink-subtle);opacity:.6;margin:0 8px}.embed-plan .gantt-grid{grid-template-columns:140px 1fr;gap:14px;display:grid}.embed-plan .gantt-axis-stack{flex-direction:column;gap:4px;display:flex}.embed-plan .gantt-axis{height:22px;position:relative}.embed-plan .gantt-week{color:var(--embed-ink-muted);text-align:center;border-left:1px dashed #7f7f7f33;width:7.692%;height:18px;font-family:JetBrains Mono,monospace;font-size:10px;line-height:18px;position:absolute;top:4px}.embed-plan .gantt-week.first{border-left:none}.embed-plan .gantt-week.current{color:var(--embed-today);font-weight:600}.embed-plan .gantt-day-strip{border-bottom:1px dashed #7f7f7f33;height:12px;display:flex;position:relative}.embed-plan .gantt-day-pip{background:#7f7f7f0f;flex:1 1 0}.embed-plan .gantt-day-pip.weekend{background:#7f7f7f05}.embed-plan .gantt-day-pip.past{background:color-mix(in srgb, var(--embed-today) 22%, transparent)}.embed-plan .gantt-day-pip.past.weekend{background:color-mix(in srgb, var(--embed-today) 11%, transparent)}.embed-plan .gantt-day-pip.today{background:var(--embed-today)}.embed-plan .gantt-day-pip.monday-edge{box-shadow:inset 1px 0 #7f7f7f52}.embed-plan .gantt-today{background:var(--embed-today);pointer-events:none;z-index:5;width:1.5px;position:absolute;top:-3px;bottom:-3px;transform:translate(-50%)}.embed-plan .gantt-product-name{color:var(--embed-ink-strong);text-align:right;padding:16px 8px 0 0;font-family:Fraunces,serif;font-size:13.5px;font-weight:500;line-height:1.2}.embed-plan .gantt-product-sub{color:var(--embed-ink-subtle);text-align:right;text-transform:uppercase;letter-spacing:.08em;margin-top:2px;padding-right:8px;font-family:JetBrains Mono,monospace;font-size:9px;line-height:1.3}.embed-plan .gantt-row{padding:16px 0 18px}.embed-plan .gantt-lifecycle{height:26px;position:relative}.embed-plan .gantt-phase{border-radius:3px;position:absolute;top:0;bottom:0}.embed-plan .gantt-phase.dnd{background:var(--plan-phase-dnd-fill);border:1px solid var(--plan-phase-dnd-stroke)}.embed-plan .gantt-phase.staging{background:var(--plan-phase-staging-fill);border:1px solid var(--plan-phase-staging-stroke)}.embed-plan .gantt-phase.uat{background:var(--plan-phase-uat-fill);border:1px solid var(--plan-phase-uat-stroke)}.embed-plan .gantt-phase.proddep{background:var(--plan-phase-proddep-fill);border:1px solid var(--plan-phase-proddep-stroke)}.embed-plan .gantt-phase.proditer{background:var(--plan-phase-proditer-fill);border:1px solid var(--plan-phase-proditer-stroke)}.embed-plan .gantt-phase.contingency{background-color:var(--plan-phase-contingency-fill);background-image:repeating-linear-gradient(45deg, var(--plan-phase-contingency-hatch) 0, var(--plan-phase-contingency-hatch) 6px, transparent 6px, transparent 12px);border:1px dashed var(--plan-phase-contingency-stroke)}.embed-plan .gantt-phase.tentative{opacity:.9;background-image:repeating-linear-gradient(45deg,#ffffff8c 0 5px,#0000 5px 10px);border-style:dashed;border-color:#7f7f7f8c}.embed-plan .gantt-uat{background:var(--plan-phase-uat-fill);border:1px solid var(--plan-phase-uat-stroke);z-index:2;color:#fff;text-shadow:0 1px 2px #0006;text-transform:uppercase;letter-spacing:.12em;border-radius:2px;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:8px;font-weight:600;display:flex;position:absolute;top:5px;bottom:5px}.embed-plan .gantt-staging-overlay{background:var(--plan-phase-staging-overlay-fill);border:1px solid var(--plan-phase-staging-overlay-stroke);z-index:2;color:#fff;text-shadow:0 1px 2px #0006;text-transform:uppercase;letter-spacing:.12em;border-radius:2px;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:8px;font-weight:600;display:flex;position:absolute;top:5px;bottom:5px}.embed-plan .gantt-cycle{color:var(--embed-cycle-mark);pointer-events:none;font-size:13px;font-weight:500;position:absolute;top:50%;transform:translateY(-50%)}.embed-plan .gantt-phase-label{color:var(--embed-ink);text-transform:uppercase;letter-spacing:.08em;pointer-events:none;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:500;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.embed-plan .phase-card{background:var(--embed-card-bg);border:1px solid var(--embed-card-border);border-radius:12px;margin-top:16px;overflow:hidden}.embed-plan .phase-card-head{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;list-style:none;transition:background .15s;display:flex}.embed-plan .phase-card-head::-webkit-details-marker{display:none}.embed-plan .phase-card-head:hover{background:color-mix(in srgb, var(--signal-tab) 4%, transparent)}.embed-plan .phase-card-head-text{align-items:baseline;gap:12px;min-width:0;display:flex}.embed-plan .phase-card-title{color:var(--embed-ink-strong);margin:0;font-family:Fraunces,serif;font-size:15px;font-weight:500;line-height:1.2}.embed-plan .phase-card-sub{color:var(--embed-ink-subtle);text-transform:uppercase;letter-spacing:.12em;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:10px}.embed-plan .phase-card-caret{width:16px;height:16px;color:var(--embed-ink-muted);flex-shrink:0;transition:transform .2s}.embed-plan .phase-card[open] .phase-card-caret{transform:rotate(180deg)}.embed-plan .phase-card-body{border-top:1px dashed #7f7f7f33;padding:22px 28px}.embed-plan .phase-cards-row{grid-template-columns:repeat(5,1fr);align-items:stretch;gap:12px;display:grid}.embed-plan .phase-col{background:var(--embed-page-bg);border:1px solid var(--embed-card-border);border-top:3px solid;border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.embed-plan .phase-col-head{border-bottom:1px solid var(--embed-card-border);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;padding:12px 8px;display:flex;position:relative}.embed-plan .phase-col-num{text-transform:uppercase;letter-spacing:.12em;opacity:.8;white-space:nowrap;color:var(--embed-ink-muted);margin-bottom:4px;font-family:JetBrains Mono,monospace;font-size:9px}.embed-plan .phase-col-title{text-align:center;color:var(--embed-ink-strong);margin:0;font-family:Inter Tight,-apple-system,Segoe UI,sans-serif;font-size:14px;font-weight:500;line-height:1.2}.embed-plan .phase-col.phase-dnd{border-top-color:var(--plan-phase-dnd-stroke)}.embed-plan .phase-col.phase-staging{border-top-color:var(--plan-phase-staging-stroke)}.embed-plan .phase-col.phase-uat{border-top-color:var(--plan-phase-uat-stroke)}.embed-plan .phase-col.phase-proddep{border-top-color:var(--plan-phase-proddep-stroke)}.embed-plan .phase-col.phase-proditer{border-top-color:var(--plan-phase-proditer-stroke)}.embed-plan .phase-col-body{flex-direction:column;flex:1;padding:12px 14px 14px;display:flex}.embed-plan .phase-col-bullets{flex:1;margin:0;padding:0;list-style:none}.embed-plan .phase-col-bullets li{color:var(--embed-ink);margin-bottom:8px;padding-left:14px;font-family:Inter Tight,sans-serif;font-size:11px;line-height:1.5;position:relative}.embed-plan .phase-col-bullets li:before{content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:7px;left:2px}.embed-plan .phase-col.phase-dnd .phase-col-bullets li:before{background:var(--plan-phase-dnd-stroke)}.embed-plan .phase-col.phase-staging .phase-col-bullets li:before{background:var(--plan-phase-staging-stroke)}.embed-plan .phase-col.phase-uat .phase-col-bullets li:before{background:var(--plan-phase-uat-stroke)}.embed-plan .phase-col.phase-proddep .phase-col-bullets li:before{background:var(--plan-phase-proddep-stroke)}.embed-plan .phase-col.phase-proditer .phase-col-bullets li:before{background:var(--plan-phase-proditer-stroke)}.log-view{color:var(--ink)}.log-view .log-filters{top:calc(-1 * var(--space-6));z-index:5;background:var(--bg-page);margin:calc(-1 * var(--space-6)) calc(-1 * var(--space-8)) 20px;padding:var(--space-6) var(--space-8) 12px;flex-wrap:wrap;align-items:center;gap:12px;display:flex;position:sticky}.log-view .seg-count{font-family:var(--font-metric);color:var(--ink-subtle);margin-left:6px;font-size:10px}.log-view .costs-seg-btn.active .seg-count{color:var(--ink-muted)}.log-view .costs-seg{background:var(--bg-surface-2);border:var(--border-subtle);border-radius:6px;padding:2px;display:inline-flex}.log-view .costs-seg-btn{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:5px 12px;font-family:inherit;font-size:13px;transition:color .15s,background .15s}.log-view .costs-seg-btn:hover{color:var(--ink)}.log-view .costs-seg-btn.active{background:var(--bg-surface);color:var(--ink);box-shadow:0 0 0 1px var(--ink-subtle) inset}.log-view .log-feed{flex-direction:column;gap:12px;max-width:880px;display:flex}.log-view .commit-card{background:var(--bg-surface);border:var(--border-default);border-radius:10px;padding:16px 20px;transition:opacity .15s,background .15s}.log-view .card-meta-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.log-view .tag{font-family:var(--font-metric);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;border:1px solid;padding:3px 8px;font-size:10px;line-height:1.2}.log-view .tag-context{border-color:var(--signal);color:var(--signal);background:0 0}.log-view .tag-importance-routine,.log-view .tag-importance-notable,.log-view .tag-importance-milestone{border-color:var(--signal-tab);color:var(--signal-tab);background:0 0}.log-view .commit-time{font-family:var(--font-body);color:var(--ink-subtle);margin-left:auto;font-size:11px}.log-view .commit-date,.log-view .commit-sha{font-family:var(--font-metric);color:var(--ink-subtle);font-size:11px}.log-view .commit-headline{font-family:var(--font-display);color:var(--ink);margin:0 0 6px;font-size:15px;font-weight:500;line-height:1.35}.log-view .commit-summary{font-family:var(--font-body);color:var(--ink-muted);margin:0 0 12px;font-size:13px;line-height:1.55}.log-view .diff-stats{font-family:var(--font-metric);color:var(--ink-subtle);gap:16px;font-size:11px;display:flex}.log-view .diff-add{color:var(--ok)}.log-view .diff-rem{color:var(--alert)}.log-view .empty-state{text-align:center;color:var(--ink-subtle);border:1px dashed #7f7f7f4d;border-radius:10px;padding:40px 20px;font-size:13px}.log-view .back-to-top{background:var(--bg-header);border:var(--border-default);width:40px;height:40px;color:var(--ink-muted);cursor:pointer;z-index:50;-webkit-backdrop-filter:blur(8px);border-radius:50%;justify-content:center;align-items:center;transition:color .15s,transform .15s,border-color .15s;display:inline-flex;position:fixed;bottom:24px;right:24px}.log-view .back-to-top:hover{color:var(--ink);border-color:var(--ink-subtle);transform:translateY(-1px)}.log-view .back-to-top:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.log-view .back-to-top svg{stroke:currentColor;stroke-width:2px;fill:none;width:16px;height:16px}.costs-view{color:var(--ink)}.costs-view .costs-card{background:var(--bg-surface);border:var(--border-default);border-radius:10px;margin-bottom:16px;padding:20px 24px}.costs-view .costs-card-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.costs-view .costs-controls-cluster{align-items:center;gap:16px;display:inline-flex}.costs-view .costs-card-title{color:var(--ink);font-family:Fraunces,serif;font-size:15px;font-weight:500}.costs-view .costs-card-subtitle{color:var(--ink-subtle);margin-top:2px;font-size:12px}.costs-view .costs-seg{background:var(--bg-surface-2);border:var(--border-subtle);border-radius:6px;padding:2px;display:inline-flex}.costs-view .costs-seg-btn{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:5px 12px;font-family:inherit;font-size:13px;transition:color .15s,background .15s}.costs-view .costs-seg-btn:hover{color:var(--ink)}.costs-view .costs-seg-btn.active{background:var(--bg-surface);color:var(--ink);box-shadow:0 0 0 1px var(--ink-subtle) inset}.costs-view .costs-chart-row{grid-template-columns:minmax(0,1fr) 200px;align-items:stretch;gap:16px;transition:grid-template-columns .25s;display:grid}.costs-view .costs-chart-row.cutoff-collapsed{grid-template-columns:minmax(0,1fr) 36px}.costs-view .costs-chart-wrap{width:100%;min-width:0;height:280px;position:relative}.costs-view .cutoff-strip{background:var(--bg-surface-2);border:var(--border-subtle);border-radius:12px;flex-direction:column;justify-content:space-between;align-items:center;gap:16px;width:100%;min-width:0;padding:16px 14px;transition:padding .25s;display:flex;overflow:hidden}.costs-view .cutoff-strip[data-state=off]{padding:14px 4px}.costs-view .cutoff-heading{font-family:var(--font-metric);letter-spacing:.1em;color:var(--ink-muted);text-align:center;flex-shrink:0;font-size:11px;transition:writing-mode .15s}.costs-view .cutoff-strip[data-state=off] .cutoff-heading{writing-mode:vertical-rl;margin:8px 0;transform:rotate(180deg)}.costs-view .cutoff-bars{flex:1;justify-content:center;align-items:stretch;gap:14px;width:100%;min-width:0;min-height:120px;padding:6px 0;display:flex}.costs-view .cutoff-strip[data-state=off] .cutoff-bars{display:none}.costs-view .cutoff-bar-col{flex-direction:column;flex:1 1 0;align-items:center;gap:6px;min-width:0;max-width:70px;display:flex}.costs-view .cutoff-bar-spend{font-family:var(--font-metric);color:var(--ink);height:18px;font-size:15px;font-weight:600;line-height:18px}.costs-view .cutoff-bar-track-wrap{background:var(--bg-track);border-radius:4px;flex:1;width:8px;min-height:100px;position:relative}.costs-view .cutoff-bar-thumb{background:var(--ok);border:2px solid var(--bg-surface-2);border-radius:50%;width:18px;height:18px;transition:bottom .25s,background-color .15s;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 1px 3px #0000002e}.costs-view .cutoff-bar-thumb.ok{background:var(--ok)}.costs-view .cutoff-bar-thumb.warn{background:var(--warn)}.costs-view .cutoff-bar-thumb.alert{background:var(--alert)}.costs-view .cutoff-bar-ceiling{font-family:var(--font-metric);background:var(--bg-surface);border:var(--border-subtle);color:var(--ink);text-align:center;border-radius:6px;outline:none;width:56px;padding:3px 8px;font-size:11px;transition:border-color .15s,background .15s}.costs-view .cutoff-bar-ceiling:hover{border-color:var(--ink-subtle)}.costs-view .cutoff-bar-ceiling:focus{border-color:var(--signal);background:var(--bg-page)}.costs-view .cutoff-bar-label{color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.06em;font-size:10px}.costs-view .cutoff-switches{flex-direction:column;flex-shrink:0;gap:10px;width:100%;display:flex}.costs-view .cutoff-switch-row{justify-content:space-between;align-items:center;width:100%;display:flex}.costs-view .cutoff-switch-label{font-family:var(--font-metric);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:11px;transition:color .15s}.costs-view .cutoff-switch-label.is-armed{color:var(--alert)}.costs-view .cutoff-toggle{background:var(--ok);cursor:pointer;border:0;border-radius:9px;flex-shrink:0;width:32px;height:18px;padding:0;transition:background-color .15s;display:inline-block;position:relative}.costs-view .cutoff-toggle:hover{opacity:.9}.costs-view .cutoff-strip[data-state=off] .cutoff-toggle{background:var(--bg-track);border:.5px solid var(--ink-subtle)}.costs-view .cutoff-toggle-knob{background:#fff;border-radius:50%;width:14px;height:14px;transition:left .15s,background .15s;position:absolute;top:2px;left:2px}.costs-view .cutoff-strip[data-state=on] .cutoff-toggle-knob{left:16px}.costs-view .cutoff-strip[data-state=off] .cutoff-toggle-knob{background:var(--ink-subtle)}.costs-view .cutoff-bar-ceiling:disabled{opacity:.5;cursor:not-allowed}.costs-view .cutoff-test-toggle{cursor:pointer;background:0 0;border:0;flex-shrink:0;width:32px;height:18px;padding:0;display:inline-block;position:relative}.costs-view .cutoff-test-toggle-track{background:var(--bg-track);border:.5px solid var(--ink-subtle);border-radius:9px;transition:background-color .15s,border-color .15s;position:absolute;inset:0}.costs-view .cutoff-test-toggle[data-state=on] .cutoff-test-toggle-track{background:var(--alert);border-color:#0000}.costs-view .cutoff-test-toggle-knob{background:var(--ink-subtle);border-radius:50%;width:14px;height:14px;transition:left .15s,background .15s;position:absolute;top:2px;left:2px}.costs-view .cutoff-test-toggle[data-state=on] .cutoff-test-toggle-knob{background:#fff;left:16px}.costs-view .cutoff-strip[data-state=off] .cutoff-test-row{display:none}.costs-view .cutoff-strip[data-state=off] .cutoff-armed-row{justify-content:center}.costs-view .cutoff-strip[data-state=off] .cutoff-armed-row .cutoff-switch-label{display:none}.costs-view .costs-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.costs-view .costs-table th{text-align:left;color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;border-bottom:var(--border-subtle);padding:8px 10px;font-size:11px;font-weight:400}.costs-view .costs-table th.num{text-align:right}.costs-view .costs-table th.costs-name-col{width:32%}.costs-view .costs-table th.num{width:13.6%}.costs-view .costs-table td{border-bottom:var(--border-subtle);color:var(--ink);padding:10px}.costs-view .costs-table td.num{text-align:right;font-family:var(--font-metric);font-variant-numeric:tabular-nums}.costs-view .costs-table tr:last-child td{border-bottom:0}.costs-view .costs-name-cell{font-size:14px;font-weight:500}.costs-view .costs-total-row td{border-top:var(--border-default);color:var(--ink);border-bottom:0;padding-top:12px;padding-bottom:4px;font-weight:500}.costs-view .costs-total-row td.label{color:var(--ink-subtle);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:400}.pricing-view{color:var(--ink)}.pricing-table .model-id{font-family:var(--font-metric);color:var(--ink);font-size:12px}.pricing-table .provider-badge{background:var(--bg-surface-2);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-subtle);border-radius:4px;padding:2px 8px;font-size:11px;display:inline-block}.pricing-table .deployment-chip{background:var(--bg-surface-2);color:var(--ink);border-radius:4px;margin-right:4px;padding:2px 6px;font-size:11px;display:inline-block}.pricing-table .pill{text-transform:lowercase;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.pricing-table .pill--ok{background:color-mix(in srgb, var(--ok) 20%, transparent);color:var(--ok)}.pricing-table .pill--warn{background:color-mix(in srgb, var(--warn) 20%, transparent);color:var(--warn)}.pricing-table .pill--alert{background:color-mix(in srgb, var(--alert) 20%, transparent);color:var(--alert)}.pricing-table .pill--neutral{background:var(--bg-surface-2);color:var(--ink-subtle)}.pricing-table .muted{color:var(--ink-subtle)}.pricing-table .small{font-size:11px}.rate-value-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.rate-value-list li{justify-content:space-between;gap:12px;font-size:12px;display:flex}.rate-value-list .rate-dim{color:var(--ink-subtle)}.rate-value-list .rate-value{font-family:var(--font-metric);color:var(--ink)}.pricing-summary{margin-top:16px}.pricing-summary .summary-row{color:var(--ink-subtle);word-break:break-word;margin-top:6px;font-size:12px}.pricing-summary .summary-row strong{color:var(--ink);margin-right:6px}.drawer-mini-table{border-collapse:collapse;width:100%;margin-bottom:8px}.drawer-mini-table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-subtle);padding:4px 6px;font-size:11px;font-weight:400}.drawer-mini-table td{vertical-align:middle;padding:4px 6px}.drawer-input--small{width:100%;font-size:12px}.radio-group{gap:16px;display:flex}.radio-option{align-items:center;gap:6px;font-size:13px;display:flex}.rate-input-row{margin-top:8px}.warn-banner{background:color-mix(in srgb, var(--warn) 12%, transparent);border-left:3px solid var(--warn);color:var(--ink);margin-top:8px;padding:8px 12px;font-size:12px}.drawer-error{background:color-mix(in srgb, var(--alert) 12%, transparent);border-left:3px solid var(--alert);color:var(--ink);margin-top:12px;padding:8px 12px;font-size:12px}.releases-view{color:var(--ink)}.releases-view .releases-feed{flex-direction:column;gap:16px;max-width:900px;display:flex}.releases-view .release-card{background:var(--bg-surface);border:var(--border-default);border-radius:10px;padding:18px 22px}.releases-view .release-card-header{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.releases-view .release-version{font-family:var(--font-display);color:var(--ink);font-size:17px;font-weight:500}.releases-view .release-product-chip{font-family:var(--font-metric);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--signal);color:var(--signal);white-space:nowrap;background:0 0;padding:3px 8px;font-size:10px;line-height:1.2}.releases-view .release-status{font-family:var(--font-body);color:var(--ink-muted);align-items:center;gap:6px;margin-left:auto;font-size:12px;display:inline-flex}.releases-view .release-status:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.releases-view .release-status.uat{color:var(--warn)}.releases-view .release-status.live{color:var(--ok)}.releases-view .release-status.queued{color:var(--ink-subtle)}.releases-view .release-status.rejected{color:var(--alert)}.releases-view .journey{margin:4px 0 0 8px;padding-left:22px;position:relative}.releases-view .journey:before{content:"";background:var(--bg-track);width:1px;position:absolute;top:6px;bottom:6px;left:5px}.releases-view .journey-step{padding-bottom:16px;position:relative}.releases-view .journey-step:last-child{padding-bottom:0}.releases-view .journey-dot{background:var(--bg-surface);border:2px solid var(--signal-tab);border-radius:50%;width:11px;height:11px;position:absolute;top:4px;left:-22px}.releases-view .journey-step.is-current .journey-dot{background:var(--signal-tab);box-shadow:0 0 0 4px #7ba3c926}.releases-view .journey-step.uat-step .journey-dot{border-color:var(--warn)}.releases-view .journey-step-header{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.releases-view .journey-step-env{font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.1em;color:var(--ink);font-size:11px;font-weight:600}.releases-view .journey-step-env-sub{font-family:var(--font-body);color:var(--ink-subtle);font-size:11px}.releases-view .journey-step-time{font-family:var(--font-metric);color:var(--ink-subtle);margin-left:auto;font-size:11px}.releases-view .gate-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.releases-view .gate-list li{font-family:var(--font-body);color:var(--ink-muted);align-items:baseline;gap:8px;font-size:12.5px;display:flex}.releases-view .gate-list li:before{content:"✓";color:var(--ok);font-family:var(--font-metric);flex-shrink:0;width:12px;font-size:12px}.releases-view .gate-list li.gate-fail:before{content:"×";color:var(--alert)}.releases-view .gate-list .gate-detail{color:var(--ink-subtle);font-size:11px}.releases-view .uat-record{background:#d9a77c0f;border:1px solid #d9a77c40;border-radius:8px;margin-top:4px;padding:10px 14px}.releases-view .uat-record-who{font-family:var(--font-body);color:var(--ink);margin-bottom:4px;font-size:12.5px}.releases-view .uat-record-who strong{color:var(--ink);font-weight:500}.releases-view .uat-record-comment{font-family:var(--font-body);color:var(--ink-muted);font-size:12px;font-style:italic}.releases-view .uat-approve-row{border-top:1px dashed var(--bg-track);align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.releases-view .uat-approve-label{font-family:var(--font-body);color:var(--ink-muted);font-size:12.5px}.releases-view .uat-approve-btn{font-family:var(--font-body);border:1px solid var(--ok);color:var(--ok);cursor:pointer;background:0 0;border-radius:6px;margin-left:auto;padding:7px 14px;font-size:12.5px;transition:background .15s,color .15s}.releases-view .uat-approve-btn:hover{background:#8fcf8a1a}.releases-view .uat-approve-btn:focus-visible{outline:2px solid var(--ok);outline-offset:2px}.releases-view .uat-approve-btn:disabled{opacity:.5;cursor:not-allowed}.releases-view .uat-approve-btn.is-promote{border-color:var(--signal-tab);color:var(--signal-tab)}.releases-view .uat-approve-btn.is-promote:hover{background:#7ba3c91f}.releases-view .uat-approve-link{font-family:var(--font-body);color:var(--ink-subtle);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--ink-subtle);text-decoration-color:var(--ink-subtle);text-underline-offset:2px;background:0 0;border:0;padding:0;font-size:12px}.releases-view .uat-approve-link:hover{color:var(--ink-muted)}.releases-view .releases-context-banner{font-family:var(--font-body);color:var(--ink-muted);background:var(--bg-surface);border:var(--border-subtle);border-radius:8px;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:12px;display:flex}.releases-view .releases-context-banner .ctx-pill{font-family:var(--font-metric);text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-sm);background:var(--tag-staging-bg);color:var(--tag-staging-fg);border:1px solid var(--tag-staging-bd);padding:2px 8px;font-size:10px}.releases-view .releases-empty,.releases-view .releases-loading,.releases-view .releases-error{font-family:var(--font-body);color:var(--ink-muted);text-align:center;padding:24px;font-size:13px}.releases-view .releases-error{color:var(--alert)}.ceiling-banner{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);background:color-mix(in srgb, var(--alert) 18%, var(--bg-surface));color:var(--ink);border-left:3px solid var(--alert);font-family:var(--font-body);font-size:13px;line-height:1.5;display:flex}.ceiling-banner-icon{color:var(--alert);flex-shrink:0;font-size:18px;line-height:1}.ceiling-banner-text{word-break:break-word;flex:1}.ceiling-banner-link{appearance:none;font:inherit;color:var(--alert);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;margin:0;padding:0;text-decoration:underline}.ceiling-banner-link:hover,.ceiling-banner-link:focus{color:color-mix(in srgb, var(--alert) 80%, var(--ink));outline:none}
