@font-face {
    font-family: 'IBM Plex Sans';
    src: url('/fonts/ibm-plex-sans/IBMPlexSans-cyrillic.woff2') format('woff2');
    font-weight: 400 700;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
    font-family: 'IBM Plex Sans';
    src: url('/fonts/ibm-plex-sans/IBMPlexSans-latin.woff2') format('woff2');
    font-weight: 400 700;
    font-style: normal;
    font-display: swap;
}

/* Legacy family names stay mapped to one physical font, so the app
   keeps the same layout while Russian/English/digits render uniformly. */
@font-face {
    font-family: 'Inter';
    src: url('/fonts/ibm-plex-sans/IBMPlexSans-cyrillic.woff2') format('woff2');
    font-weight: 400 700;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
    font-family: 'Inter';
    src: url('/fonts/ibm-plex-sans/IBMPlexSans-latin.woff2') format('woff2');
    font-weight: 400 700;
    font-style: normal;
    font-display: swap;
}

/* SRP-дизайн (конструктор на бренде default): НАСТОЯЩИЕ Bounded/Satoshi вместо IBM-Plex-алиаса —
   иначе «Bounded» рисуется жирным IBM Plex Sans («не тот шрифт»). Файлы те же, что грузит app.srp.css. */
@font-face {
    font-family: 'Satoshi';
    src: url('/fonts/satoshi/Satoshi-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Satoshi';
    src: url('/fonts/satoshi/Satoshi-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Satoshi';
    src: url('/fonts/satoshi/Satoshi-Black.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Bounded';
    src: url('/fonts/bounded/Bounded-Variable.ttf') format('truetype');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Bounded';
    src: url('/fonts/bounded/Bounded-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Bounded';
    src: url('/fonts/bounded/Bounded-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
/* Настоящий Inter (шрифт макета Royal Raise) — ОТДЕЛЬНЫМ именем семейства. Имя 'Inter' выше
   намеренно оставлено легаси-алиасом на IBM Plex Sans: на него завязаны ~26 мест в app.css,
   и подмена физического файла сдвинула бы вёрстку у всех клубов. Кто хочет оригинал —
   выбирает в конструкторе «Inter (оригинал)». Variable-начертание, latin + cyrillic + ₽. */
@font-face {
    font-family: 'Inter Variable';
    src: url('/fonts/inter/InterVariable.woff2') format('woff2');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
/* Onest (бренд Royal Royce) — чтобы был доступен в конструкторе (Unbounded/Cormorant/Space Grotesk/
   Manrope/Mont уже грузятся из directions.css). */
@font-face {
    font-family: 'Onest';
    src: url('/fonts/onest/onest-cyrillic.woff2') format('woff2');
    font-weight: 400 800;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'Onest';
    src: url('/fonts/onest/onest-cyrillic-ext.woff2') format('woff2');
    font-weight: 400 800;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: 'Onest';
    src: url('/fonts/onest/onest-latin.woff2') format('woff2');
    font-weight: 400 800;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Onest';
    src: url('/fonts/onest/onest-latin-ext.woff2') format('woff2');
    font-weight: 400 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/fonts/ibm-plex-sans/IBMPlexSans-cyrillic.woff2') format('woff2');
    font-weight: 400 700;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/fonts/ibm-plex-sans/IBMPlexSans-latin.woff2') format('woff2');
    font-weight: 400 700;
    font-style: normal;
    font-display: swap;
}

:root {
    --app-font-family: 'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    --app-font-weight: 500;
}

html,
body,
button,
input,
textarea,
select {
    font-family: var(--app-font-family);
    font-weight: var(--app-font-weight);
}
