@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&display=swap');

:root { color-scheme:dark; --bg:#11181e; --surface:#1b252d; --surface-2:#252f38; --surface-3:#34414b; --border:#3d4b55; --border-soft:#303d47; --text:#f2f5f7; --muted:#b5c2cc; --faint:#8799a5; --accent-1:#ffab32; --accent-2:#003c5a; --accent-5:#ef5350; --teal:#75bfdf; --blue:#75bfdf; --amber:var(--accent-1); --red:#ff6b6b; --shadow:0 20px 60px #00000055; }
* { box-sizing:border-box; }
html { font-size:12pt; background:var(--bg); scroll-behavior:smooth; }
body { margin:0; min-width:320px; color:var(--text); background:var(--bg); font:1rem/1.5 'DM Sans', system-ui, sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button, input { font:inherit; }
button { cursor:pointer; }
.shell { display:flex; min-height:100vh; }
.sidebar { width:252px; flex:0 0 252px; min-height:100vh; padding:25px 18px 20px; background:#161f26; border-right:1px solid var(--border-soft); display:flex; flex-direction:column; }
.brand { display:flex; align-items:center; gap:11px; padding:0 12px; margin:0 0 48px; letter-spacing:-.03em; }
.brand strong { display:block; font-size:1.5714rem; line-height:20px; font-weight:700; }
.brand small { display:block; margin-top:4px; color:var(--faint); font:0.7143rem 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.11em; }
.brand-mark { width:29px; height:29px; display:flex; align-items:flex-end; justify-content:center; gap:3px; padding:5px; background:var(--teal); border-radius:9px; transform:rotate(-8deg); }
.brand-mark span { width:4px; border-radius:2px; background:#0c3c3d; display:block; }.brand-mark span:nth-child(1){height:8px}.brand-mark span:nth-child(2){height:14px}.brand-mark span:nth-child(3){height:18px}
.sidebar-label { margin:0 12px 12px; color:#4d5f73; font:0.7143rem 'DM Mono',monospace; letter-spacing:.14em; text-transform:uppercase; }.sidebar-label-bottom{margin-top:auto}
.nav-stack { display:flex; flex-direction:column; gap:4px; }.nav-link { display:flex; align-items:center; gap:12px; padding:11px 12px; border:1px solid transparent; border-radius:9px; color:var(--muted); font-size:0.9286rem; transition:.18s; }.nav-link:hover{background:var(--surface);color:var(--text)}.nav-link.active{color:var(--text);background:#34414b;border-color:#485660;box-shadow:inset 3px 0 var(--teal)}.nav-icon{width:16px;color:#687b91;font-size:1.2143rem;text-align:center}.nav-link.active .nav-icon{color:var(--teal)}.nav-count{margin-left:auto;min-width:20px;padding:1px 5px;border-radius:20px;color:#1b252d;background:var(--amber);font:0.7857rem 'DM Mono',monospace;text-align:center}
.system-card { display:flex; gap:10px; align-items:center; margin:4px 6px 22px; padding:11px 10px; border:1px solid var(--border-soft); border-radius:9px; background:#1f2931; }.system-card strong,.system-card small{display:block}.system-card strong{font-size:0.8571rem}.system-card small{color:var(--faint);font-size:0.7857rem;margin-top:2px}.system-dot,.live-indicator i,.sync-pill i,.health-chip i,.stream-state i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 3px #ffab321c}.sidebar-footer{display:flex;align-items:center;gap:9px;padding:14px 7px 0;border-top:1px solid var(--border-soft)}.avatar{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;color:#102027;background:#ffba59;font-size:0.8571rem;font-weight:700}.user-label{flex:1;min-width:0}.user-label strong,.user-label small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-label strong{font-size:0.8571rem}.user-label small{margin-top:1px;color:var(--faint);font:0.7143rem 'DM Mono',monospace;text-transform:uppercase}.icon-button{border:0;background:transparent;color:#73869a;font-size:1.2857rem}.icon-button:hover{color:var(--text)}
.main-content{flex:1;min-width:0}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 48px;border-bottom:1px solid var(--border-soft)}.breadcrumb{display:flex;align-items:center;gap:10px;color:#647589;font-size:0.8571rem}.breadcrumb b{font-weight:400;color:#37485c}.breadcrumb strong{color:#d8e1eb;font-weight:500}.breadcrumb a:hover{color:var(--teal)}.topbar-actions{display:flex;align-items:center;gap:22px}.live-indicator,.sync-pill,.stream-state{display:flex;align-items:center;gap:8px;color:#a2b3c6;font:0.7857rem 'DM Mono',monospace}.live-indicator i{width:6px;height:6px}.topbar-date{color:#4e6074;font:0.7143rem 'DM Mono',monospace}.mobile-menu{display:none;border:0;background:none;color:var(--muted);font-size:1.4286rem}.content-wrap{max-width:1440px;margin:0 auto;padding:44px 48px 72px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}.eyebrow{margin-bottom:8px;color:var(--teal);font:0.7143rem 'DM Mono',monospace;letter-spacing:.15em;text-transform:uppercase}.page-heading h1{margin:0;font-size:2.0714rem;line-height:1.15;letter-spacing:-.035em}.page-heading p{margin:9px 0 0;color:var(--muted);font-size:0.9286rem}.heading-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.sync-pill{padding:8px 11px;border:1px solid var(--border);border-radius:100px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 15px;border:1px solid transparent;border-radius:7px;font-size:0.8571rem;font-weight:600;transition:.18s}.button span{font-size:1.1429rem;line-height:10px}.button-secondary{color:#d3deea;background:var(--surface-2);border-color:var(--border)}.button-secondary:hover{background:var(--surface-3);border-color:#38506a}.button-primary{color:#071b1b;background:var(--teal)}.button-primary:hover{background:#ffc064}.count-badge,.panel-count{padding:7px 10px;border:1px solid var(--border);border-radius:100px;color:var(--muted);font:0.7143rem 'DM Mono',monospace}.mono,code{font-family:'DM Mono',monospace;font-size:.9em}.muted{color:var(--faint)}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px}.metric-card{padding:18px 19px 17px;border:1px solid var(--border);border-radius:10px;background:linear-gradient(145deg,#222e37,#1b252d);box-shadow:0 8px 25px #02060c18}.metric-card.metric-accent{border-color:#28515a;background:linear-gradient(145deg,#303d47,#1f2931)}.metric-card.metric-warning{border-color:#554429}.metric-top{display:flex;align-items:center;justify-content:space-between;color:#91a0b2;font:0.7857rem 'DM Mono',monospace;letter-spacing:.01em}.metric-card>strong{display:block;margin:13px 0 3px;color:#f5f8fb;font-size:2.0714rem;line-height:1;font-weight:500;letter-spacing:-.06em}.metric-card>strong.metric-word{text-transform:capitalize;font-size:1.6429rem;letter-spacing:-.04em}.metric-card small{color:#607188;font-size:0.7857rem}.metric-symbol{color:#ffba59;font-size:1.2857rem}.symbol-blue{color:var(--blue)}.symbol-green{color:var(--teal)}.symbol-red{color:var(--red)}.status-dot{width:6px;height:6px;display:inline-block;margin-right:5px;border-radius:50%;background:var(--faint)}.status-dot.running{background:var(--teal);box-shadow:0 0 0 3px #ffab321a}.status-dot.completed{background:var(--teal)}.status-dot.failed{background:var(--red)}
.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(320px,.8fr);gap:18px;margin-bottom:18px}.panel{min-width:0;padding:22px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.panel-heading h2{margin:0;font-size:1.2143rem;letter-spacing:-.025em}.panel-heading .eyebrow{margin-bottom:5px}.panel-caption{color:var(--faint);font:0.7143rem 'DM Mono',monospace}.text-link,.row-link{color:var(--teal);font-size:0.7857rem}.text-link span{font-size:1.0714rem}.text-link:hover,.row-link:hover{color:#ffd18a}.run-list{margin:0 -22px}.run-row{display:flex;align-items:center;gap:13px;padding:13px 22px;border-top:1px solid var(--border-soft);transition:.15s}.run-row:hover{background:#2e3b45}.run-status{display:inline-block;flex:none;width:8px;height:8px;border-radius:50%;background:var(--faint)}.run-status.status-running{background:var(--teal);box-shadow:0 0 0 4px #ffab3218}.run-status.status-completed{background:var(--teal)}.run-status.status-partial{background:var(--amber)}.run-status.status-failed{background:var(--red)}.run-main{flex:1;min-width:0}.run-main strong,.run-main small,.run-count strong,.run-count small{display:block}.run-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.8571rem}.run-main small,.run-count small{margin-top:3px;color:var(--faint);font:0.7143rem 'DM Mono',monospace}.run-count{text-align:right}.run-count strong{font-size:0.8571rem;font-weight:500}.status-label{display:inline-flex;padding:4px 7px;border-radius:4px;font:0.7143rem 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.03em}.label-running{color:var(--teal);background:#ffab3215}.label-completed{color:var(--teal);background:#ffab3215}.label-partial{color:var(--amber);background:#ffab3215}.label-failed{color:var(--red);background:#ef535015}.row-arrow{color:#53657a;font-size:1.0714rem}.alert-list{margin:0 -4px}.alert-row{display:flex;gap:11px;padding:12px 4px;border-top:1px solid var(--border-soft)}.alert-row:first-child{border-top:0;padding-top:2px}.alert-icon{display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:6px;font:0.8571rem 'DM Mono',monospace}.alert-critical{color:var(--red);background:#ef535014}.alert-warning{color:var(--amber);background:#ffab3214}.alert-row strong{display:block;font-size:0.8571rem}.alert-row p{margin:3px 0;color:#9ba9b9;font-size:0.7857rem;line-height:1.35}.alert-row small{color:var(--faint);font:0.7143rem 'DM Mono',monospace}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.collection-card{padding:16px;border:1px solid var(--border-soft);border-radius:8px;background:#222e37;transition:.18s}.collection-card:hover{border-color:#36566a;transform:translateY(-1px)}.collection-card-top{display:flex;align-items:center;justify-content:space-between}.collection-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;color:#ffe0b5;background:#ffab321b;font:600 0.8571rem 'DM Mono',monospace}.collection-avatar.small{width:28px;height:28px;flex:none}.health-chip{display:inline-flex;align-items:center;gap:6px;color:#ffbd63;font:0.6429rem 'DM Mono',monospace;text-transform:uppercase}.health-chip.large{padding:8px 11px;border:1px solid #315b59;border-radius:100px}.health-chip i{width:5px;height:5px}.collection-card h3{margin:17px 0 4px;font-size:1rem}.collection-card p{height:21px;margin:0;overflow:hidden;color:var(--faint);font:0.7143rem 'DM Mono',monospace;text-overflow:ellipsis;white-space:nowrap}.collection-meta{display:flex;align-items:center;gap:12px;margin-top:17px;padding-top:11px;border-top:1px solid var(--border-soft);color:var(--faint);font-size:0.7143rem}.collection-meta b{color:#c5d3e0;font-weight:500}.collection-meta .row-arrow{margin-left:auto}.empty-state{display:grid;place-items:center;padding:45px 20px;color:var(--faint);text-align:center}.empty-state.compact{padding:31px 15px}.empty-state>span{margin-bottom:8px;color:#496075;font-size:1.6429rem}.empty-state strong{color:#aab8c7;font-size:0.9286rem}.empty-state p{max-width:350px;margin:5px 0 0;color:#65758a;font-size:0.7857rem}.empty-state code{color:var(--teal)}
.table-wrap{overflow:auto;margin:0 -6px}.data-table{width:100%;border-collapse:collapse;min-width:680px}.data-table th{padding:0 10px 12px;color:#65778c;font:0.7143rem 'DM Mono',monospace;font-weight:400;text-align:left;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.data-table td{padding:13px 10px;border-top:1px solid var(--border-soft);color:#b8c5d2;font-size:0.8571rem;white-space:nowrap}.data-table td time{color:#9baabd;font:0.7143rem 'DM Mono',monospace}.table-primary{display:flex;align-items:center;gap:10px}.table-primary>span:last-child{display:block}.table-primary strong,.table-primary small{display:block}.table-primary strong{color:#e6edf4;font-size:0.8571rem}.table-primary small{margin-top:2px;color:var(--faint);font:0.7143rem 'DM Mono',monospace}.type-pill{padding:4px 6px;border:1px solid var(--border);border-radius:4px;color:var(--muted);font:0.7143rem 'DM Mono',monospace}.info-callout{display:flex;gap:12px;margin-top:18px;padding:15px 17px;border:1px solid #46535e;border-radius:9px;background:#1f2931}.callout-icon{display:grid;place-items:center;flex:none;width:20px;height:20px;border:1px solid #4b8b87;border-radius:50%;color:var(--teal);font:0.7857rem 'DM Mono',monospace}.info-callout strong{font-size:0.8571rem}.info-callout p{margin:3px 0 0;color:#78909e;font-size:0.7857rem}.compact-metrics{grid-template-columns:repeat(3,1fr)}.collection-columns{grid-template-columns:1.2fr .8fr}.unit-list{margin:0 -5px}.unit-row{display:flex;align-items:center;gap:11px;padding:12px 5px;border-top:1px solid var(--border-soft)}.unit-row:first-child{border-top:0}.unit-health{width:7px;height:7px;flex:none;border-radius:50%;background:#667385}.unit-health.seen{background:var(--teal);box-shadow:0 0 0 4px #ffab3218}.unit-row>div{flex:1;min-width:0}.unit-row strong,.unit-row small{display:block}.unit-row strong{font-size:0.8571rem}.unit-row small,.unit-last,.unit-counters{margin-top:2px;color:var(--faint);font:0.7143rem 'DM Mono',monospace}.unit-last,.unit-counters{flex:none}.run-heading{margin-bottom:24px}.run-heading .eyebrow .mono{margin-left:8px;color:#6f859e;letter-spacing:0}.slash{color:#53657a;font-weight:400}.run-status-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px;padding:15px 18px;border:1px solid var(--border);border-radius:9px;background:#202b33}.run-status-banner>div{display:flex;align-items:center;gap:10px}.run-status-banner strong,.run-status-banner small{display:block}.run-status-banner strong{font-size:0.8571rem}.run-status-banner small{margin-top:2px;color:var(--faint);font:0.7143rem 'DM Mono',monospace}.status-banner-running{border-color:#29545a;background:#252f38}.status-banner-failed{border-color:#55324b;background:#252f38}.banner-pulse{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px #ffab3220}.status-banner-failed .banner-pulse{background:var(--red);box-shadow:0 0 0 4px #ef535020}.run-status-banner>span:last-child{color:#6f8397;font:0.7143rem 'DM Mono',monospace}.run-metrics{grid-template-columns:repeat(4,1fr)}.run-columns{grid-template-columns:1.1fr .9fr}.artifact-list{margin:0 -5px}.artifact-row{display:flex;align-items:center;gap:10px;padding:11px 5px;border-top:1px solid var(--border-soft)}.artifact-row:first-child{border-top:0}.artifact-row>span:nth-child(2){flex:1;min-width:0}.artifact-row strong,.artifact-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.artifact-row strong{font-size:0.8571rem}.artifact-row small{margin-top:2px;color:var(--faint);font:0.7143rem 'DM Mono',monospace}.artifact-row>span:last-child{color:var(--teal)}.artifact-icon{display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--border);border-radius:6px;color:var(--blue)}.event-panel{margin-bottom:0}.event-feed{margin:0 -5px;max-height:470px;overflow:auto}.event-row{display:flex;align-items:center;gap:11px;padding:10px 5px;border-top:1px solid var(--border-soft);font-size:0.7857rem}.event-seq{width:25px;color:#4b6076;font:0.7143rem 'DM Mono',monospace}.event-type{padding:3px 5px;border-radius:3px;color:var(--blue);background:#003c5a13;font:0.6429rem 'DM Mono',monospace;text-transform:uppercase}.event-error,.event-completion{color:var(--amber);background:#ffab3213}.event-copy{display:flex;gap:8px;flex:1;min-width:0}.event-copy strong{color:#d7e1eb;font-weight:500}.event-copy span{overflow:hidden;color:#76899d;text-overflow:ellipsis;white-space:nowrap}.event-row time{color:#596d83;font:0.7143rem 'DM Mono',monospace;white-space:nowrap}.stream-state i{width:5px;height:5px}.run-columns+.event-panel{margin-top:18px}
.auth-page{display:grid;place-items:center;min-height:100vh;overflow:hidden;background:radial-gradient(ellipse at 60% 0,#252f38 0,#11181e 52%)}.auth-glow{position:fixed;top:-300px;left:calc(50% - 250px);width:500px;height:500px;border:1px solid #ffab3216;border-radius:50%;box-shadow:0 0 0 60px #ffab3205,0 0 0 120px #ffab3203}.auth-card{position:relative;width:min(410px,calc(100% - 32px));padding:38px 39px 30px;border:1px solid var(--border);border-radius:13px;background:#1b252def;box-shadow:0 30px 80px #02060c88}.auth-brand{padding:0;margin:0 0 45px}.auth-kicker{color:var(--teal);font:0.7143rem 'DM Mono',monospace;letter-spacing:.15em;text-transform:uppercase}.auth-card h1{margin:9px 0 8px;font-size:2rem;letter-spacing:-.04em}.auth-copy{margin:0 0 27px;color:var(--muted);font-size:0.9286rem;line-height:1.55}.auth-form label{display:block;margin:15px 0 7px;color:#a7b5c5;font-size:0.7857rem}.auth-form input{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:6px;outline:0;color:var(--text);background:#1b252d;font-size:0.9286rem}.auth-form input:focus{border-color:#4d8f8a;box-shadow:0 0 0 3px #ffab3212}.button-wide{width:100%;margin-top:24px;padding:12px}.form-error{padding:10px 11px;border:1px solid #743535;border-radius:6px;color:#ff6b6b;background:#ef535012;font-size:0.7857rem}.setup-note{margin:20px 0 0;padding-top:15px;border-top:1px solid var(--border-soft);color:#75879a;font-size:0.7857rem;line-height:1.5}.setup-note code{color:var(--teal)}.auth-foot{margin:28px 0 0;color:#506278;font-size:0.7143rem;line-height:1.5}
@media (max-width:1050px){.sidebar{width:220px;flex-basis:220px}.topbar,.content-wrap{padding-left:30px;padding-right:30px}.dashboard-columns{grid-template-columns:1fr}.metric-card>strong{font-size:1.7857rem}}
@media (max-width:720px){.sidebar{position:fixed;z-index:10;top:0;bottom:0;left:-260px;width:252px;transition:.2s;box-shadow:20px 0 50px #0008}.sidebar.open{left:0}.topbar{height:60px;padding:0 18px}.mobile-menu{display:block}.breadcrumb{margin-right:auto;margin-left:14px}.topbar-actions{gap:0}.topbar-date{display:none}.live-indicator{font-size:0}.live-indicator i{font-size:initial}.content-wrap{padding:30px 18px 50px}.page-heading{display:block;margin-bottom:25px}.page-heading h1{font-size:1.8571rem}.heading-actions{margin-top:19px}.metric-grid,.compact-metrics,.run-metrics{grid-template-columns:repeat(2,1fr)}.metric-card{padding:15px}.metric-card>strong{font-size:1.7857rem}.run-row{gap:9px;padding:12px 14px}.run-list{margin:0 -14px}.run-count{display:none}.status-label{font-size:0.6429rem}.panel{padding:16px}.collection-grid{grid-template-columns:1fr 1fr}.run-status-banner{align-items:flex-start;flex-direction:column}.run-status-banner>span:last-child{padding-left:17px}.collection-columns,.run-columns{grid-template-columns:1fr}.event-row{align-items:flex-start;flex-wrap:wrap}.event-copy{order:3;width:calc(100% - 38px);flex-basis:calc(100% - 38px)}.event-row time{margin-left:auto}.auth-card{padding:31px 25px 25px}.auth-brand{margin-bottom:38px}}
@media (max-width:420px){.collection-grid{grid-template-columns:1fr}.metric-grid{gap:8px}.metric-top{font-size:0.7143rem}.metric-card>strong{font-size:1.5714rem}.metric-card small{font-size:0.7143rem}}
.run-status.status-stale{background:var(--amber)}.label-stale{color:var(--amber);background:#ffab3215}.status-banner-stale{border-color:#554429;background:#252f38}
.activity-strip-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 10px;padding-top:16px;border-top:1px solid var(--border-soft)}.activity-strip-heading strong,.activity-strip-heading small{display:block}.activity-strip-heading strong{font-size:0.8571rem}.activity-strip-heading small{margin-top:3px;color:var(--faint);font-size:0.7143rem}.activity-strip-heading>span{color:#62758b;font:0.6429rem 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.07em}.activity-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.activity-mini{min-width:0;padding:10px 11px 8px;border:1px solid var(--border-soft);border-radius:7px;background:#1f2931;transition:.16s}.activity-mini:hover{border-color:#36566a;background:#2c3943}.activity-mini-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.activity-mini-heading>span{min-width:0}.activity-mini-heading strong,.activity-mini-heading small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-mini-heading strong{color:#d6e0ea;font-size:0.7143rem;font-weight:600}.activity-mini-heading small{margin-top:2px;color:var(--faint);font:0.6429rem 'DM Mono',monospace}.activity-mini-heading>b{color:var(--teal);font:500 1rem 'DM Mono',monospace}.activity-chart-wrap{width:100%;min-width:0}.activity-chart{display:block;width:100%;height:86px;overflow:visible}.activity-chart-compact .activity-chart{height:52px}.chart-grid{stroke:#3d4a54;stroke-width:1;stroke-dasharray:2 4;vector-effect:non-scaling-stroke}.chart-line{fill:none;stroke:#ffab32;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-point{fill:#1b252d;stroke:#ffba59;stroke-width:1.5;vector-effect:non-scaling-stroke}.chart-point-running{fill:#ffab32}.chart-point-partial{stroke:var(--amber)}.chart-point-failed{stroke:var(--red)}.chart-footer{display:flex;justify-content:space-between;gap:10px;margin-top:-2px;color:#65778b;font:0.6429rem 'DM Mono',monospace}.chart-empty{display:grid;place-items:center;min-height:82px;border:1px dashed var(--border);border-radius:7px;color:var(--faint);font-size:0.7857rem}.collection-activity-panel{margin-bottom:18px}.collection-activity-panel .activity-chart{height:135px}.activity-disabled{display:flex;align-items:center;gap:12px;min-height:80px;padding:15px;border:1px dashed var(--border);border-radius:7px;color:#72849a}.activity-disabled>span{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;color:var(--faint);background:var(--surface-2)}.activity-disabled strong{color:#bac7d5;font-size:0.8571rem}.activity-disabled p{margin:3px 0 0;color:var(--faint);font-size:0.7857rem}
@media (max-width:720px){.activity-mini-grid{grid-template-columns:1fr}.collection-activity-panel .activity-chart{height:105px}}
.collection-host{display:block;margin-top:4px;overflow:hidden;color:var(--teal);font:0.7143rem 'DM Mono',monospace;text-overflow:ellipsis;white-space:nowrap}
.run-banner-copy{display:block;min-width:0}.run-status-message{display:block;margin-top:4px;color:#aab8c7;font-size:0.8571rem;line-height:1.4;overflow-wrap:anywhere}.run-status-message:empty{display:none}.run-summary-message{color:#aab8c7!important;font:0.7857rem system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-summary-message:empty{display:none}.run-table-message{display:block;max-width:260px;margin-top:5px;color:#8f9fb0;font-size:0.7857rem;line-height:1.35;white-space:normal}
.run-duration-row{color:#708197!important}.run-duration-row [data-run-duration]{color:#aebdcb}.data-table td [data-run-duration]{font:0.7143rem 'DM Mono',monospace}
.run-duration-row .run-completion-date{color:#aebdcb}
.status-dot.completed,.run-status.status-completed{background:#75bfdf;box-shadow:0 0 0 3px var(--accent-2)}.label-completed{color:#91d7f3;background:var(--accent-2)}.status-banner-completed{border-color:var(--accent-2);background:color-mix(in srgb,var(--accent-2) 48%,var(--surface))}.status-banner-completed .banner-pulse{background:#75bfdf;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent-2) 72%,transparent)}.unit-health.seen{background:#75bfdf;box-shadow:0 0 0 4px var(--accent-2)}.health-chip.large,.health-chip.health-completed,.health-chip.health-ready{color:#91d7f3;background:color-mix(in srgb,var(--accent-2) 38%,transparent)}.health-chip.health-completed i,.health-chip.health-ready i{background:#75bfdf;box-shadow:0 0 0 3px var(--accent-2)}.health-chip.health-running{color:var(--accent-1)}.health-chip.health-partial{color:var(--amber)}.health-chip.health-failed{color:var(--red)}.health-chip.health-stale{color:#75bfdf}.health-chip.large{border-color:var(--accent-2)}.chart-point-completed{fill:var(--accent-2);stroke:#75bfdf}.collection-avatar{color:#b8deed;background:color-mix(in srgb,var(--accent-2) 42%,transparent)}.collection-card:hover,.activity-mini:hover{border-color:#75bfdf}.activity-mini-heading>b{color:#75bfdf}.button-secondary:hover{border-color:#75bfdf}.chart-tooltip{border-color:#75bfdf}
.activity-chart-wrap{position:relative}.chart-tooltip{position:fixed;z-index:100;max-width:min(280px,calc(100vw - 32px));padding:8px 10px;border:1px solid #385269;border-radius:6px;background:#25313a;color:#dce7ef;box-shadow:0 8px 22px #0008;pointer-events:none;font:0.7143rem 'DM Mono',monospace;line-height:1.5}.chart-tooltip[hidden]{display:none}.chart-tooltip strong,.chart-tooltip span,.chart-tooltip small{display:block}.chart-tooltip strong{color:#f1f6fa;font-size:0.7143rem;font-weight:600}.chart-tooltip-summary{margin-top:2px}.chart-tooltip small{margin-top:3px;color:#8da0b3;font-size:0.6429rem}.chart-point-hit{fill:transparent;stroke:transparent;pointer-events:all;cursor:help}.chart-point-hit:focus{outline:none}.chart-point-hit:hover+.chart-point,.chart-point-hit:focus+.chart-point{stroke:#fff;stroke-width:2.5}
.brand-mark span{background:#251908}.button-primary{color:#251908}.avatar{color:#251908}.metric-card.metric-accent{border-color:color-mix(in srgb,var(--accent-2) 75%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--accent-2) 45%,var(--surface)),var(--surface))}.metric-card.metric-warning{border-color:color-mix(in srgb,var(--accent-5) 55%,var(--border))}.health-chip.large{border-color:color-mix(in srgb,var(--accent-1) 45%,var(--border))}.info-callout{border-color:color-mix(in srgb,var(--accent-2) 70%,var(--border));background:color-mix(in srgb,var(--accent-2) 24%,var(--surface))}.callout-icon{border-color:#3982a2;color:#75bfdf}.event-type{color:#b8deed;background:color-mix(in srgb,var(--accent-2) 38%,transparent)}.status-banner-stale{border-color:var(--accent-2);background:color-mix(in srgb,var(--accent-2) 48%,var(--surface))}.label-stale{color:#75bfdf;background:color-mix(in srgb,var(--accent-2) 38%,transparent)}.run-status.status-stale{background:#75bfdf}.auth-form input:focus{border-color:#3982a2}
.metric-card.metric-accent{border-color:color-mix(in srgb,var(--accent-1) 58%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--accent-1) 13%,var(--surface)),var(--surface))}.chart-point,.chart-point-running,.chart-point-partial,.chart-point-failed,.chart-point-completed{fill:var(--accent-1);stroke:var(--accent-1)}
.chart-point-hit:hover+.chart-point,.chart-point-hit:focus+.chart-point{stroke:var(--accent-1)}
.user-admin-columns{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.user-table{min-width:760px}.user-name{font-weight:600}.user-create-form{margin-top:2px}.user-role-note{display:flex;align-items:center;gap:9px;margin-top:16px;color:var(--muted);font-size:0.7857rem;line-height:1.4}.label-admin{color:#91d7f3;background:var(--accent-2)}.label-readonly{color:#b8deed;background:color-mix(in srgb,var(--accent-2) 38%,transparent)}.form-success{margin-bottom:16px;padding:10px 11px;border:1px solid var(--accent-2);border-radius:6px;color:#91d7f3;background:color-mix(in srgb,var(--accent-2) 38%,transparent);font-size:0.7857rem}.user-admin-note{margin-top:18px}
.brand-mark{background:var(--accent-2)}.brand-mark span{background:#dcecf3}.nav-link.active{box-shadow:inset 3px 0 var(--accent-2)}.nav-link.active .nav-icon,.breadcrumb a:hover,.eyebrow,.text-link,.row-link,.collection-host,.empty-state code,.artifact-row>span:last-child,.activity-mini-heading>b{color:#75bfdf}.text-link:hover,.row-link:hover{color:#b8deed}.button-primary{color:#f2f2f2;background:var(--accent-2)}.button-primary:hover{background:#075477}.button-secondary:hover{border-color:#75bfdf}.avatar{color:#dcecf3;background:var(--accent-2)}.metric-card.metric-accent{border-color:color-mix(in srgb,var(--accent-2) 75%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--accent-2) 42%,var(--surface)),var(--surface))}.metric-card.metric-warning{border-color:color-mix(in srgb,var(--accent-5) 58%,var(--border))}.metric-symbol{color:#75bfdf}.symbol-red{color:var(--accent-5)}.symbol-green,.symbol-blue{color:#75bfdf}.status-dot.running,.run-status.status-running,.run-status.status-partial,.run-status.status-stale{background:var(--accent-1);box-shadow:0 0 0 3px #ffab3218}.status-dot.completed,.run-status.status-completed{background:#75bfdf;box-shadow:0 0 0 3px var(--accent-2)}.status-dot.failed,.run-status.status-failed{background:var(--accent-5);box-shadow:0 0 0 3px #ef535020}.label-running,.label-partial,.label-stale{color:var(--accent-1);background:#ffab3215}.label-completed{color:#dcecf3;background:var(--accent-2)}.label-failed{color:#ff8c8c;background:color-mix(in srgb,var(--accent-5) 28%,transparent)}.alert-critical,.alert-warning{color:#ff8c8c;background:color-mix(in srgb,var(--accent-5) 20%,transparent)}.nav-count{color:#f5dced;background:var(--accent-5)}.health-chip{color:var(--accent-1)}.health-chip.health-completed,.health-chip.health-ready{color:#dcecf3;background:color-mix(in srgb,var(--accent-2) 55%,transparent)}.health-chip.health-completed i,.health-chip.health-ready i{background:#75bfdf;box-shadow:0 0 0 3px var(--accent-2)}.health-chip.health-running,.health-chip.health-partial,.health-chip.health-stale{color:var(--accent-1)}.health-chip.health-failed{color:#ff8c8c}.unit-health.running,.unit-health.warning{background:var(--accent-1);box-shadow:0 0 0 4px #ffab3218}.unit-health.completed,.unit-health.seen{background:#75bfdf;box-shadow:0 0 0 4px var(--accent-2)}.unit-health.failed{background:var(--accent-5);box-shadow:0 0 0 4px #ef535020}.status-banner-running,.status-banner-partial,.status-banner-stale{border-color:color-mix(in srgb,var(--accent-1) 50%,var(--border));background:color-mix(in srgb,var(--accent-1) 8%,var(--surface))}.status-banner-running .banner-pulse,.status-banner-partial .banner-pulse,.status-banner-stale .banner-pulse{background:var(--accent-1);box-shadow:0 0 0 4px #ffab3220}.status-banner-completed{border-color:var(--accent-2);background:color-mix(in srgb,var(--accent-2) 48%,var(--surface))}.status-banner-completed .banner-pulse{background:#75bfdf;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent-2) 72%,transparent)}.status-banner-failed{border-color:color-mix(in srgb,var(--accent-5) 65%,var(--border));background:color-mix(in srgb,var(--accent-5) 10%,var(--surface))}.status-banner-failed .banner-pulse{background:var(--accent-5);box-shadow:0 0 0 4px #ef535020}.chart-line{stroke:#75bfdf}.chart-point{fill:var(--accent-2);stroke:#75bfdf}.chart-point-running,.chart-point-partial,.chart-point-stale{fill:var(--accent-1);stroke:var(--accent-1)}.chart-point-failed{fill:var(--accent-5);stroke:var(--accent-5)}.chart-point-completed{fill:var(--accent-2);stroke:#75bfdf}.chart-point-hit:hover+.chart-point,.chart-point-hit:focus+.chart-point{stroke:#dcecf3;stroke-width:2.5}.event-type{color:#b8deed;background:color-mix(in srgb,var(--accent-2) 38%,transparent)}.event-completion{color:#b8deed;background:color-mix(in srgb,var(--accent-2) 38%,transparent)}.event-error{color:#ff8c8c;background:color-mix(in srgb,var(--accent-5) 20%,transparent)}.status-banner-stale{border-color:color-mix(in srgb,var(--accent-1) 50%,var(--border));background:color-mix(in srgb,var(--accent-1) 8%,var(--surface))}.label-stale{color:var(--accent-1);background:#ffab3215}.run-status.status-stale{background:var(--accent-1)}.collection-avatar{color:#dcecf3;background:color-mix(in srgb,var(--accent-2) 55%,transparent)}.collection-card:hover,.activity-mini:hover{border-color:#75bfdf}.chart-tooltip{border-color:#75bfdf}.info-callout{border-color:color-mix(in srgb,var(--accent-2) 65%,var(--border));background:color-mix(in srgb,var(--accent-2) 20%,var(--surface))}.callout-icon{border-color:#3982a2;color:#75bfdf}.health-chip.large{border-color:color-mix(in srgb,var(--accent-2) 60%,var(--border));color:#dcecf3;background:color-mix(in srgb,var(--accent-2) 35%,transparent)}.form-error{border-color:color-mix(in srgb,var(--accent-5) 65%,var(--border));color:#ff8c8c;background:color-mix(in srgb,var(--accent-5) 18%,transparent)}.form-success,.label-admin,.label-readonly{border-color:var(--accent-2);color:#dcecf3;background:color-mix(in srgb,var(--accent-2) 48%,transparent)}.auth-glow{border-color:color-mix(in srgb,var(--accent-2) 45%,transparent);box-shadow:0 0 0 60px color-mix(in srgb,var(--accent-2) 9%,transparent),0 0 0 120px color-mix(in srgb,var(--accent-2) 5%,transparent)}.auth-form input:focus{border-color:#3982a2;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-2) 28%,transparent)}
.system-dot,.sync-pill i{background:#75bfdf;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-2) 35%,transparent)}.live-indicator i,.stream-state i{background:var(--accent-1);box-shadow:0 0 0 3px #ffab321c}.health-chip.health-running i,.health-chip.health-partial i,.health-chip.health-stale i{background:var(--accent-1);box-shadow:0 0 0 3px #ffab321c}.health-chip.health-failed i{background:var(--accent-5);box-shadow:0 0 0 3px #ef535020}
.panel,.metric-card,.collection-card,.activity-mini{border-color:color-mix(in srgb,var(--accent-2) 52%,var(--border))}.panel{background:linear-gradient(135deg,rgba(38,70,85,.58) 0%,rgba(32,55,68,.4) 48%,rgba(27,37,45,.04) 100%),var(--surface)}.metric-card{background:linear-gradient(135deg,rgba(41,74,92,.62) 0%,rgba(32,55,68,.44) 52%,rgba(27,37,45,.05) 100%),var(--surface)}.metric-card.metric-accent{border-color:color-mix(in srgb,var(--accent-2) 72%,var(--border));background:linear-gradient(135deg,rgba(43,83,104,.68) 0%,rgba(30,59,76,.48) 55%,rgba(27,37,45,.06) 100%),var(--surface)}.metric-card.metric-warning{border-color:color-mix(in srgb,var(--accent-2) 52%,var(--border))}.collection-card,.activity-mini{background:linear-gradient(135deg,rgba(36,64,77,.56) 0%,rgba(29,48,58,.36) 52%,rgba(27,37,45,.03) 100%),var(--surface)}
.host-list{display:grid;gap:18px}.host-card{padding:22px}.host-card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.host-card-heading .eyebrow{margin-bottom:5px}.host-card-heading h2{margin:0;font-size:1.3571rem;overflow-wrap:anywhere}.host-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 21px;padding:14px 0;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft)}.host-summary-grid>div{min-width:0}.host-summary-grid strong,.host-summary-grid small{display:block}.host-summary-grid strong{overflow:hidden;color:#eaf1f5;font:500 1.1429rem 'DM Mono',monospace;text-overflow:ellipsis;white-space:nowrap}.host-summary-grid strong time{font:inherit}.host-summary-grid small{margin-top:4px;color:var(--faint);font-size:0.7143rem}.host-content-columns{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px}.host-subsection{min-width:0}.host-subsection-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.host-subsection-heading h3{margin:0;font-size:0.9286rem}.host-subsection-heading>span{color:var(--faint);font:0.7143rem 'DM Mono',monospace}.host-collection-list,.host-run-list{border-top:1px solid var(--border-soft)}.host-collection-row,.host-run-row{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 4px;border-bottom:1px solid var(--border-soft);transition:background .15s}.host-collection-row:hover,.host-run-row:hover{background:color-mix(in srgb,var(--blue) 8%,transparent)}.host-collection-name,.host-run-primary{flex:1;min-width:0}.host-collection-name strong,.host-collection-name small,.host-run-primary strong,.host-run-primary small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.host-collection-name strong,.host-run-primary strong{font-size:0.7857rem}.host-collection-name small,.host-run-primary small{margin-top:2px;color:var(--faint);font:0.6429rem 'DM Mono',monospace}.host-collection-counts,.host-run-meta{flex:none;color:var(--muted);font:0.6429rem 'DM Mono',monospace;white-space:nowrap}.host-run-row{flex-wrap:wrap}.host-run-row .status-label{flex:none}.host-run-meta{margin-left:25px;width:calc(100% - 25px);margin-top:-6px;color:var(--faint)}.host-empty{padding:20px 12px}.host-empty strong{font-size:0.7857rem}.host-empty p{font-size:0.7143rem}
@media(max-width:900px){.host-content-columns{grid-template-columns:1fr;gap:20px}}
@media(max-width:560px){.host-card{padding:16px}.host-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:15px}.host-collection-counts{display:none}.host-run-row{gap:8px}.host-run-row .status-label{font-size:0.5714rem}.host-run-meta{margin-left:23px;width:calc(100% - 23px)}}
.health-chip.health-running i{background:#39d98a;box-shadow:0 0 0 3px #39d98a33}.host-table{min-width:900px}.host-table-name{min-width:190px}.host-detail-columns{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.host-detail-metrics .metric-symbol.symbol-green{color:#39d98a}
@media(max-width:1050px){.host-detail-columns{grid-template-columns:1fr}}
@media (max-width:1050px){.user-admin-columns{grid-template-columns:1fr}}
.panel,.metric-card,.metric-card.metric-accent,.collection-card,.activity-mini{background-color:rgba(0,60,90,.32);background-image:none}
.live-indicator i{background:#39d98a;box-shadow:0 0 0 3px #39d98a33}
.status-dot.running.live-run-dot{background:#39d98a;box-shadow:0 0 0 3px #39d98a33}
@media(min-width:721px){.sidebar{position:sticky;top:0;align-self:flex-start;height:100vh;max-height:100vh;overflow-y:auto}}
.topbar{position:sticky;top:0;z-index:9;background:var(--bg)}
.unit-heading-actions,.panel-heading-actions{display:flex;align-items:center;gap:12px}.unit-view-all{padding:0;border:0;background:transparent}.unit-view-all:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:2px}.unit-row[hidden],.artifact-row[hidden]{display:none}
.collection-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.collection-activity-card{min-width:0}.collection-activity-card .metric-top{margin-bottom:7px}.collection-activity-card .activity-chart{height:62px}.collection-activity-card .chart-footer{margin-top:0;font-size:0.5714rem}.collection-activity-card .chart-footer span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collection-activity-disabled{min-height:64px;padding:0;border:0}
@media(max-width:1050px){.collection-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
.alert-settings-form{max-width:520px}.alert-settings-note{display:block;margin:9px 0 0;color:var(--faint);font-size:0.7857rem;line-height:1.45}.alert-settings-explainer p{margin:0 0 12px;color:var(--muted);font-size:0.8571rem;line-height:1.55}.alert-settings-explainer p:last-child{margin-bottom:0}.collection-alert-settings{margin-bottom:18px}.collection-alert-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:end;gap:16px}.collection-alert-form>div{min-width:0}.collection-alert-form .button{justify-self:start}.collection-alert-summary{margin:0;color:var(--muted);font-size:0.8571rem}
@media(max-width:540px){.collection-alert-form{align-items:stretch;flex-direction:column;gap:12px}.collection-alert-form>div{width:100%}.collection-alert-form .button{align-self:flex-start}}
.table-sort-button{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;color:inherit;background:transparent;font:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;white-space:inherit}.table-sort-button:hover,.table-sort-button:focus-visible{color:var(--text)}.table-sort-button:focus-visible{outline:2px solid var(--teal);outline-offset:4px;border-radius:2px}.table-sort-arrow{width:10px;color:var(--faint);font-size:0.7857rem;line-height:1;text-align:center}.table-sort-button[aria-pressed="true"] .table-sort-arrow{color:var(--teal)}
.status-label.label-completed{color:#39d98a;background:#39d98a20}
.user-table{min-width:1040px}.user-actions{display:flex;align-items:center;gap:6px}.user-actions form{margin:0}.user-action-button{padding:6px 8px;font-size:0.7143rem}.button-danger{color:#ffb3b3;background:color-mix(in srgb,var(--red) 16%,transparent);border-color:color-mix(in srgb,var(--red) 45%,var(--border))}.button-danger:hover{background:color-mix(in srgb,var(--red) 28%,transparent);border-color:var(--red)}.label-active{color:#39d98a;background:#39d98a20}.label-blocked{color:#ff8c8c;background:color-mix(in srgb,var(--red) 22%,transparent)}
.alert-warning{color:#ef5350;background:color-mix(in srgb,#ef5350 20%,transparent)}
.metric-card.metric-warning{border-color:color-mix(in srgb,var(--red) 58%,var(--border))}
.event-severity{display:inline-flex;align-items:center;padding:3px 5px;border:1px solid transparent;border-radius:3px;font:0.5714rem 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.04em}.event-severity.severity-warning{color:#ff6b6b;border-color:color-mix(in srgb,#ef5350 30%,transparent);background:color-mix(in srgb,#ef5350 12%,transparent)}.event-severity.severity-critical{color:#ff8c8c;border-color:color-mix(in srgb,#ef5350 52%,transparent);background:color-mix(in srgb,#ef5350 22%,transparent)}
.system-settings-alerts{margin-top:18px}.user-create-panel{max-width:680px}.user-create-panel .user-create-form{max-width:440px}
.scraper-collections-panel{margin-top:18px}.scraper-collections-table{min-width:1040px}.scraper-key-privacy-note{margin:-7px 0 16px;color:var(--faint);font-size:0.7857rem}.scraper-key-create-panel{max-width:760px}.collection-key-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.collection-key-form>div{min-width:0}.collection-key-form label span{color:var(--faint);font-weight:400}.collection-key-form small{display:block;margin-top:6px;color:var(--faint);font-size:0.7143rem;line-height:1.45}.collection-key-form textarea{width:100%;resize:vertical;padding:11px 12px;border:1px solid var(--border);border-radius:6px;outline:0;color:var(--text);background:#1b252d;font:0.9286rem system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.collection-key-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 20%,transparent)}.collection-key-description,.collection-key-note,.collection-key-form>button{grid-column:1/-1}.collection-key-note{margin:13px 0 0;color:var(--faint);font-size:0.7857rem;line-height:1.45}.collection-key-form>button{justify-self:start;margin-top:16px}.collection-key-result{margin:14px 0;padding:13px;border:1px solid var(--accent-2);border-radius:7px;background:color-mix(in srgb,var(--accent-2) 14%,transparent)}.collection-key-result p{margin:0 0 10px;color:var(--muted);font-size:0.7857rem;line-height:1.5}.collection-key-result a{color:var(--blue)}.collection-key-copy-row{display:flex;gap:8px}.collection-key-copy-row input{flex:1;min-width:0;font-family:'DM Mono',monospace!important}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.scraper-key-warning{margin:0 0 14px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--red) 58%,var(--border));border-radius:6px;color:#ff8c8c;background:color-mix(in srgb,var(--red) 16%,var(--surface));font-size:.8rem;line-height:1.45}
.scraper-key-list{display:grid;min-width:330px;gap:8px}.scraper-key-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 9px;border:1px solid var(--border-soft);border-radius:6px;background:color-mix(in srgb,var(--surface-2) 72%,transparent)}.scraper-key-item form{flex:none;margin:0}.scraper-key-details{display:block;min-width:0}.scraper-key-details strong,.scraper-key-details small{display:block}.scraper-key-details strong{font-size:.76rem}.scraper-key-details small{margin-top:3px;color:var(--faint);font: .65rem 'DM Mono',monospace;line-height:1.5}
.scraper-access-actions{display:flex;align-items:center;gap:16px}.scraper-access-actions .button{white-space:nowrap}
.nav-settings>summary{list-style:none;cursor:pointer}.nav-settings>summary::-webkit-details-marker{display:none}.nav-settings>summary:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.nav-settings-chevron{margin-left:auto;color:var(--faint);font-size:.85em;transition:transform .15s}.nav-settings[open] .nav-settings-chevron{transform:rotate(180deg)}.nav-settings-panel{display:grid;gap:9px;margin:3px 0 8px 28px;padding:10px 10px 9px 12px;border-left:1px solid var(--border)}.nav-text-size-setting>span{display:block;margin-bottom:7px;color:var(--faint);font-size:.75rem}.nav-text-size-controls{display:flex;align-items:center;gap:6px}.nav-text-size-controls button{width:32px;height:30px;padding:0;border:1px solid var(--border);border-radius:5px;color:var(--text);background:var(--surface-2);font-size:1rem;line-height:1}.nav-text-size-controls button:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.nav-text-size-controls button:disabled{opacity:.4;cursor:default}.nav-text-size-controls output{flex:1;min-width:3.2rem;color:var(--muted);font:0.72rem 'DM Mono',monospace;text-align:center}.nav-settings-link{display:block;padding:7px 0 0;color:var(--muted);font-size:.78rem;border-top:1px solid var(--border-soft)}.nav-settings-link:hover,.nav-settings-link.active{color:var(--teal)}
@media(max-width:560px){.collection-key-form{grid-template-columns:1fr}.collection-key-description,.collection-key-note,.collection-key-form>button{grid-column:1}.collection-key-copy-row{align-items:stretch;flex-direction:column}.collection-key-copy-row .button{align-self:flex-start}}
@media(max-width:560px){.panel-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.panel-heading-actions .panel-caption{display:none}.page-heading>.button{flex:none}}
@media(max-width:720px){.scraper-access-panel .panel-heading{align-items:flex-start;flex-direction:column}.scraper-access-actions{align-items:flex-start;gap:12px;flex-wrap:wrap}}
.event-severity{gap:4px}
.settings-preferences-panel{max-width:760px}.settings-preference-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:4px 0}.settings-preference-row strong{display:block;color:var(--text);font-size:.95rem}.settings-preference-row p{margin:5px 0 0;color:var(--muted);font-size:.82rem}.settings-text-size-controls{display:flex;align-items:center;gap:8px;flex:none}.settings-text-size-controls button{width:38px;height:36px;padding:0;border:1px solid var(--border);border-radius:6px;color:var(--text);background:var(--surface-2);font-size:1.15rem;line-height:1}.settings-text-size-controls button:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.settings-text-size-controls button:disabled{opacity:.4;cursor:default}.settings-text-size-controls output{min-width:4.2rem;color:var(--muted);font:.8rem 'DM Mono',monospace;text-align:center}
@media(max-width:560px){.settings-preference-row{align-items:flex-start;flex-direction:column;gap:16px}}
.event-severity::before{display:inline-block;font-weight:700;line-height:1}
.overview-run-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,30%);gap:14px;align-items:center}
.overview-run-summary{display:flex;align-items:center;gap:13px;min-width:0}
.overview-run-summary .run-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.overview-run-chart{display:flex;align-items:center;min-width:0;width:100%}
.overview-run-chart .activity-chart-wrap{height:44px}
.overview-run-chart .activity-chart{height:44px;overflow:visible}
.activity-chart-minimal .chart-line{stroke-width:2.5}
.activity-chart-minimal .chart-empty-line{fill:none;stroke:var(--border);stroke-width:1.5;stroke-dasharray:3 5;vector-effect:non-scaling-stroke}
.collection-activity-cell{width:150px;min-width:135px;padding-right:8px!important;padding-left:8px!important}
.collection-activity-cell .activity-chart-wrap,.collection-activity-cell .activity-chart{height:34px}
@media(max-width:720px){.overview-run-row{grid-template-columns:minmax(0,1fr) minmax(112px,30%);gap:9px;padding:12px 14px}.overview-run-summary{gap:9px}.overview-run-chart .activity-chart-wrap,.overview-run-chart .activity-chart{height:38px}}
.overview-panel-content{min-width:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:#526575 #1b252d;scrollbar-width:thin}
.overview-columns-sized .overview-height-panel{display:flex;min-height:0;flex-direction:column;overflow:hidden}
.overview-columns-sized .overview-height-panel>.panel-heading{flex:none}
.overview-columns-sized .overview-panel-content{flex:1;min-height:0}
.overview-alert-content,.overview-alert-content .overview-alert-group,.overview-alert-content .alert-list,.overview-alert-content .alert-row{min-width:0;max-width:100%}
.overview-alert-content .alert-list{margin-right:0;margin-left:0}
.overview-alert-content .alert-row>div{flex:1;min-width:0;overflow-wrap:anywhere}
.overview-alert-content .alert-row strong,.overview-alert-content .alert-row p,.overview-alert-content .alert-row small{white-space:normal;overflow-wrap:anywhere;word-break:normal}
.event-severity.severity-critical{color:var(--red);border-color:color-mix(in srgb,var(--red) 52%,transparent);background:color-mix(in srgb,var(--red) 18%,transparent)}
.event-severity.severity-critical::before{content:"!"}
.event-severity.severity-warning{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 42%,transparent);background:color-mix(in srgb,var(--amber) 14%,transparent)}
.event-severity.severity-warning::before{content:"▲"}
.event-severity.severity-info{color:var(--blue);border-color:color-mix(in srgb,var(--blue) 42%,transparent);background:color-mix(in srgb,var(--blue) 14%,transparent)}
.event-severity.severity-info::before{content:"i"}
.alert-icon.alert-critical{color:var(--red);background:color-mix(in srgb,var(--red) 18%,transparent)}
.alert-icon.alert-warning{color:var(--amber);background:color-mix(in srgb,var(--amber) 14%,transparent)}
.alert-icon.alert-info{color:var(--blue);background:color-mix(in srgb,var(--blue) 14%,transparent)}
.alert-list>a.alert-row{color:inherit;text-decoration:none;cursor:pointer;transition:background .15s ease;border-radius:6px}
.alert-list>a.alert-row:hover{background:color-mix(in srgb,var(--blue) 8%,transparent)}
.alert-list>a.alert-row:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.alert-heading-actions{display:flex;align-items:center;gap:14px}
.alert-filter-panel{margin-bottom:18px}
.alert-filters{display:grid;grid-template-columns:minmax(190px,2fr) repeat(4,minmax(125px,1fr)) auto;gap:12px;align-items:end}
.run-filters{grid-template-columns:minmax(150px,1.45fr) minmax(150px,1.35fr) repeat(2,minmax(90px,.8fr)) minmax(201px,1.65fr) auto;gap:8px}
.alert-filters.run-filters label{margin-bottom:4px;font-size:.73rem}
.alert-filters.run-filters input,.alert-filters.run-filters select{height:34px;padding:6px 8px;font-size:.7857rem}
.run-filters .run-age-control{grid-template-columns:minmax(80px,1.2fr) minmax(48px,.7fr) minmax(65px,.9fr);gap:4px}
.run-filters .run-age-control input,.run-filters .run-age-control select{padding-right:5px;padding-left:5px}
.run-filters .alert-filter-actions{gap:6px}
.run-filters .alert-filter-actions .button{height:34px;padding:6px 9px;font-size:.75rem;white-space:nowrap}
.alert-filters>div{min-width:0}
.alert-filters label{display:block;margin:0 0 6px;color:var(--muted);font-size:0.7857rem}
.alert-filters input,.alert-filters select{width:100%;height:39px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;outline:0;color:var(--text);background:var(--surface);font-size:0.8571rem}
.alert-filters input:focus,.alert-filters select:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 20%,transparent)}
.run-age-control{display:grid;grid-template-columns:minmax(120px,1.3fr) minmax(72px,.7fr) minmax(85px,.9fr);gap:6px}
.run-age-control input,.run-age-control select{min-width:0;padding-left:7px;padding-right:7px}
.alert-filter-actions{display:flex;gap:8px}
.alert-filter-actions .button{height:39px;white-space:nowrap}
.alert-results-panel{margin-top:18px}
.run-results-panel{margin-top:18px}
.run-results-table{min-width:940px}.run-results-table th{padding:0 7px 9px;font-size:.65rem}.run-results-table td{padding:8px 7px;font-size:.76rem;white-space:nowrap;vertical-align:middle}.run-results-identity{display:flex;align-items:center;gap:7px;max-width:260px;white-space:nowrap}.run-results-identity .run-status{width:7px;height:7px}.run-results-identity strong{max-width:105px;overflow:hidden;color:#e6edf4;text-overflow:ellipsis}.run-results-identity .mono{color:var(--faint);font: .64rem 'DM Mono',monospace}.run-results-status{display:flex;align-items:center;gap:6px}.run-results-table .status-label{padding:3px 5px;font-size:.62rem}.run-results-table .run-table-message{display:inline-block;max-width:125px;margin:0;color:var(--faint);font-size:.68rem;line-height:1;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.run-results-times{display:inline-flex;align-items:center;gap:5px;color:var(--faint);font: .64rem 'DM Mono',monospace}.run-results-table td time{white-space:nowrap}.run-results-items{color:var(--faint);font: .68rem 'DM Mono',monospace}.run-results-items strong{color:var(--text);font-weight:500}
.run-view-more{display:flex;justify-content:center;padding-top:16px}
.run-age-error{margin-top:12px}
.alert-results-list{margin:0 -8px}
.alert-list>a.alert-full-row{align-items:flex-start;padding:14px 8px}
.alert-full-copy{flex:1;min-width:0}
.alert-full-title{display:flex;align-items:center;gap:9px}
.alert-full-copy p{margin:4px 0 6px;color:var(--muted);font-size:0.8571rem;line-height:1.45;white-space:normal}
.alert-full-copy small{display:block;color:var(--faint);font:0.7143rem 'DM Mono',monospace}
.alert-severity-label{flex:none}
.severity-label-critical{color:var(--red);background:color-mix(in srgb,var(--red) 18%,transparent)}
.severity-label-warning{color:var(--amber);background:color-mix(in srgb,var(--amber) 16%,transparent)}
.severity-label-info{color:var(--blue);background:color-mix(in srgb,var(--blue) 16%,transparent)}
.alert-row-arrow{flex:none;color:var(--blue);font-size:1.0714rem}
@media(max-width:1100px){.alert-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.run-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.alert-filter-search{grid-column:span 2}}
@media(max-width:1240px){.run-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.run-filters .run-filter-search{grid-column:span 2}}
@media(max-width:960px){.run-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.run-filters .run-filter-search,.run-filters .run-age-filter,.run-filters .alert-filter-actions{grid-column:span 2}}
@media(max-width:700px){.alert-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.run-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.alert-filter-search{grid-column:span 2}.run-age-filter{grid-column:span 2}.alert-filter-actions{grid-column:span 2}}
@media(max-width:460px){.alert-filters{grid-template-columns:1fr}.run-filters{grid-template-columns:1fr}.alert-filter-search,.run-age-filter,.alert-filter-actions,.run-filters .run-filter-search,.run-filters .run-age-filter,.run-filters .alert-filter-actions{grid-column:auto}.alert-filter-actions .button{flex:1}.alert-heading-actions{gap:8px}.alert-heading-actions .panel-count{padding:6px}}
.alert-collection-filter{position:relative}
.collection-filter-selected{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 7px}
.collection-filter-selected:empty{display:none}
.collection-filter-pill{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:3px 5px 3px 9px;border:1px solid color-mix(in srgb,var(--blue) 40%,var(--border));border-radius:100px;color:var(--text);background:color-mix(in srgb,var(--blue) 12%,transparent);font-size:0.7143rem;line-height:1.5}
.collection-filter-pill>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.collection-filter-pill button{display:grid;place-items:center;width:17px;height:17px;flex:none;padding:0;border:0;border-radius:50%;color:var(--muted);background:transparent;font-size:1.0714rem;line-height:1}
.collection-filter-pill button:hover,.collection-filter-pill button:focus-visible{color:var(--text);background:color-mix(in srgb,var(--blue) 24%,transparent);outline:none}
.collection-filter-control{position:relative}
.collection-filter-options{position:absolute;top:calc(100% + 5px);left:0;z-index:25;width:max(100%,280px);max-height:260px;overflow:auto;padding:5px;border:1px solid var(--border);border-radius:7px;background:var(--surface);box-shadow:var(--shadow)}
.collection-filter-options[hidden]{display:none}
.collection-filter-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:0;border-radius:5px;color:var(--text);background:transparent;text-align:left;font-size:0.7857rem}
.collection-filter-option[hidden]{display:none}
.collection-filter-option:hover,.collection-filter-option:focus-visible,.collection-filter-option.selected{background:color-mix(in srgb,var(--blue) 12%,transparent);outline:none}
.collection-filter-check{display:grid;place-items:center;width:15px;height:15px;flex:none;border:1px solid var(--border);border-radius:3px;color:transparent;font-size:0.7143rem}
.collection-filter-option.selected .collection-filter-check{border-color:var(--blue);color:var(--blue);background:color-mix(in srgb,var(--blue) 16%,transparent)}
.collection-filter-option>span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.collection-filter-option small{margin-left:auto;color:var(--faint);font:0.6429rem 'DM Mono',monospace}
.collection-filter-no-results{padding:10px;color:var(--faint);font-size:0.7857rem;text-align:center}
@media(max-width:460px){.collection-filter-options{width:100%;min-width:0}}
.alert-view-more{display:flex;justify-content:center;margin-top:14px;padding-top:14px;border-top:1px solid var(--border-soft)}
.overview-alert-group+.overview-alert-group{margin-top:12px;padding-top:11px;border-top:1px solid var(--border-soft)}
.overview-alert-group h3{margin:0 0 6px;color:var(--faint);font:0.7143rem 'DM Mono',monospace;letter-spacing:.05em;text-transform:uppercase}
.nav-link.nav-link-admin-settings,.nav-link.nav-link-admin-settings.active{color:#ffba59;background:transparent;border-color:transparent;font-weight:600;box-shadow:none}.nav-link.nav-link-admin-settings .nav-icon,.nav-link.nav-link-admin-settings.active .nav-icon{color:#ffba59}.nav-link.nav-link-admin-settings:hover{color:#ffd17e;background:transparent;border-color:transparent}.nav-link.nav-link-admin-settings:focus-visible{outline:2px solid #ffd17e;outline-offset:2px}
.auth-form .remember-row{display:flex;align-items:center;gap:9px;margin:17px 0 0;color:#a7b5c5;font-size:0.7857rem;cursor:pointer}.auth-form .remember-row input{flex:none;width:auto;margin:0;padding:0;accent-color:var(--teal)}

.trace-panel{margin-bottom:20px}.trace-panel h3{font-size:.95rem;margin:16px 0 8px}.trace-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}.trace-list{padding-left:20px;line-height:1.8}.trace-panel p,.trace-panel dd{overflow-wrap:anywhere}.event-row:target{outline:2px solid var(--blue);background:var(--surface-2)}
.missing-units-scroll{max-height:150px;overflow-y:auto;border:1px solid var(--border-soft);border-radius:5px;background:var(--surface-2);scrollbar-gutter:stable}.missing-units-scroll .trace-list{margin:0;padding:7px 12px 7px 30px;font-size:.75rem;line-height:1.4}.missing-units-scroll li{padding:1px 0;overflow-wrap:anywhere}
.overview-heatmap-panel{margin-bottom:18px}.activity-heatmap-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin:-5px 0 12px;color:var(--muted);font-size:.68rem}.activity-heatmap-legend span{display:inline-flex;align-items:center;gap:5px}.heatmap-swatch{display:inline-block;width:11px;height:11px;border:1px solid #0f171d;border-radius:0}.heatmap-swatch-low{background:rgba(24,137,255,.18)}.heatmap-swatch-average{background:rgba(24,137,255,.54)}.heatmap-swatch-high{background:rgba(24,137,255,.96)}.heatmap-swatch-running{background:#ffd34e}.heatmap-swatch-error{background:#fa626a}.heatmap-swatch-warning{background:#ff9b45}.heatmap-swatch-idle{background:#64717d}.activity-heatmap-scroll{max-height:520px;overflow:auto;border:1px solid var(--border-soft);background:var(--bg);scrollbar-gutter:stable}.activity-heatmap-table{width:max-content;min-width:100%;border-collapse:collapse;table-layout:fixed}.activity-heatmap-table th,.activity-heatmap-table td{height:18px;padding:0;border:0}.activity-heatmap-table thead th{position:sticky;top:0;z-index:2;width:18px;min-width:18px;color:var(--faint);background:var(--surface);font:.57rem 'DM Mono',monospace;text-align:center;white-space:nowrap}.activity-heatmap-table .activity-heatmap-corner{left:0;z-index:4;width:132px;min-width:132px;max-width:132px;padding:0 5px;text-align:left}.activity-heatmap-table .activity-heatmap-collection{position:sticky;left:0;z-index:1;width:132px;min-width:132px;max-width:132px;padding:0 5px;overflow:hidden;background:var(--surface);font-size:.68rem;font-weight:500;text-align:left;text-overflow:ellipsis;white-space:nowrap}.activity-heatmap-collection a{display:block;overflow:hidden;text-overflow:ellipsis}.activity-heatmap-collection a:hover{color:var(--teal)}.activity-heatmap-table .heatmap-cell{width:18px;min-width:18px;background:#65727d}.activity-heatmap-table .heatmap-cell-activity{background:rgba(24,137,255,var(--heat-alpha,.12))}.activity-heatmap-table .heatmap-cell-running{background:#ffd34e}.activity-heatmap-table .heatmap-cell-error{background:#fa626a}.activity-heatmap-table .heatmap-cell-warning{background:#ff9b45}.activity-heatmap-table .heatmap-cell-idle{background:#65727d}.activity-heatmap-table .heatmap-cell a{display:block;width:100%;height:100%;outline-offset:-2px}.activity-heatmap-table .heatmap-cell a:hover{box-shadow:inset 0 0 0 2px #fff}.activity-heatmap-table time{display:block;min-width:16px}
.heatmap-tooltip{position:fixed;z-index:120;max-width:min(360px,calc(100vw - 20px));max-height:calc(100vh - 20px);overflow:auto;padding:11px 13px;border:1px solid #385269;border-radius:8px;background:linear-gradient(145deg,#293640,#202a32);color:#dce7ef;box-shadow:0 12px 30px #0009;pointer-events:none;font:.75rem 'DM Sans',sans-serif;line-height:1.45}.heatmap-tooltip[hidden]{display:none}.heatmap-tooltip-heading{display:block;margin-bottom:7px;color:#f1f6fa;font-size:.82rem;font-weight:700}.heatmap-tooltip-summary{display:grid;gap:3px;padding-bottom:8px;border-bottom:1px solid #ffffff18}.heatmap-tooltip-mean{color:#9fb0bd;font-size:.68rem}.heatmap-tooltip-count{color:#dcecf3;font-size:.78rem;font-weight:600}.heatmap-tooltip-details{display:grid;gap:6px;margin-top:8px}.heatmap-tooltip-run{display:grid;grid-template-columns:auto auto;justify-content:start;align-items:center;gap:2px 7px;padding:6px 7px;border:1px solid #ffffff13;border-radius:5px;background:#ffffff06}.heatmap-tooltip-run-id{font-size:.68rem;font-weight:600}.heatmap-tooltip-run-meta{grid-column:1/-1;color:#9fb0bd;font-size:.64rem;overflow-wrap:anywhere}.heatmap-tooltip-status{padding:1px 5px;border-radius:20px;background:#75bfdf22;color:#a9dff3;font: .58rem 'DM Mono',monospace;text-transform:uppercase}.heatmap-tooltip-status-failed,.heatmap-tooltip-status-error{background:#fa626a22;color:#ff9a9e}.heatmap-tooltip-status-partial,.heatmap-tooltip-status-stale{background:#ffab3222;color:#ffd084}.heatmap-tooltip-notice{display:block;padding:5px 7px;border-left:2px solid #ffab32;background:#ffab3210;color:#ffd084;font-size:.67rem;overflow-wrap:anywhere}.heatmap-tooltip-notice-error{border-color:#fa626a;background:#fa626a10;color:#ff9a9e}
.heatmap-swatch-low{background:color-mix(in srgb,var(--blue) 18%,transparent)}.heatmap-swatch-average{background:color-mix(in srgb,var(--blue) 54%,transparent)}.heatmap-swatch-high{background:color-mix(in srgb,var(--blue) 96%,transparent)}.heatmap-swatch-running{background:color-mix(in srgb,var(--amber) 90%,transparent)}.heatmap-swatch-error{background:color-mix(in srgb,var(--red) 85%,transparent)}.heatmap-swatch-warning{background:color-mix(in srgb,var(--amber) 55%,transparent)}.heatmap-swatch-idle{background:color-mix(in srgb,var(--muted) 18%,transparent)}.activity-heatmap-table .heatmap-cell{background:color-mix(in srgb,var(--surface-3) 38%,transparent)}.activity-heatmap-table .heatmap-cell-activity{background:color-mix(in srgb,var(--blue) var(--heat-alpha,12%),transparent)}.activity-heatmap-table .heatmap-cell-running{background:color-mix(in srgb,var(--amber) 90%,transparent)}.activity-heatmap-table .heatmap-cell-error{background:color-mix(in srgb,var(--red) 85%,transparent)}.activity-heatmap-table .heatmap-cell-warning{background:color-mix(in srgb,var(--amber) 55%,transparent)}.activity-heatmap-table .heatmap-cell-idle{background:color-mix(in srgb,var(--muted) 18%,transparent)}.heatmap-tooltip-status{background:color-mix(in srgb,var(--blue) 14%,transparent);color:var(--blue)}.heatmap-tooltip-status-failed,.heatmap-tooltip-status-error{background:color-mix(in srgb,var(--red) 14%,transparent);color:var(--red)}.heatmap-tooltip-status-partial,.heatmap-tooltip-status-stale{background:color-mix(in srgb,var(--amber) 14%,transparent);color:var(--amber)}.heatmap-tooltip-notice{border-left-color:var(--amber);background:color-mix(in srgb,var(--amber) 8%,transparent);color:var(--amber)}.heatmap-tooltip-notice-error{border-color:var(--red);background:color-mix(in srgb,var(--red) 8%,transparent);color:var(--red)}
.activity-heatmap-table{width:max-content;min-width:0}.activity-heatmap-table thead th:not(.activity-heatmap-corner),.activity-heatmap-table .heatmap-cell{width:18px;min-width:18px;max-width:18px}.activity-heatmap-table th,.activity-heatmap-table td{height:18px;line-height:18px}
.activity-heatmap-table thead tr:first-child th{top:0;height:18px;line-height:18px}.activity-heatmap-table thead tr:nth-child(2) th{top:18px;z-index:3;height:18px;line-height:18px}.activity-heatmap-table thead .activity-heatmap-corner{top:0;z-index:5}.activity-heatmap-table thead .activity-heatmap-day-group{width:36px;min-width:36px;max-width:36px;font-size:.58rem}.activity-heatmap-table thead .activity-heatmap-window{font-size:.48rem;color:var(--muted)}

.trace-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:20px}.trace-filters label{display:grid;gap:6px;flex:1;min-width:130px;color:var(--muted);font-size:.8rem}.trace-filters input,.trace-filters select,.trace-panel textarea,.trace-panel input,.trace-panel select{padding:9px;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text);max-width:100%}.trace-pagination{display:flex;gap:12px;margin-top:18px}
.trace-panel dd{margin:6px 0 12px;font-family:monospace;font-size:.85rem}.trace-code{white-space:pre-wrap;overflow-wrap:anywhere;padding:14px;background:var(--surface-2);font-size:.8rem}.trace-panel summary{cursor:pointer;color:var(--blue)}
.matrix-state{display:block;padding:5px 8px;border-radius:5px;font-size:.72rem;white-space:nowrap;background:var(--surface-2);color:var(--muted)}.matrix-completed{background:#23744b33;color:#83dbb1}.matrix-warning,.matrix-partial,.matrix-stale{background:#b7832033;color:#f2c36b}.matrix-failed{background:#aa393933;color:#ff9797}.matrix-running{background:#307aa233;color:#95caef}.matrix-missing{border:1px dashed var(--border)}.health-matrix td:first-child{min-width:160px}
.unit-health-scroll{max-height:260px;overflow:auto;margin:0 -6px;scrollbar-gutter:stable}.unit-health-scroll .health-matrix{width:max-content;min-width:100%}.unit-health-scroll .health-matrix th{position:sticky;top:0;z-index:2;padding:3px 5px;background:var(--surface);font-size:.62rem}.unit-health-scroll .health-matrix td{padding:2px 5px;font-size:.72rem;line-height:1.2}.unit-health-scroll .health-matrix th:first-child{left:0;z-index:3}.unit-health-scroll .health-matrix td:first-child{position:sticky;left:0;z-index:1;min-width:130px;max-width:190px;overflow:hidden;background:var(--surface);text-overflow:ellipsis}.unit-health-scroll .matrix-state{padding:2px 4px;font-size:.62rem;line-height:1.2}
.trace-note{white-space:pre-wrap;overflow-wrap:anywhere}
.collection-groups{display:grid;gap:18px}.collection-group-panel{margin:0}
.collection-group-menu{position:relative}.collection-group-menu>summary{list-style:none;cursor:pointer}.collection-group-menu>summary::-webkit-details-marker{display:none}.collection-group-menu>summary:focus-visible,.collection-group-create>summary:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.collection-group-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:var(--surface-2);font-size:.72rem;white-space:nowrap}.collection-group-badge strong{color:var(--blue);font-weight:600}.collection-group-badge-label{color:var(--faint);font:.62rem 'DM Mono',monospace;letter-spacing:.06em;text-transform:uppercase}
.collection-group-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:min(300px,calc(100vw - 32px));padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.collection-group-form{display:grid;gap:8px}.collection-group-form>label{color:var(--muted);font-size:.75rem}.collection-group-form select,.collection-group-form input{width:100%;min-width:0;padding:7px 9px;border:1px solid var(--border);border-radius:5px;color:var(--text);background:var(--surface-2);font-size:.76rem}.collection-group-form input:focus,.collection-group-form select:focus{outline:2px solid color-mix(in srgb,var(--blue) 45%,transparent);outline-offset:1px}.collection-group-create>summary{cursor:pointer;color:var(--blue);font-size:.72rem}.collection-group-create>label{display:block;margin:7px 0 4px;color:var(--muted);font-size:.7rem}.button.button-compact{justify-self:start;padding:5px 9px;font-size:.72rem;line-height:1.25}
.collection-inline-group-badge{display:inline-flex;align-items:center;margin-left:5px;padding:1px 5px;border:1px solid color-mix(in srgb,var(--blue) 32%,var(--border));border-radius:999px;color:var(--blue);font-size:.61rem;line-height:1.35;vertical-align:1px;white-space:nowrap}
.collection-view-tabs{display:flex;gap:18px;margin:-18px 0 20px;border-bottom:1px solid var(--border-soft)}.collection-view-tab{padding:8px 3px;margin-bottom:-1px;border-bottom:2px solid transparent;color:var(--muted);font-size:.82rem}.collection-view-tab:hover{color:var(--text)}.collection-view-tab.active{border-color:var(--blue);color:var(--text)}
.collection-map-canvas{position:relative;isolation:isolate;min-height:270px;overflow:hidden;padding:18px;border:1px solid color-mix(in srgb,var(--blue) 30%,var(--border));border-radius:12px;background:radial-gradient(ellipse at 20% 22%,rgba(74,112,91,.3),transparent 34%),radial-gradient(ellipse at 82% 74%,rgba(58,99,87,.25),transparent 38%),linear-gradient(145deg,#23383b,#1c2c34 70%,#23383b);box-shadow:inset 0 0 45px #111c2070}
.collection-map-geography{position:absolute;inset:0;z-index:-1;width:100%;height:100%;opacity:.65;pointer-events:none}.collection-map-geography path{fill:none;vector-effect:non-scaling-stroke}.map-contour{stroke:#9bb39b;stroke-width:1;opacity:.18}.map-road{stroke:#d3c9a5;stroke-width:1;opacity:.13}.map-road-major{stroke-width:2.5;opacity:.22}.map-waterway{stroke:#6faac0;stroke-width:8;stroke-linecap:round;opacity:.26}
.collection-map-groups{position:relative;z-index:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;align-items:start;padding:8px 20px 12px 4px}.collection-map-group{grid-column:var(--map-column)/span var(--map-span);min-width:0;margin-top:var(--map-offset);padding:9px;border:1px dashed #a8b6a369;border-radius:12px;background:rgba(19,31,35,.55);backdrop-filter:blur(2px)}.collection-map-region-heading{display:flex;align-items:center;gap:7px;margin:0 0 8px;padding:0 2px}.collection-map-region-heading h2{min-width:0;margin:0;overflow:hidden;color:#d2ddcf;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.collection-map-region-mark{width:6px;height:6px;flex:none;border:1px solid #a7c2a1;border-radius:50%;box-shadow:0 0 0 3px #91b08a24}.collection-map-region-count{margin-left:auto;color:#93a69d;font: .62rem 'DM Mono',monospace}.collection-map-pins{display:flex;flex-wrap:wrap;gap:5px}.collection-map-pin{display:inline-flex;align-items:center;gap:7px;max-width:100%;min-height:27px;padding:4px 8px;border:1px solid #82988b59;border-radius:999px;color:#dbe5df;background:rgba(27,43,47,.9);box-shadow:0 2px 8px #10191b55;transition:transform .16s,border-color .16s,background .16s}.collection-map-pin:hover{transform:translateY(-1px);border-color:#a9c1b0;background:#293d40}.collection-map-name{max-width:145px;overflow:hidden;font-size:.69rem;text-overflow:ellipsis;white-space:nowrap}.collection-map-status{width:7px;height:7px;flex:none;border-radius:50%;background:#84988e;box-shadow:0 0 0 3px #84988e25}.collection-map-status-completed,.collection-map-status-ready{background:#79c6df;box-shadow:0 0 0 3px #79c6df30}.collection-map-status-running,.collection-map-status-partial,.collection-map-status-stale{background:#f2b95e;box-shadow:0 0 0 3px #f2b95e35}.collection-map-status-failed{background:#fa7777;box-shadow:0 0 0 3px #fa777735}.collection-map-compass{position:absolute;top:14px;right:15px;z-index:2;display:grid;justify-items:center;gap:1px;width:26px;color:#c6d6d0;font: .55rem 'DM Mono',monospace}.collection-map-compass i{font-size:.68rem;font-style:normal}
@media(max-width:900px){.collection-map-groups{grid-template-columns:repeat(6,minmax(0,1fr))}.collection-map-group{grid-column:auto/span 6}}
.run-heading-collection-link{border-bottom:1px solid color-mix(in srgb,var(--teal) 38%,transparent);transition:color .18s,border-color .18s}.run-heading-collection-link:hover{color:var(--teal);border-color:var(--teal)}
.collection-map-pin[draggable="true"]{cursor:grab}.collection-map-pin.is-dragging{opacity:.35;cursor:grabbing}.collection-map-canvas.map-dragging [data-map-group-target]{transition:border-color .15s,background .15s,box-shadow .15s}.collection-map-group.drop-target{border-color:var(--teal);background:rgba(38,69,72,.9);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 24%,transparent),0 9px 24px #10191b88}.collection-map-canvas.map-move-pending{cursor:progress}.collection-map-move-status{position:absolute;right:16px;bottom:12px;z-index:3;max-width:calc(100% - 32px);padding:6px 10px;border:1px solid var(--border);border-radius:999px;color:var(--text);background:var(--surface);box-shadow:0 4px 14px #10191b80;font-size:.7rem}.collection-map-move-status[hidden]{display:none}
.heatmap-tooltip .heatmap-tooltip-status-completed{color:#39d98a;background:#39d98a20}.heatmap-tooltip .heatmap-tooltip-status-running,.heatmap-tooltip .heatmap-tooltip-status-partial,.heatmap-tooltip .heatmap-tooltip-status-stale{color:var(--accent-1);background:#ffab3215}.heatmap-tooltip .heatmap-tooltip-status-failed,.heatmap-tooltip .heatmap-tooltip-status-error{color:#ff8c8c;background:color-mix(in srgb,var(--accent-5) 28%,transparent)}
.heatmap-scale-key{display:inline-flex;align-items:center;gap:6px}.heatmap-scale-gradient{display:inline-block;width:68px;height:10px;border:1px solid var(--border-soft);border-radius:2px;background:linear-gradient(90deg,color-mix(in srgb,var(--blue) 12%,transparent),color-mix(in srgb,var(--blue) 54%,transparent),color-mix(in srgb,var(--blue) 96%,transparent))}
.overview-top-row{align-items:stretch}.overview-top-row>.overview-heatmap-panel{margin-bottom:0}.overview-run-history{margin-bottom:18px}.overview-heatmap-content{min-width:0}
.activity-heatmap-scroll{container-type:inline-size}.activity-heatmap-table{--heatmap-cell-size:max(18px,calc(3.5714286cqi - 4.7142857px))}.activity-heatmap-table thead th:not(.activity-heatmap-corner),.activity-heatmap-table .heatmap-cell{width:var(--heatmap-cell-size);min-width:var(--heatmap-cell-size);max-width:var(--heatmap-cell-size)}.activity-heatmap-table thead .activity-heatmap-day-group{width:calc(var(--heatmap-cell-size) + var(--heatmap-cell-size));min-width:calc(var(--heatmap-cell-size) + var(--heatmap-cell-size));max-width:calc(var(--heatmap-cell-size) + var(--heatmap-cell-size))}.activity-heatmap-table th,.activity-heatmap-table td,.activity-heatmap-table thead tr:first-child th,.activity-heatmap-table thead tr:nth-child(2) th{height:var(--heatmap-cell-size);line-height:var(--heatmap-cell-size)}

/* Keep the complete two-week matrix visible and fit every slot to the panel width. */
.activity-heatmap-scroll{max-height:none;overflow:visible;scrollbar-gutter:auto}
.activity-heatmap-table{width:100%;min-width:100%;table-layout:fixed;--heatmap-label-width:clamp(48px,18.8571429cqi,132px);--heatmap-cell-size:max(2.9cqi,calc(3.5714286cqi - 4.7142857px))}
.activity-heatmap-table .activity-heatmap-corner,.activity-heatmap-table .activity-heatmap-collection{width:var(--heatmap-label-width);min-width:var(--heatmap-label-width);max-width:var(--heatmap-label-width)}
.heatmap-swatch-running{background:#39d98a}
.activity-heatmap-table .heatmap-cell-running{background:#39d98a}
.heatmap-tooltip .heatmap-tooltip-status-running{color:#39d98a;background:#39d98a20}
.run-phase-timings{margin:16px 0;padding:12px 0;border-top:1px solid var(--border-soft)}
.run-phase-timings h3{margin:0 0 8px;color:var(--muted);font-size:.8rem}
.run-phase-timing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.run-phase-timing{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:9px 10px;border:1px solid var(--border-soft);border-radius:6px;background:var(--surface-2)}
.run-phase-timing span{color:var(--muted);font-size:.76rem}
.run-phase-timing strong{color:var(--text);font:500 .76rem 'DM Mono',monospace;white-space:nowrap}
@media(max-width:560px){.run-phase-timing-grid{grid-template-columns:1fr}}
.activity-heatmap-table .activity-heatmap-collection{transition:background-color .14s,color .14s,box-shadow .14s}
.activity-heatmap-table .heatmap-row-focused .activity-heatmap-collection{color:var(--teal);background:color-mix(in srgb,var(--teal) 13%,var(--surface));box-shadow:inset 3px 0 var(--teal)}
.activity-heatmap-table thead .heatmap-axis-focused{color:var(--teal);background:color-mix(in srgb,var(--teal) 14%,var(--surface));box-shadow:inset 0 -2px var(--teal)}
.activity-heatmap-table .heatmap-cell.heatmap-column-focused{box-shadow:inset 1px 0 color-mix(in srgb,var(--teal) 34%,transparent),inset -1px 0 color-mix(in srgb,var(--teal) 34%,transparent)}
.activity-heatmap-table .heatmap-row-focused .heatmap-cell.heatmap-column-focused{box-shadow:inset 1px 0 var(--teal),inset -1px 0 var(--teal),inset 0 1px var(--teal),inset 0 -1px var(--teal)}
.overview-heatmap-content{overflow:visible;overscroll-behavior:auto;scrollbar-gutter:auto}
.activity-heatmap-scroll{overflow:visible;overscroll-behavior:auto;touch-action:pan-y}
