/* ==========================================================================
   _root.css — токени та базовий reset
   Усі розміри у фіксованих px. Адаптив — через медіа-запити (теж у px).
   ========================================================================== */

:root {
    /* --- Палітра (з оригінального скріншоту) --- */
    --c-bg:            #0c0c0c;
    --c-bg-deep:       #000000;
    --c-accent:        #f8c800;   /* бренд-жовтий Metro 2039 */
    --c-accent-ink:    #0c0c0c;   /* текст на жовтому */
    --c-text:          #ffffff;
    --c-text-soft:     #d7d7d7;   /* пункти меню */
    --c-text-dim:      #9a9a9a;

    /* --- Патріотична палітра (модалка підтримки ЗСУ) --- */
    --c-ua-blue:       #0057b7;   /* синій прапора */
    --c-ua-blue-deep:  #06214f;   /* темне синє поле-герб */
    --c-ua-blue-ink:   #04122e;   /* майже-чорне синє тло */
    --c-ua-gold:       #ffd500;   /* жовтий прапора */
    --c-ua-gold-soft:  #ffe27a;   /* світлий блік золота */
    --c-ua-gold-deep:  #d9a400;   /* тінь золота */

    /* семантичні кольори станів (успіх / помилка / інформація) */
    --c-success:       #46d6a0;   /* успіх, вільне, валідно */
    --c-danger:        #ff6b6b;   /* помилка, зайнято, невалідно */
    --c-info:          #4f9dff;   /* інформація, модератор */
    --c-neutral:       #b8b8b8;   /* нейтральний (базовий ранг) */

    /* --- Шрифти --- */
    --f-display: "Oswald", "Arial Narrow", sans-serif;
    --f-body:    "Archivo", system-ui, sans-serif;
    --f-metro:   "Metro2039", "Oswald", sans-serif;  /* кутастий шрифт для заголовків секцій */

    /* --- Розкладка --- */
    --container:   1440px;  /* центральний контейнер шапки/контенту */
    --header-h:    68px;
    --header-t:    80px;
    --rail-w:      96px;    /* ширина бічних рейок (соцмережі / newsletter) */

    /* --- Інше --- */
    --ease:        cubic-bezier(.22, .61, .36, 1);
}

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

html,
body {
    height: 100%;
}

body {
    background: var(--c-bg-deep);
    color: var(--c-text);
    font-family: var(--f-body);
    font-size: 18px;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    overflow-x: hidden;
}

/* ----- виділення тексту: бренд-жовтий замість дефолтного ----- */
::selection {
    background: var(--c-accent);
    color: var(--c-accent-ink);
}
::-moz-selection {
    background: var(--c-accent);
    color: var(--c-accent-ink);
}

/* ----- кастомний скролбар: Firefox ----- */
html {
    scrollbar-width: thin;
    scrollbar-color: var(--c-accent) transparent;
}
/* ----- кастомний скролбар: WebKit / Chromium / Edge ----- */
::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
    background-color: var(--c-accent);
    border-radius: 999px;
    border: 3px solid transparent;     /* прозорий бордер -> «плаваючий» тонкий thumb */
    background-clip: padding-box;
}
::-webkit-scrollbar-thumb:hover { background-color: #ffd84d; }
::-webkit-scrollbar-corner { background: transparent; }

a {
    color: inherit;
    text-decoration: none;
}

img,
svg {
    display: block;
}

button {
    font: inherit;
    color: inherit;
    background: none;
    border: 0;
    cursor: pointer;
}

ul {
    list-style: none;
}

:focus-visible {
    outline: 2px solid var(--c-accent);
    outline-offset: 3px;
}
