/* ─── SmartZeit Global Styles ─────────────────────────────── */

*, *::before, *::after {
    box-sizing: border-box;
}

html, body {
    margin: 0;
    padding: 0;
    font-family: 'Inter', ui-sans-serif, system-ui, sans-serif;
    background: #FFF5E6;
    color: #111827;
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
}

/* Smooth anchor scrolling offset for fixed AppBar */
:target {
    scroll-margin-top: 88px;
}

/* Remove default MudBlazor body padding when using MudMainContent */
.mud-main-content {
    padding: 0 !important;
}

/* ─── Typography helpers ──────────────────────────────────── */
.text-center {
    text-align: center;
}

/* ─── Utility spacing ─────────────────────────────────────── */
.mt-4  { margin-top: 16px; }
.mt-8  { margin-top: 32px; }
.mt-12 { margin-top: 48px; }
.mb-4  { margin-bottom: 16px; }
.mx-1  { margin-left: 4px; margin-right: 4px; }
.mx-2  { margin-left: 8px; margin-right: 8px; }
.ml-2  { margin-left: 8px; }

/* ─── Focus ring (WCAG 2.2 AA) ───────────────────────────── */
:focus-visible {
    outline: 3px solid #2C6BED;
    outline-offset: 3px;
    border-radius: 4px;
}

/* ─── Blazor error boundary ──────────────────────────────── */
#blazor-error-ui {
    display: none;
}

.blazor-error-boundary {
    background: #DC2626;
    padding: 1rem;
    color: white;
    border-radius: 8px;
}

.blazor-error-boundary::after {
    content: "Ein Fehler ist aufgetreten.";
}

/* ─── Scrollbar (optional, minimal style) ────────────────── */
::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-track {
    background: #F3F4F6;
}

::-webkit-scrollbar-thumb {
    background: #D1D5DB;
    border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
    background: #9CA3AF;
}
