/* Wishing Star Labs back office — plain and neutral until WSL has a brand. */
:root {
    --wsl-text: #1f2328;
    --wsl-muted: #59636e;
    --wsl-border: #d8dee4;
    --wsl-surface: #f6f8fa;
    --wsl-accent: #0b5cad;
    --bs-primary: #0b5cad;
    --bs-link-color: #0b5cad;
    --bs-link-hover-color: #084684;
}
html, body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: var(--wsl-text); background: #fff; }
h1 { font-size: 1.6rem; margin-bottom: 1rem; }
h2 { font-size: 1.2rem; margin-top: 1.75rem; }
.btn-primary { --bs-btn-bg: var(--wsl-accent); --bs-btn-border-color: var(--wsl-accent); --bs-btn-hover-bg: #084684; --bs-btn-hover-border-color: #084684; }
.nav-section { font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; color: var(--wsl-muted); margin: 1rem .75rem .25rem; }
.nav-link { display: block; padding: .35rem .75rem; border-radius: .375rem; color: var(--wsl-text); text-decoration: none; }
.nav-link:hover { background: #eaeef2; }
.nav-link.active { background: #dde7f3; color: var(--wsl-accent); font-weight: 600; }
.card-plain { border: 1px solid var(--wsl-border); border-radius: .5rem; padding: 1rem 1.25rem; margin-bottom: 1rem; background: #fff; }
.muted { color: var(--wsl-muted); }
.table td, .table th { vertical-align: middle; }
.table-responsive { margin-bottom: 1rem; }
.badge-layer { font-size: .7rem; }
.pre-wrap { white-space: pre-wrap; }
.narrow { max-width: 32rem; }
.support-banner { border-left: .35rem solid #d97706; }
.validation-message { color: #b42318; font-size: .875rem; }
.invalid { border-color: #b42318; }
#blazor-error-ui { display: none; position: fixed; bottom: 0; left: 0; right: 0; padding: .6rem 1.25rem; background: #fff3cd; z-index: 1000; }
#blazor-error-ui .dismiss { cursor: pointer; position: absolute; right: .75rem; top: .5rem; }
.audit-summary { min-width: 16rem; }
