/* Explain: Theme design tokens (colors, fonts) — single source of truth. */
:root {
    /* Marka — spokojna, kontrastowa, budująca zaufanie */
    --primary-color: #7b1e3b;
    --primary-hover: #5e162d;
    --primary-soft: #f6e9ee;
    --on-primary: #ffffff;

    --secondary-color: #6b4f2a;
    --accent-color: #b45309;
    --accent-hover: #8f4207;
    --on-accent: #ffffff;

    --background-color: #ffffff;
    --surface-color: #f4f4f5;
    --surface-strong: #e6e6e9;

    --text-color: #0c1a1d;
    --text-muted: #4a5a5e;
    --border-color: #d4d4d8;
    --focus-color: #b45309;
    --success-color: #14603a;
    --danger-color: #a51f1f;

    --font-heading: 'Atkinson Hyperlegible', 'Segoe UI', Tahoma, sans-serif;
    --font-body: 'Atkinson Hyperlegible', 'Segoe UI', Tahoma, sans-serif;

    --content-width: 1200px;
    --radius-sm: 8px;
    --radius-md: 14px;
    --radius-lg: 22px;

    --shadow-sm: 0 1px 3px rgba(12, 26, 29, .08);
    --shadow-md: 0 10px 28px rgba(12, 26, 29, .10);
    --shadow-lg: 0 22px 50px rgba(12, 26, 29, .16);

    /* Skalowany przez panel ułatwień dostępu */
    --base-font-size: 100%;
}

/* Tryb wysokiego kontrastu */
html.hc {
    --background-color: #000000;
    --surface-color: #0b0b0b;
    --surface-strong: #171717;

    --text-color: #ffffff;
    --text-muted: #f0f0f0;
    --border-color: #9a9a9a;

    --primary-color: #ffd60a;
    --primary-hover: #ffe94d;
    --primary-soft: #2b2400;
    --on-primary: #000000;

    --secondary-color: #ffd60a;
    --accent-color: #ffd60a;
    --accent-hover: #ffe94d;
    --on-accent: #000000;

    --focus-color: #ffd60a;
    --success-color: #6ee7a8;
    --danger-color: #ff8a8a;
}