.brand { display: inline-flex; color: var(--text-strong); font-weight: 800; font-size: 1.25rem; text-decoration: none; letter-spacing: -0.03em; }
.brand--centered { justify-content: center; width: 100%; margin-bottom: var(--space-5); }
.eyebrow { display: block; color: var(--primary); font-size: 0.76rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: var(--space-2); }
.button {
    display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2);
    min-height: 2.65rem; padding: 0.65rem 1rem; border: 1px solid var(--primary);
    border-radius: var(--radius-sm); background: var(--primary); color: #fff;
    font-weight: 750; text-decoration: none; line-height: 1.2;
}
.button:hover { background: var(--primary-hover); border-color: var(--primary-hover); color: #fff; }
.button--quiet { background: transparent; color: var(--primary); }
.button--quiet:hover { background: #e7f2f0; color: var(--primary-hover); }
.button--danger { background: var(--danger); border-color: var(--danger); }
.button--danger:hover { background: #7d2020; border-color: #7d2020; }
.button--small { min-height: 2.15rem; padding: 0.45rem 0.7rem; font-size: 0.86rem; }
.card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); padding: clamp(1rem, 2vw, 1.5rem); }
.card--narrow { max-width: 46rem; }
.alert { border: 1px solid var(--border); border-left-width: 0.3rem; border-radius: var(--radius-md); padding: 0.85rem 1rem; margin-bottom: var(--space-5); background: var(--surface); }
.alert p:last-child, .alert ul:last-child { margin-bottom: 0; }
.alert--success { border-left-color: var(--success); background: #f0faf4; }
.alert--warning { border-left-color: var(--warning); background: #fff9ea; }
.alert--error { border-left-color: var(--danger); background: #fff3f2; }
.alert--info { border-left-color: var(--info); background: #eff8fd; }
.badge { display: inline-flex; align-items: center; border-radius: 999px; padding: 0.18rem 0.55rem; font-size: 0.76rem; font-weight: 800; white-space: nowrap; background: var(--surface-strong); color: var(--text); }
.badge--success { background: #dff4e7; color: #155a34; }
.badge--warning { background: #fff0c4; color: #714a00; }
.badge--danger { background: #fde2df; color: #842121; }
.badge--info { background: #ddeffa; color: #1c5579; }
.form-stack { display: grid; gap: var(--space-5); }
.form-grid { display: grid; gap: var(--space-4); }
.form-grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.field { display: grid; gap: var(--space-2); }
.field small { font-weight: 400; }
.check-field { display: flex; align-items: center; gap: var(--space-2); align-self: end; min-height: 2.7rem; }
.check-field input { width: auto; }
.table-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius-md); }
.table-wrap table { min-width: 45rem; }
.table-wrap--wide table { min-width: max-content; }
.table-wrap th:first-child, .table-wrap td:first-child { padding-left: 1rem; }
.table-wrap th:last-child, .table-wrap td:last-child { padding-right: 1rem; }
.actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.actions form { margin: 0; }
.metric-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: var(--space-4); }
.metric-grid--compact { grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr)); }
.metric-card { display: grid; gap: var(--space-2); min-height: 8rem; align-content: center; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: var(--space-5); box-shadow: var(--shadow-sm); }
.metric-card__label { color: var(--text-muted); font-size: 0.85rem; font-weight: 700; }
.metric-card__value { color: var(--text-strong); font-size: clamp(1.4rem, 2.5vw, 2rem); overflow-wrap: anywhere; }
.metric-card__hint { color: var(--text-muted); font-size: 0.8rem; }
.empty-state { display: grid; place-items: center; text-align: center; min-height: 10rem; padding: var(--space-8); color: var(--text-muted); }
.empty-state strong { color: var(--text-strong); font-size: 1.1rem; }
.section-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--space-4); margin-bottom: var(--space-5); }
.section-heading h2 { margin-bottom: 0; }
.check-list { list-style: none; padding: 0; display: grid; gap: var(--space-3); }
.check-list li { display: flex; align-items: flex-start; gap: var(--space-3); }
.prose { max-width: 70ch; }
.prose p, .prose li { max-width: 70ch; }
@media (max-width: 48rem) {
    .form-grid--two { grid-template-columns: 1fr; }
    .section-heading { align-items: flex-start; flex-direction: column; }
}
