:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#000;color:#f2f2f2;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #000000;--panel: #050505;--panel-strong: #080808;--line: #1d1d1d;--line-strong: #333333;--text: #f2f2f2;--muted: #8f8f8f;--faint: #595959;--accent: #ff1f2d;--accent-dim: #7a0e16;--accent-soft: rgba(255, 31, 45, .12);--good: #2fd66f;--warn: #ffb020;--bad: #ff1f2d}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg)}button,input,select{font:inherit}button{min-height:34px;border:1px solid var(--accent);border-radius:0;background:var(--accent);color:#fff;padding:0 12px;cursor:pointer;font-size:.84rem;font-weight:800}button:hover{background:#d91522;border-color:#ff4652}button:disabled{cursor:not-allowed;opacity:.45}button.secondary{border-color:var(--line-strong);background:#090909;color:var(--text)}button.secondary:hover{border-color:var(--accent);background:var(--accent-soft)}button.danger{border-color:var(--bad);background:#1a0507;color:#ff8088}button.danger:hover{background:var(--bad);color:#fff}button.small{min-height:28px;padding:0 9px;font-size:.78rem}input,select{width:100%;min-height:36px;border:1px solid var(--line-strong);border-radius:0;background:#030303;color:var(--text);padding:0 10px}input:focus,select:focus{border-color:var(--accent);outline:1px solid var(--accent)}label{display:grid;gap:6px;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase}h1,h2,h3,h4,p{margin:0}h1{font-size:1.36rem;letter-spacing:0}h2{font-size:.98rem;letter-spacing:0}h3{font-size:.9rem;letter-spacing:0}h4{font-size:.84rem}table{width:100%;border-collapse:collapse;font-size:.84rem}th,td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{color:var(--faint);font-size:.72rem;font-weight:900;text-transform:uppercase}td strong,.tenant-row strong,.event-row strong{display:block;color:var(--text)}.app-shell{display:grid;grid-template-columns:218px 1fr;min-height:100vh;background:var(--bg)}.sidebar{display:flex;flex-direction:column;gap:20px;border-right:1px solid var(--line);background:#000;padding:18px 12px}.brand{display:flex;align-items:center;gap:10px}.brand-mark{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--accent);border-radius:0;background:#050505;color:var(--accent);font-size:.78rem;font-weight:900}.brand strong{display:block;font-size:.95rem}.brand span,.cell-sub,.tenant-row span,.muted,.event-row span{color:var(--muted);font-size:.78rem}.nav-list{display:grid;gap:2px}.nav-list button{justify-content:flex-start;width:100%;border-color:transparent;background:transparent;color:var(--muted);text-align:left}.nav-list button:hover,.nav-list button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.main{min-width:0;overflow-x:hidden;padding:18px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.topbar-actions,.button-row,.timeline-controls,.row-status,.actions-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.timeline-controls input{width:154px}.eyebrow{color:var(--accent);font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.token-chip{border:1px solid var(--line-strong);border-radius:0;padding:7px 9px;color:var(--muted);font-size:.78rem;background:#030303}.view-stack{display:grid;gap:12px;min-width:0}.panel,.metric-card{min-width:0;border:1px solid var(--line);border-radius:0;background:var(--panel);padding:12px}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.metric-card{display:grid;gap:4px;min-height:82px}.metric-card span,.info-item span{color:var(--faint);font-size:.68rem;font-weight:900;text-transform:uppercase}.metric-card strong{color:var(--text);font-size:1.48rem;line-height:1.05}.metric-card small{color:var(--muted)}.split-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr);gap:12px}.tenants-grid{grid-template-columns:minmax(260px,.38fr) minmax(0,1fr)}.tenant-list,.detail-stack,.stack-form,.env-list{display:grid;gap:6px}.tenant-list.compact{gap:4px}.tenant-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:1px solid var(--line);border-radius:0;background:#020202;padding:9px 10px;text-align:left;color:inherit}button.tenant-row{min-height:auto}.tenant-row.selectable:hover,.tenant-row.selectable.selected{border-color:var(--accent);background:var(--accent-soft)}.detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:10px;border-bottom:1px solid var(--line)}.detail-header p{color:var(--muted);margin-top:2px}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.info-item{display:grid;gap:4px;min-width:0;border:1px solid var(--line);border-radius:0;padding:9px;background:#020202}.info-item strong{overflow-wrap:anywhere}.code-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.code-block{min-width:0;border:1px solid var(--line);border-radius:0;background:#020202}.code-block h3{padding:8px 10px;border-bottom:1px solid var(--line);color:var(--muted)}.code-block pre{max-height:320px;margin:0;overflow:auto;padding:10px;color:#cfcfcf;font-size:.74rem;line-height:1.45}.table-wrap{width:100%;overflow-x:auto}tr.clickable{cursor:pointer}tr.clickable:hover{background:var(--accent-soft)}.filters,.form-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:8px;align-items:end}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stack-form{margin-top:10px;border-top:1px solid var(--line);padding-top:10px}.tag-list{display:flex;flex-wrap:wrap;gap:6px;color:var(--muted)}.tag-list span{border:1px solid var(--line-strong);border-radius:0;background:#020202;padding:5px 8px;color:var(--text);font-size:.78rem}.pill{display:inline-flex;align-items:center;min-height:22px;border:1px solid currentColor;border-radius:0;padding:0 7px;background:#030303;font-size:.68rem;font-weight:900;text-transform:uppercase}.pill.good{color:var(--good)}.pill.warn{color:var(--warn)}.pill.bad{color:var(--bad)}.pill.neutral{color:var(--muted)}.run-detail{display:grid;gap:8px;margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.event-list{display:grid;gap:6px}.event-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:0;padding:8px 10px;background:#020202}.timeline-scroll{width:100%;max-width:100%;overflow-x:auto;border-top:1px solid var(--line);scrollbar-color:var(--accent) #080808}.timeline-scroll::-webkit-scrollbar{height:12px}.timeline-scroll::-webkit-scrollbar-track{background:#080808}.timeline-scroll::-webkit-scrollbar-thumb{background:var(--accent)}.period-timeline{min-width:100%;overflow:hidden}.period-axis,.period-lane{display:grid;grid-template-columns:150px minmax(560px,1fr)}.period-axis{min-height:42px;border-bottom:1px solid var(--line);color:var(--faint);font-size:.72rem;font-weight:900;text-transform:uppercase}.period-axis-label,.period-lane-label{position:sticky;left:0;z-index:4;border-right:1px solid var(--line);background:#050505;padding:12px 12px 10px}.period-axis-track,.period-track{position:relative}.period-axis-track{min-height:42px}.period-tick{position:absolute;top:0;bottom:0;width:1px;background:var(--line-strong)}.period-tick span{position:absolute;top:11px;left:6px;white-space:nowrap}.period-lane{border-bottom:1px solid var(--line)}.period-lane-label{color:var(--text);font-size:.8rem;font-weight:900;overflow-wrap:anywhere}.period-track{background-image:linear-gradient(to right,var(--line) 1px,transparent 1px);background-size:calc((100% - 1px) / 24) 100%}.schedule-band{position:absolute;inset:0 0 auto;height:62px;border-bottom:1px solid var(--line)}.schedule-marker{position:absolute;z-index:2;display:grid;width:22px;min-width:22px;height:22px;min-height:22px;place-items:center;transform:translate(-50%);border:1px solid var(--accent);border-radius:0;background:#050505;color:var(--accent);padding:0;font-size:.68rem;font-weight:900;line-height:1}.schedule-marker.next_trigger{border-color:var(--warn);color:var(--warn)}.schedule-marker:hover,.schedule-marker.selected{z-index:5;background:var(--accent);color:#fff;box-shadow:0 0 0 1px #fff}.schedule-marker.next_trigger:hover,.schedule-marker.next_trigger.selected{background:var(--warn);color:#000}.period-bar{position:absolute;display:grid;align-content:center;min-width:16px;height:32px;overflow:hidden;border:1px solid var(--accent);border-radius:0;background:var(--accent-soft);padding:4px 7px 4px 32px;color:var(--text);text-align:left;white-space:nowrap}.actual-start-marker{position:absolute;top:4px;bottom:4px;left:5px;display:grid;width:20px;place-items:center;border:1px solid var(--accent);background:#000;color:var(--accent);font-size:.68rem;font-weight:900;line-height:1}.period-bar:hover,.period-bar.selected{z-index:3;box-shadow:0 0 0 1px #fff}.period-bar.completed{border-color:var(--good);background:#2fd66f1a}.period-bar.failed{border-color:var(--bad);background:#ff1f2d24}.period-bar.running{border-color:var(--warn);background:#ffb0201f}.period-bar.stale{border-color:var(--line-strong);background:repeating-linear-gradient(135deg,#ffffff0a,#ffffff0a 6px,#ff1f2d14 6px 12px)}.period-tenant{color:var(--text);font-size:.72rem;font-weight:900;line-height:1.05;overflow:hidden;text-overflow:ellipsis}.period-meta{color:var(--muted);font-size:.68rem;overflow:hidden;text-overflow:ellipsis}.timeline-legend{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:.76rem;font-weight:800;text-transform:uppercase}.legend-icon{display:inline-grid;width:18px;height:18px;place-items:center;margin-right:5px;border:1px solid var(--accent);color:var(--accent);font-size:.62rem;font-style:normal;line-height:1}.legend-icon.next_trigger{border-color:var(--warn);color:var(--warn)}.legend-icon.actual{background:#000}.login-page{display:grid;min-height:100vh;place-items:center;padding:24px;background:#000}.login-panel{display:grid;width:min(100%,430px);gap:14px;border:1px solid var(--line-strong);border-radius:0;background:#030303;padding:20px;box-shadow:none}.login-brand{margin-bottom:2px}.switch-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.check-row{display:inline-flex;grid-template-columns:auto 1fr;align-items:center;gap:8px;color:var(--muted);text-transform:none}.check-row input{width:16px;min-height:16px;accent-color:var(--accent)}.empty-state,.error-block{border:1px dashed var(--line-strong);border-radius:0;padding:14px;color:var(--muted);text-align:center}.empty-state.loading{background:#020202}.error-block{border-style:solid;border-color:var(--bad);background:#ff1f2d14;color:#ff9aa1;text-align:left}@media(max-width:1100px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:5;border-right:0;border-bottom:1px solid var(--line)}.nav-list{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-grid,.split-grid,.tenants-grid,.code-grid{grid-template-columns:1fr}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.main{padding:12px}.topbar,.detail-header,.tenant-row,.event-row{align-items:stretch;flex-direction:column}.nav-list,.filters,.form-grid,.info-grid{grid-template-columns:1fr}.event-row{display:grid;grid-template-columns:1fr}}
