/* Error view (404 / 403 / 500) content, shared by two contexts:
   - modules/loggedin/views/dashboard/error.php, embedded in the logged-in
     shell (layouts/main.php) below the navbar/breadcrumbs — sized to the
     remaining content area.
   - views/site/error.php, rendered standalone through layouts/home.php with
     no chrome — uses .error-page--full to center on the whole viewport. */
html:has(body.ui-refresh:has(.error-page)) {
    height: 100svh;
}
body.ui-refresh:has(.error-page) {
    height: 100svh;
}
.ui-refresh .error-page {
    min-height: calc(100svh - 60px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-6);
}
.ui-refresh .error-page.error-page--full {
    min-height: 100svh;
}
.ui-refresh .error-page .theme-empty-state {
    text-align: center;
    max-width: 480px;
    padding: 0;
}
.ui-refresh .error-page .theme-empty-state-title {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: var(--space-5);
}
.ui-refresh .error-page .theme-empty-state-title i {
    font-size: 1.75em;
    margin-right: var(--space-2);
    color: var(--fg-subtle);
    margin-bottom: 0;
}
.ui-refresh .error-page-code {
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semibold);
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--accent-primary);
    margin-bottom: var(--space-2);
}
.ui-refresh .error-page .error-page-actions {
    margin-top: var(--space-6);
    display: flex;
    gap: var(--space-3);
    justify-content: center;
}
