/**
 * Базовые стили темы SMC (core)
 * Файл: /wp-content/themes/smc/assets/css/core.css
 * Версия файла: 1.0.2
 * Author: NUVREN
 *
 * Назначение:
 * - Глобальные переменные (цвета, шрифты, радиусы, тени);
 * - Базовая типографика и контейнер;
 * - Базовые кнопки и утилиты;
 * - НЕ содержит header, footer, секций, сеток и карточек.
 */

/* ============================================================
   1. ПЕРЕМЕННЫЕ ТЕМЫ
   ============================================================ */

:root {
    /* Цвета бренда */
    --smc-color-primary: #43bbff;          /* основной синий */
    --smc-color-primary-dark: #26a8f2;     /* ховер */
    --smc-color-primary-darker: #1f8fff;   /* клик/active */
    --smc-color-primary-soft: #e1f1ff;

    /* Текст */
    --smc-color-text: #1f2933;
    --smc-color-text-muted: #6b7480;
    --smc-color-text-dark: #111827;
    --smc-color-text-light: #ffffff;

    /* Фоны и границы */
    --smc-color-bg: #f7f9fc;
    --smc-color-bg-soft: #f3f6fb;
    --smc-color-border: #d1d9e6;
    --smc-color-border-soft: #e3e9f3;
    --smc-color-von: #43bbff;

    /* Радиусы */
    --smc-radius-sm: 4px;
    --smc-radius-md: 8px;
    --smc-radius-lg: 18px;
    --smc-radius-pill: 999px;

    /* Тени */
    --smc-shadow-sm: 0 6px 14px rgba(15, 23, 42, 0.04);
    --smc-shadow-md: 0 18px 45px rgba(15, 23, 42, 0.08);
}

/* ============================================================
   2. СБРОС И БАЗА
   ============================================================ */

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

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text",
        "Segoe UI", sans-serif;
    color: var(--smc-color-text);
    background-color: #ffffff;
    -webkit-font-smoothing: antialiased;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
}

/* Обычные ссылки (кнопки .smc-btn сюда не попадают) */
a:not(.smc-btn) {
    color: var(--smc-color-primary-dark);
    text-decoration: none;
    transition: color 0.16s ease, opacity 0.16s ease;
}

a:not(.smc-btn):hover {
    color: var(--smc-color-primary);
}

p {
    margin: 0 0 0.6rem;
    line-height: 1.55;
}

h1,
h2,
h3,
h4 {
    margin: 0;
    color: var(--smc-color-text-dark);
}

/* ============================================================
   3. КОНТЕЙНЕР И ОСНОВНАЯ ОБЛАСТЬ
   ============================================================ */

.smc-site-wrapper {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.smc-main {
    flex: 1 0 auto;
}

.smc-container {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

/* ============================================================
   4. КНОПКИ
   ============================================================ */

.smc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    font-weight: 600;
    font-size: 0.98rem;
    line-height: 1.2;

    padding: 0.8rem 1.6rem;

    border-radius: 999px;
    border: none;

    cursor: pointer;
    text-decoration: none;

    transition:
        background-color 0.16s ease,
        box-shadow 0.16s ease,
        transform 0.08s ease,
        color 0.16s ease;
}

/* Основная голубая кнопка */
.smc-btn-primary {
    background-color: var(--smc-color-primary);
    color: #ffffff;
    box-shadow: 0 12px 28px rgba(31, 143, 255, 0.3);
}

.smc-btn-primary:hover {
    background-color: var(--smc-color-primary-dark);
    color: #ffffff;
    box-shadow: 0 16px 40px rgba(22, 102, 212, 0.35);
    transform: translateY(-1px);
}

.smc-btn-primary:active {
    background-color: var(--smc-color-primary-darker);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(22, 102, 212, 0.4);
    transform: translateY(0);
}

/* Светлая кнопка (в том числе в синей плашке) */
.smc-btn-ghost {
    background-color: #ffffff;
    color: var(--smc-color-primary-dark);
    border: 1px solid var(--smc-color-border-soft);
    box-shadow: var(--smc-shadow-sm);
}

.smc-btn-ghost:hover {
    background-color: #f5f7fb;
    color: var(--smc-color-primary-dark);
}

.smc-btn-ghost:active {
    background-color: #e4e8f4;
    color: var(--smc-color-primary-dark);
}

/* Гарантируем, что ссылки-кнопки не перекрашиваются общими правилами a:hover */
.smc-btn.smc-btn-primary,
.smc-btn.smc-btn-primary:hover,
.smc-btn.smc-btn-primary:active,
.smc-btn.smc-btn-primary:focus {
    color: #ffffff;
}

/* Размер Small */
.smc-btn-sm {
    padding: 0.6rem 1.25rem;
    font-size: 0.92rem;
}