* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--az-ground); color: var(--az-ink); font-family: var(--az-font); font-size: 18px; line-height: 1.6; word-break: keep-all; }
main { max-width: var(--az-size-reading); margin: 0 auto; padding: var(--az-space-6) var(--az-space-4) var(--az-space-12); }
h1 { font-size: var(--az-title-size); line-height: 1.3; margin: 0 0 var(--az-space-1); }
h2 { font-size: var(--az-heading-size); line-height: 1.3; margin: var(--az-space-8) 0 var(--az-space-3); }
a { color: var(--az-accent); }
a:focus-visible, button:focus-visible { outline: 2px solid var(--az-accent); outline-offset: 2px; }
.brand { margin: 0 0 var(--az-space-4); color: var(--az-accent); font-weight: 700; font-size: var(--az-label-size); }
.muted { color: var(--az-ink-2); margin: 0; }
.slot { display: flex; gap: var(--az-space-4); align-items: flex-start; padding: var(--az-space-5); border-radius: var(--az-radius-lg); margin-top: var(--az-space-4); background: var(--az-ground-sunken); }
.slot .ic { flex: none; width: var(--az-size-hero-icon); height: var(--az-size-hero-icon); border-radius: 50%; display: grid; place-items: center; background: var(--az-card); color: var(--az-ink-2); }
.slot .ic svg { width: 28px; height: 28px; }
.slot .time { font-size: var(--az-label-size); color: var(--az-ink-2); font-weight: 600; }
.slot .state { font-size: 22px; font-weight: 700; line-height: 1.35; margin: 2px 0; }
.slot .detail { color: var(--az-ink-2); margin: 0; }
.slot.good { background: var(--az-good-soft); } .slot.good .ic { color: var(--az-good); }
.slot.bad { background: var(--az-bad-soft); } .slot.bad .ic { color: var(--az-bad); } .slot.bad .state { color: var(--az-bad); }
.slot.warn { background: var(--az-warn-soft); } .slot.warn .ic { color: var(--az-warn); }
.card { margin-top: var(--az-space-8); padding: var(--az-space-5); border-radius: var(--az-radius-lg); background: var(--az-card); box-shadow: var(--az-shadow-card); }
.card h2 { margin-top: 0; }
.btn { margin-top: var(--az-space-4); width: 100%; min-height: var(--az-size-cta); border: 0; border-radius: var(--az-radius-pill); background: var(--az-solid); color: var(--az-on-solid); font: inherit; font-weight: 700; cursor: pointer; }
.btn.outline { background: transparent; color: var(--az-ink); box-shadow: inset 0 0 0 1px var(--az-field); }
.list { list-style: none; padding: 0; margin: 0; }
.list li { padding: var(--az-space-3) 0; border-bottom: 1px solid var(--az-rule); }
.list .when { display: block; font-size: var(--az-label-size); color: var(--az-ink-3); }
.foot { margin-top: var(--az-space-10); font-size: var(--az-label-size); color: var(--az-ink-3); }
.prose h2 { margin-top: var(--az-space-6); }
.prose p, .prose li { color: var(--az-ink-2); }
