/* =============================================================
   FÄRGTEMA – Ojanperä brand (matchar default.scss)
   ============================================================= */
:root {
    /* Bakgrundsfärger — speglar --site-bg-clr och --clr-theme02 */
    --color-bg-page:    #193A58; /* theme01 — sidans bakgrund */
    --color-bg-card:    #30699D; /* theme02 — header/kortbakgrund */
    --color-border-card: rgba(191, 216, 239, 0.2); /* theme03 transparent */

    /* Textfärger */
    --color-text-primary: #F7F9FB; /* theme05 — ljus text på mörk bakgrund */
    --color-text-body:    #BFD8EF; /* theme03 — sekundär text */
    --color-text-muted:   rgba(191, 216, 239, 0.6); /* theme03 dämpad */

    /* Accentfärg — theme03 (ljusblå) */
    --color-accent: #BFD8EF;

    /* Fokusring (WCAG AAA) — synlig på mörk bakgrund */
    --color-focus-ring: #BFD8EF;
    --focus-ring-width: 3px;

    /* Spinner spår */
    --color-spinner-track: rgba(191, 216, 239, 0.25);
}

/* =============================================================
   RESET
   ============================================================= */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* =============================================================
   GRUNDSTIL
   ============================================================= */
html {
    height: 100%;
}

body {
    min-height: 100%;
    /* Satoshi — samma typsnitt som sajten */
    font-family: "Satoshi", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background-color: var(--color-bg-page);
    color: var(--color-text-primary);
}

/* =============================================================
   TILLGÄNGLIGHET – fokusring (WCAG 2.1 SC 2.4.7 & 2.4.12 AAA)
   ============================================================= */
:focus-visible {
    outline: var(--focus-ring-width) solid var(--color-focus-ring);
    outline-offset: 4px;
    border-radius: 4px;
}

:focus:not(:focus-visible) {
    outline: none;
}

/* =============================================================
   RÖRELSEMINSKNING (WCAG 2.1 SC 2.3.3 AAA)
   ============================================================= */
@media (prefers-reduced-motion: reduce) {
    .spinner {
        animation: none;
        border-top-color: var(--color-accent);
        opacity: 0.7;
    }
}

/* =============================================================
   LAYOUT
   ============================================================= */
.maintenance-wrapper {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.maintenance-card {
    background-color: var(--color-bg-card);
    border-radius: 8px; /* --border-radius: 0.5rem */
    padding: 40px 36px;
    max-width: 480px;
    width: 100%;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.5);
    border: 1px solid var(--color-border-card);
}

/* =============================================================
   LOGGA
   ============================================================= */
.maintenance-logo {
    display: flex;
    justify-content: center;
    margin-bottom: 28px;
}

.maintenance-logo img {
    /* Visa i exakta pixlar — ingen uppskalning av en 188×30 px bild */
    width: 188px;
    height: 30px;
}

/* =============================================================
   TEXTER
   ============================================================= */
.maintenance-title {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 12px;
    text-align: center;
    color: var(--color-text-primary);
    letter-spacing: -0.01em;
}

.maintenance-text {
    font-size: 1rem;
    line-height: 1.6;
    color: var(--color-text-body);
    text-align: center;
    margin-bottom: 28px;
}

.maintenance-footer-text {
    font-size: 0.875rem;
    color: var(--color-text-muted);
    text-align: center;
    margin-top: 20px;
    line-height: 1.5;
}

/* =============================================================
   STATUS + SPINNER
   ============================================================= */
.maintenance-status {
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: center;
    background-color: rgba(25, 58, 88, 0.4); /* theme01 transparent */
    border-radius: 6px; /* --btn-border-radius */
    padding: 12px 16px;
}

#maintenance-status-text {
    font-size: 0.9rem;
    color: var(--color-text-body);
    line-height: 1.5;
}

.spinner {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid var(--color-spinner-track);
    border-top-color: var(--color-accent);
    animation: spin 0.9s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* =============================================================
   RESPONSIVITET
   ============================================================= */
@media (max-width: 480px) {
    .maintenance-card {
        padding: 28px 20px;
    }

    .maintenance-title {
        font-size: 1.4rem;
    }

    .maintenance-text {
        font-size: 0.95rem;
    }
}
