:root{--color-primary: #0066cc;--color-primary-focus: #0071e3;--color-primary-on-dark: #2997ff;--color-ink: #1d1d1f;--color-ink-muted-80: #333333;--color-ink-muted-48: #7a7a7a;--color-body-muted: #cccccc;--color-divider-soft: #f0f0f0;--color-hairline: #e0e0e0;--color-canvas: #ffffff;--color-parchment: #f5f5f7;--color-pearl: #fafafc;--color-black: #000000;--color-on-dark: #ffffff;--status-ok: #34c759;--status-alarm: #ff3b30;--status-warn: #ff9f0a;--radius-xs: 5px;--radius-sm: 8px;--radius-md: 11px;--radius-lg: 18px;--radius-pill: 9999px;--space-xxs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 17px;--space-lg: 24px;--space-xl: 32px;--space-xxl: 48px;--space-section: 80px;--font-stack: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-parchment);color:var(--color-ink);font-family:var(--font-stack);font-size:17px;font-weight:400;line-height:1.47;letter-spacing:-.374px;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.hero-display{font-size:56px;font-weight:600;line-height:1.07;letter-spacing:-.28px}.display-lg{font-size:40px;font-weight:600;line-height:1.1;letter-spacing:0}.display-md{font-size:34px;font-weight:600;line-height:1.47;letter-spacing:-.374px}.lead{font-size:28px;font-weight:400;line-height:1.14;letter-spacing:.196px}.tagline{font-size:21px;font-weight:600;line-height:1.19;letter-spacing:.231px}.body-strong{font-size:17px;font-weight:600;line-height:1.24;letter-spacing:-.374px}.caption{font-size:14px;font-weight:400;line-height:1.43;letter-spacing:-.224px}.caption-strong{font-size:14px;font-weight:600;line-height:1.29;letter-spacing:-.224px}.fine-print{font-size:12px;font-weight:400;line-height:1.3;letter-spacing:-.12px}.muted{color:var(--color-ink-muted-48)}@media (max-width: 1068px){.hero-display{font-size:40px}}@media (max-width: 640px){.hero-display,.display-lg{font-size:34px}}@media (max-width: 419px){.hero-display,.display-lg{font-size:28px}}button{font-family:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.5}.btn-primary{background:var(--color-primary);color:var(--color-on-dark);font-size:17px;font-weight:400;line-height:1.47;letter-spacing:-.374px;border:none;border-radius:var(--radius-pill);padding:11px 22px}.btn-secondary{background:var(--color-canvas);color:var(--color-primary);font-size:17px;font-weight:400;line-height:1.47;letter-spacing:-.374px;border:1px solid var(--color-primary);border-radius:var(--radius-pill);padding:11px 22px}.btn-dark-utility{background:var(--color-ink);color:var(--color-on-dark);font-size:14px;font-weight:400;line-height:1.29;letter-spacing:-.224px;border:none;border-radius:var(--radius-sm);padding:8px 15px}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-dark-utility:active:not(:disabled),.chip:active{transform:scale(.95)}.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-dark-utility:focus-visible,.chip:focus-visible,.input:focus-visible,.nav-link:focus-visible{outline:2px solid var(--color-primary-focus);outline-offset:2px}.global-nav{background:var(--color-black);position:sticky;top:0;z-index:10}.global-nav-inner{max-width:1200px;margin:0 auto;height:44px;display:flex;align-items:center;gap:20px;padding:0 var(--space-lg)}.nav-brand{color:var(--color-on-dark);font-size:14px;font-weight:600;letter-spacing:-.224px;white-space:nowrap}.nav-link{color:var(--color-on-dark);font-size:12px;font-weight:400;line-height:1;letter-spacing:-.12px;text-decoration:none;opacity:.72}.nav-link.active{opacity:1}.nav-spacer{flex:1}.nav-email{color:var(--color-body-muted);font-size:12px;letter-spacing:-.12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40vw}.global-nav .btn-dark-utility{flex-shrink:0}.page{max-width:1200px;margin:0 auto;padding:var(--space-xl) var(--space-lg) var(--space-section)}.section{margin-top:var(--space-xxl)}.section-title{margin-bottom:var(--space-md)}.card{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);padding:var(--space-lg)}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:20px}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:20px}.chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:20px}.dash-hero{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-md);margin-top:var(--space-md)}.hero-sub{margin-top:var(--space-xs)}.alarm-count{color:var(--status-alarm)}.refresh-row{display:flex;align-items:center;gap:var(--space-sm);padding-bottom:var(--space-xxs)}.alarm-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-xs);margin-bottom:var(--space-xs)}.alarm-name{overflow-wrap:anywhere}.status-chip{display:inline-block;border-radius:var(--radius-pill);padding:3px 10px;font-size:12px;font-weight:600;line-height:1.3;letter-spacing:-.12px;white-space:nowrap;flex-shrink:0}.status-chip.ok{color:var(--status-ok);background:#34c7591f}.status-chip.alarm{color:var(--status-alarm);background:#ff3b301f}.status-chip.warn{color:var(--status-warn);background:#ff9f0a1f}.dot{display:inline-block;width:8px;height:8px;border-radius:50%}.dot.ok{background:var(--status-ok)}.dot.stale{background:var(--status-alarm)}.error-text,.warn-text{display:flex;gap:var(--space-xs);color:var(--color-ink-muted-48);margin-top:var(--space-md)}.error-text:before,.warn-text:before{content:"";flex-shrink:0;width:8px;height:8px;margin-top:6px;border-radius:50%}.error-text:before{background:var(--status-alarm)}.warn-text:before{background:var(--status-warn)}.table-card{padding:var(--space-md) var(--space-lg) var(--space-xs)}.table-title{margin-bottom:var(--space-xs)}.table-scroll{overflow-x:auto}.files-table{width:100%;border-collapse:collapse}.files-table th{text-align:left;font-size:14px;font-weight:600;letter-spacing:-.224px;color:var(--color-ink-muted-48);padding:var(--space-xs) var(--space-sm) var(--space-xs) 0;border-bottom:1px solid var(--color-hairline)}.files-table td{padding:10px var(--space-sm) 10px 0;border-bottom:1px solid var(--color-divider-soft);vertical-align:middle}.files-table tr:last-child td{border-bottom:none}.file-cell{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-md)}.chip{background:var(--color-canvas);color:var(--color-ink);font-size:14px;font-weight:400;line-height:1.43;letter-spacing:-.224px;border:1px solid var(--color-hairline);border-radius:var(--radius-pill);padding:12px 16px}.chip.selected{border:2px solid var(--color-primary-focus);padding:11px 15px}.sla-hero{margin-top:var(--space-xl)}.sla-sub{margin-top:var(--space-sm);color:var(--color-ink-muted-80)}.chart-card{min-width:0}.chart-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-xs);margin-bottom:var(--space-md)}.chart-card .fine-print{margin-top:var(--space-xs)}.canary-card .display-md{line-height:1.2}.canary-uptime{margin-top:var(--space-xxs)}.spark{margin-top:var(--space-sm)}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-lg)}.login-card{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);padding:var(--space-xl);width:100%;max-width:380px}.login-title{margin-bottom:var(--space-lg)}.field-label{display:block;margin:var(--space-md) 0 var(--space-xs)}.input{width:100%;height:44px;background:var(--color-canvas);color:var(--color-ink);font-family:inherit;font-size:17px;letter-spacing:-.374px;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius-pill);padding:12px 20px}.login-btn{width:100%;margin-top:var(--space-lg)}.config-error{max-width:480px;margin:20vh auto 0;background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);padding:var(--space-xl);display:grid;gap:var(--space-xs)}
