:root {
    color-scheme: dark;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: #07110f;
    color: #eef8f3;
    --surface: rgba(17, 38, 33, .82);
    --line: rgba(183, 231, 211, .16);
    --muted: #a8c1b6;
    --accent: #66ddb0;
    --accent-strong: #b8f6d9;
}
* { box-sizing: border-box; }
body {
    margin: 0;
    min-height: 100vh;
    background: radial-gradient(circle at 85% 0, rgba(54, 180, 135, .18), transparent 32rem), radial-gradient(circle at 0 45%, rgba(37, 114, 91, .12), transparent 28rem), #07110f;
}
a { color: inherit; }
.shell { width: min(1160px, calc(100% - 2rem)); margin: 0 auto; padding: 3rem 0 2rem; }
.hero {
    display: flex; justify-content: space-between; gap: 2rem; align-items: flex-end;
    padding: 2.5rem; border: 1px solid var(--line); border-radius: 1.5rem;
    background: linear-gradient(135deg, rgba(24, 60, 49, .94), rgba(10, 25, 21, .92));
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
}
.hero.compact { align-items: center; }
.brand { display: inline-flex; align-items: center; gap: .65rem; font-weight: 750; text-decoration: none; letter-spacing: .01em; }
.mark { display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: .65rem; background: var(--accent); color: #052218; }
.eyebrow { margin: 2rem 0 .5rem; color: var(--accent); font-size: .75rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
h1 { margin: 0; font-size: clamp(2.2rem, 5vw, 4.5rem); line-height: .98; letter-spacing: -.055em; }
h2 { margin: .2rem 0 1.4rem; font-size: 1.4rem; }
.intro { max-width: 47rem; margin: 1.1rem 0 0; color: var(--muted); font-size: 1.05rem; line-height: 1.65; }
.health { display: flex; align-items: center; gap: .8rem; min-width: 13rem; padding: 1rem 1.2rem; border: 1px solid var(--line); border-radius: 1rem; background: rgba(3, 17, 13, .42); }
.health div { display: grid; gap: .2rem; }
.health small, article small { color: var(--muted); }
.dot { width: .8rem; height: .8rem; border-radius: 50%; background: #eab308; box-shadow: 0 0 0 .35rem rgba(234, 179, 8, .12); }
body.ready .dot { background: var(--accent); box-shadow: 0 0 0 .35rem rgba(102, 221, 176, .13); }
body.failed .dot { background: #fb7185; box-shadow: 0 0 0 .35rem rgba(251, 113, 133, .12); }
.metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin: 1rem 0; }
.metrics article, .panel { border: 1px solid var(--line); border-radius: 1.15rem; background: var(--surface); backdrop-filter: blur(12px); }
.metrics article { display: grid; gap: .45rem; min-height: 9.5rem; padding: 1.3rem; }
.metrics article > span { color: var(--muted); font-size: .82rem; }
.metrics article strong { align-self: end; color: var(--accent-strong); font-size: clamp(1.55rem, 3vw, 2.35rem); letter-spacing: -.04em; }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.panel { padding: 1.6rem; }
.panel .eyebrow { margin-top: 0; }
dl { margin: 0; }
dl div { display: flex; justify-content: space-between; gap: 2rem; padding: .8rem 0; border-top: 1px solid var(--line); }
dt { color: var(--muted); }
dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.links { display: grid; }
.links a { display: flex; justify-content: space-between; gap: 1rem; padding: .85rem 0; border-top: 1px solid var(--line); text-decoration: none; }
.links a:hover span { color: var(--accent); }
code { color: var(--muted); font: inherit; font-size: .85rem; }
.notice { margin: 1rem 0; padding: 1rem 1.2rem; border: 1px solid rgba(102, 221, 176, .2); border-radius: 1rem; background: rgba(41, 112, 88, .13); color: var(--muted); line-height: 1.55; }
.notice strong { color: var(--accent-strong); }
.error { padding: 1rem; border: 1px solid rgba(251, 113, 133, .35); border-radius: 1rem; color: #fecdd3; }
footer { display: flex; justify-content: space-between; gap: 1rem; width: min(1160px, calc(100% - 2rem)); margin: 0 auto; padding: 0 0 2rem; color: var(--muted); font-size: .8rem; }
@media (max-width: 760px) {
    .shell { padding-top: 1rem; }
    .hero { display: grid; padding: 1.5rem; }
    .health { width: 100%; }
    .metrics { grid-template-columns: repeat(2, 1fr); }
    .grid { grid-template-columns: 1fr; }
    footer { display: grid; }
}
@media (max-width: 430px) {
    .metrics { grid-template-columns: 1fr; }
    dl div, .links a { align-items: flex-start; flex-direction: column; gap: .3rem; }
    dd { text-align: left; }
}
