html,body{margin:0;padding:0;font-family:Iosevka Aile,IBM Plex Sans,sans-serif;background:#eef2f7;color:#142033}body{min-height:100vh}.dashboard-shell{max-width:1180px;margin:0 auto;padding:20px 20px 56px}.app-nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:4px;margin:0 -20px 22px;padding:10px 20px;overflow-x:auto;background:#eef2f7eb;border-bottom:1px solid rgba(20,32,51,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.app-nav a{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:8px;color:#405169;text-decoration:none;font-size:13px;font-weight:650;white-space:nowrap}.app-nav a:hover{background:#1420330f;color:#142033}.app-nav a[aria-current=page]{background:#142033;color:#fff}.hero{margin-bottom:20px}.compact-hero{margin-bottom:18px}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:#6e5d37}.hero h1{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:0}.lede{max-width:64ch;color:#3d4e63}.hero-bar{display:flex;align-items:center;gap:12px;margin-top:12px}.hero-meta{font-size:12px;color:#6f7c90;letter-spacing:.02em}.text-link{color:#2563eb;font-size:13px;font-weight:650;text-decoration:none;white-space:nowrap}.text-link:hover{text-decoration:underline}.summary-grid,.two-up,.task-grid,.overview-grid,.summary-split{display:grid;gap:16px}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.two-up{grid-template-columns:1.15fr 1fr}.task-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-split{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:16px}.panel,.metric-card,.task-card,.subpanel,.overview-stat,.timeline-item,.disabled-item,.empty-state{background:#ffffffeb;border:1px solid rgba(20,32,51,.1);border-radius:8px;box-shadow:0 10px 24px #1420330f}.metric-card,.task-card,.overview-stat,.subpanel,.timeline-item,.disabled-item,.empty-state{padding:16px}.panel{padding:18px;margin-bottom:18px}.panel-heading{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.panel-kicker,.metric-label,dt,.empty-meta,.timeline-scope{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#6f7c90}.panel h2,.subpanel h3{margin:0}.stat-label{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#6f7c90}.metric-value,.stat-value{margin:10px 0 8px;font-size:clamp(1.4rem,3vw,2rem);font-weight:700;line-height:1.05}.metric-meta,.timeline-meta,dd,.empty-state p{margin:0;color:#405169;font-size:13px;line-height:1.5}[data-tone=good]{color:#1d6b47}[data-tone=warn]{color:#a66b00}[data-tone=bad]{color:#b63e2f}[data-tone=neutral]{color:#42566d}.card-topline,.disabled-item,.timeline-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task-name,.timeline-title,.empty-title{margin:0;font-size:15px;font-weight:700}.status-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;background:#1420330f;color:#31455b;white-space:nowrap}.status-pill[data-tone=good]{background:#1d6b471f;color:#1d6b47}.status-pill[data-tone=warn]{background:#a66b001f;color:#8f5d00}.status-pill[data-tone=bad]{background:#b63e2f1f;color:#b63e2f}.kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin:14px 0 0}.kv-grid.compact{margin-top:10px}.kv-grid div{min-width:0}dd{font-family:Iosevka Term,IBM Plex Mono,monospace;word-break:break-word}.stack-list{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:10px}.stack-list li{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid rgba(20,32,51,.08);font-size:14px}.stack-list li:last-child{border-bottom:0;padding-bottom:0}.guard-stats-subpanel{margin-top:16px}.runtime-policy-subpanel{grid-column:1 / -1}.runtime-matrix-table{min-width:1080px}.runtime-meta-value{font-size:1rem;line-height:1.4;word-break:break-word}.guard-stats-table-wrap{margin-top:10px;overflow-x:auto}.guard-stats-table{width:100%;min-width:520px;border-collapse:collapse;font-size:13px;margin-top:10px}.guard-stats-table th,.guard-stats-table td{padding:8px 6px;border-bottom:1px solid rgba(20,32,51,.08);text-align:left}.guard-stats-table tbody tr:last-child td{border-bottom:0}.guard-stats-table th{text-transform:uppercase;letter-spacing:.06em;font-size:11px;color:#6f7c90;font-weight:600;white-space:nowrap}.guard-stats-table .num{text-align:right;font-family:Iosevka Term,IBM Plex Mono,monospace;white-space:nowrap}.guard-stats-table .fail{color:#b63e2f}.compact-empty{margin-top:10px;padding:12px}.timeline-main,.disabled-side{min-width:0}.disabled-side{text-align:right}.empty-state{color:#4b5c72}.empty-state-error{border-color:#b63e2f33;background:#fff6f4f5}.stacked-cards{display:grid;gap:10px}.panel-controls{display:flex;align-items:center;gap:10px}.panel-controls select{padding:6px 10px;border:1px solid rgba(20,32,51,.15);border-radius:8px;font-size:13px;background:#ffffffe6;color:#142033}.runs-table{display:grid;gap:0}.run-row{display:grid;grid-template-columns:2fr .8fr 1.8fr .9fr .5fr 2fr;gap:8px;padding:10px 14px;border-bottom:1px solid rgba(20,32,51,.06);align-items:center;font-size:13px}.run-row:hover{background:#14203308}.run-row.run-header{text-transform:uppercase;letter-spacing:.06em;font-size:11px;color:#6f7c90;font-weight:600;border-bottom:1px solid rgba(20,32,51,.1)}.run-row.run-header:hover{background:transparent}.run-cell{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-cell.run-name{font-weight:600}.run-cell.run-time,.run-cell.run-duration{font-family:Iosevka Term,IBM Plex Mono,monospace;font-size:12px}.run-cell.run-exit{font-family:Iosevka Term,IBM Plex Mono,monospace;text-align:center}.run-has-error{cursor:pointer}.run-error{padding:10px 14px 12px;margin:0 14px 4px;background:#fff6f4f5;border:1px solid rgba(182,62,47,.15);border-radius:8px;font-family:Iosevka Term,IBM Plex Mono,monospace;font-size:12px;color:#b63e2f;white-space:pre-wrap;word-break:break-word;line-height:1.5}.load-more-bar{display:flex;justify-content:center;padding:12px 0 4px}.btn-secondary{padding:8px 20px;border:1px solid rgba(20,32,51,.15);border-radius:8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;background:#1420330a;color:#31455b;cursor:pointer;transition:background .15s}.btn-secondary:hover{background:#14203314}.run-running{animation:run-pulse 2s ease-in-out infinite}@keyframes run-pulse{0%,to{background:#a66b000a}50%{background:#a66b001a}}@media(max-width:920px){.summary-grid,.two-up{grid-template-columns:1fr 1fr}}@media(max-width:680px){.dashboard-shell{padding:20px 14px 36px}.app-nav{margin:0 -14px 18px;padding:8px 14px}.summary-grid,.two-up,.overview-grid,.kv-grid{grid-template-columns:1fr}.card-topline,.disabled-item,.timeline-item{flex-direction:column;align-items:flex-start}.disabled-side{text-align:left}.hero-bar{flex-direction:column;align-items:flex-start;gap:8px}.run-row{grid-template-columns:1fr 1fr;gap:4px 12px}.guard-stats-table-wrap{margin-right:-4px}.run-row.run-header{display:none}.run-cell.run-name,.run-cell.run-status{grid-column:span 1}.run-cell.run-time{grid-column:span 2}}.chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;margin-top:1.5rem}.chart-card{background:#fff9;border-radius:12px;padding:1.25rem;box-shadow:0 1px 3px #0000000f}.chart-card h3{font-size:.875rem;font-weight:600;margin:0;color:#374151}.chart-subtitle{margin:.15rem 0 .75rem;color:#6b7280;font-size:.75rem}.chart-card canvas{width:100%!important;max-height:280px}.heatmap-table{width:100%;border-collapse:collapse;font-size:.75rem}.heatmap-table th,.heatmap-table td{padding:.375rem .5rem;text-align:center;border:1px solid #e5e7eb}.heatmap-table th{background:#f9fafb;font-weight:600}.heatmap-model{text-align:left!important;font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.heatmap-cell{background:color-mix(in srgb,#1e40af var(--intensity, 0%),white);color:color-mix(in srgb,white calc(var(--intensity, 0%) - 50%),#1f2937)}.heatmap-cell small{opacity:.7}.reason-filter-bar{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.reason-filter{padding:7px 10px;border:1px solid rgba(20,32,51,.12);border-radius:999px;background:#ffffffbf;color:#405169;cursor:pointer;font-size:12px;font-weight:650}.reason-filter[data-active=true]{background:#142033;color:#fff}.reason-filter span{margin-left:4px;opacity:.72}.event-table-wrap{overflow-x:auto}.event-table{width:100%;min-width:980px;border-collapse:collapse;font-size:13px}.event-table th,.event-table td{padding:9px 8px;border-bottom:1px solid rgba(20,32,51,.08);text-align:left;vertical-align:top}.event-table th{color:#6f7c90;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.event-table .num{text-align:right}.mono-cell{font-family:Iosevka Term,IBM Plex Mono,monospace;white-space:nowrap}.request-link{padding:0;border:0;background:transparent;color:#2563eb;cursor:pointer;font:inherit;font-family:Iosevka Term,IBM Plex Mono,monospace}.request-link:hover{text-decoration:underline}.reason-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#1420330f;color:#31455b;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.reason-badge[data-tone=good]{background:#1d6b471f;color:#1d6b47}.reason-badge[data-tone=warn]{background:#a66b001f;color:#8f5d00}.reason-badge[data-tone=bad]{background:#b63e2f1f;color:#b63e2f}.timeline-panel{margin-top:16px;padding:16px;border:1px solid rgba(20,32,51,.1);border-radius:10px;background:#f6f8fbd1}.timeline-panel-head,.attempt-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.timeline-panel h3{margin:0 0 4px}.attempt-list{display:grid;gap:10px;margin-top:14px}.timeline-attempt{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:12px;border:1px solid rgba(20,32,51,.08);border-radius:10px;background:#ffffffc7}.attempt-index{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#142033;color:#fff;font-family:Iosevka Term,IBM Plex Mono,monospace;font-size:12px;font-weight:700}.attempt-error{margin:8px 0 0;color:#b63e2f;font-size:12px;line-height:1.45}@media(max-width:860px){.chart-grid{grid-template-columns:1fr}}
