/* Kuartal Status — based on Kuartal Group redesign/DESIGN-SYSTEM.md */
@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-Medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/Poppins-SemiBold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
:root{--bg:#fff;--cream:#faf9f6;--bg-2:#f5f5f3;--surface:#ededeb;--text:#171717;--text-2:#666;--border:#e5e5e3;--solid-bg:#171717;--solid-fg:#fff;--dot:rgba(160,160,156,.25);--f-head:Poppins,Arial,sans-serif;--f-body:"Arial Unicode MS",Arial,sans-serif;color-scheme:light}
@media(prefers-color-scheme:dark){:root{--bg:#111;--cream:#191919;--bg-2:#191919;--surface:#242424;--text:#f5f5f5;--text-2:#b5b5b5;--border:#363636;--solid-bg:#f5f5f5;--solid-fg:#111;--dot:rgba(90,90,90,.3);color-scheme:dark}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--f-body);background-image:radial-gradient(circle,var(--dot) .9px,transparent 1px);background-size:22px 22px}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--text);outline-offset:4px}
.top,main,footer{max-width:1200px;margin:auto}.top{height:64px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border);background:var(--bg)}
.brand{display:flex;align-items:center;gap:14px;min-width:0;font:500 16px var(--f-head)}.brand-picture{display:flex;align-items:center}.brand-logo{display:block;max-width:140px;width:auto;height:34px;object-fit:contain}.brand-status{padding-left:14px;border-left:1px solid var(--border);white-space:nowrap}
.top-actions{display:flex;align-items:center;gap:18px}.timestamp,.small{font-size:12px;color:var(--text-2)}.outline{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 16px;border:1px solid var(--border);border-radius:999px;font:500 13px var(--f-head);transition:background .15s}.outline:hover{background:var(--bg-2)}
main{padding:0 32px}.hero{padding:72px 0}.eyebrow{font:500 12px var(--f-head);color:var(--text-2);letter-spacing:0}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#36cc64;margin:0 6px 1px}
h1,h2,h3,.service-name,.summary strong{font-family:var(--f-head)}h1{font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.2;letter-spacing:-.04em;font-weight:500;margin:20px 0}h1 em{font-style:normal;color:inherit}h2{font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.3;font-weight:500;letter-spacing:-.03em;margin:8px 0 0}.intro{max-width:600px;color:var(--text-2);line-height:1.7}
.summary{margin-top:32px;padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--cream);display:flex;align-items:center;gap:18px}.summary-icon{display:grid;place-items:center;width:38px;height:38px;flex:none;border:1px solid var(--border);border-radius:50%;font-size:21px}.summary strong{font-size:17px;font-weight:500}.summary p{font-size:14px;color:var(--text-2);margin:4px 0 0}
.section{border-top:1px solid var(--border);padding:48px 0 64px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:24px}.services{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--bg)}.service{padding:24px;border-bottom:1px solid var(--border)}.service:last-child{border-bottom:0}.service-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.service-name{font-size:16px;font-weight:500}.service-url{font-size:12px;color:var(--text-2);margin-top:4px;word-break:break-all}.state{font:500 12px var(--f-head);white-space:nowrap}.state.good{color:#26884a}.state.bad{color:#b84b40}.state.warn{color:#a47425}.state.unknown{color:var(--text-2)}
.bars{display:grid;grid-template-columns:repeat(45,minmax(0,1fr));gap:3px}.bar{height:22px;background:var(--surface);border-radius:2px}.bar.good,.swatch.good{background:#36a85e}.bar.bad,.swatch.bad{background:#c95a4d}.bar.warn,.swatch.warn{background:#cda44c}.bar.unknown,.swatch.no-data{background:var(--border)}.bar-labels{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:11px;color:var(--text-2)}
.legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:16px;font-size:12px;color:var(--text-2)}.swatch{display:inline-block;width:10px;height:10px;border-radius:2px;margin-left:12px}.swatch:first-child{margin-left:0}
.incident,.empty{border:1px solid var(--border);border-radius:14px;padding:24px;background:var(--cream);margin-bottom:12px}.incident h3{font-size:18px;font-weight:500;margin:0 0 8px}.incident p,.faq p{color:var(--text-2);line-height:1.7}.incident p{margin:0 0 12px}.incident time{font-size:12px;color:var(--text-2)}.empty{color:var(--text-2)}.faq{display:grid;grid-template-columns:1fr 1fr;gap:32px}.faq p{margin-top:0}
footer{border-top:1px solid var(--border);padding:32px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--text-2);font-size:12px}.mini{font-size:14px;color:var(--text)}.mini .brand-logo{height:26px;max-width:110px}
@media(max-width:760px){.top{padding:0 18px}.top-actions{gap:8px}.timestamp{display:none}main{padding:0 18px}.hero{padding:48px 0}.section{padding:36px 0 48px}.section-head{align-items:start}.service{padding:18px}.bars{gap:2px}.bar{height:18px}.faq{grid-template-columns:1fr;gap:8px}footer{padding:24px 18px;flex-direction:column;align-items:start}.brand-logo{max-width:105px;height:30px}.brand-status{padding-left:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.outline{transition:none}}

/* Check-by-check history: truthful Gatus samples, keyboard accessible tooltips. */
.bars{overflow:visible}
.bar{position:relative;min-width:0}
.bar[data-tip]{cursor:help}
.bar[data-tip]:hover,.bar[data-tip]:focus-visible{outline:2px solid var(--text);outline-offset:2px;z-index:3}
.bar[data-tip]::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);width:max-content;max-width:min(290px,80vw);white-space:normal;overflow-wrap:anywhere;background:var(--solid-bg);color:var(--solid-fg);border-radius:8px;padding:10px 12px;font:12px/1.5 var(--f-body);box-shadow:0 6px 18px rgba(0,0,0,.15);opacity:0;visibility:hidden;pointer-events:none;z-index:20}
.bar[data-tip]:hover::after,.bar[data-tip]:focus-visible::after{opacity:1;visibility:visible}
