/* =============================================
   THEME: Sotheby's (Light Only)
   Чёрно-белая строгость + синий hover
   Золото — только подчёркивание заголовков
   ============================================= */

.theme-sothebys {
    /* --- Основные токены (HSL) --- */
    --background: 0 0% 100%;           /* #FFFFFF */
    --foreground: 0 0% 10%;            /* #1A1A1A */

    --card: 0 0% 100%;
    --card-foreground: 0 0% 10%;

    --popover: 0 0% 100%;
    --popover-foreground: 0 0% 10%;

    /* Синий для hover/акцентов: #23448D → HSL 222 60% 35% */
    --primary: 222 60% 35%;            /* Sotheby's Blue */
    --primary-foreground: 0 0% 100%;

    --secondary: 0 0% 96%;             /* #F5F5F5 */
    --secondary-foreground: 0 0% 10%;

    --muted: 0 0% 93%;                 /* #EDEDED */
    --muted-foreground: 0 0% 45%;      /* #737373 */

    /* Акцент = синий (не золотой) */
    --accent: 222 60% 35%;
    --accent-foreground: 0 0% 100%;

    --destructive: 0 72% 51%;
    --destructive-foreground: 0 0% 100%;

    --border: 0 0% 88%;                /* #E0E0E0 */
    --input: 0 0% 88%;
    --ring: 222 60% 35%;

    --radius: 0px;

    /* --- Поверхность --- */
    --color-surface: #ffffffcc;
    --color-panel-solid: #ffffff;
    --color-panel-translucent: #ffffffb3;
    --color-background: #FFFFFF;

    /* --- Синяя палитра (1–12 градации) --- */
    --sothebys-1: #f8f9fd;
    --sothebys-2: #f0f3fa;
    --sothebys-3: #e2e7f5;
    --sothebys-4: #cdd4ed;
    --sothebys-5: #b3bde2;
    --sothebys-6: #94a1d4;
    --sothebys-7: #7182c3;
    --sothebys-8: #4c60b0;
    --sothebys-9: #23448d;             /* основной синий */
    --sothebys-10: #1d3875;
    --sothebys-11: #172c5c;
    --sothebys-12: #0e1a3a;

    --accent-1: var(--sothebys-1);
    --accent-2: var(--sothebys-2);
    --accent-3: var(--sothebys-3);
    --accent-4: var(--sothebys-4);
    --accent-5: var(--sothebys-5);
    --accent-6: var(--sothebys-6);
    --accent-7: var(--sothebys-7);
    --accent-8: var(--sothebys-8);
    --accent-9: var(--sothebys-9);
    --accent-10: var(--sothebys-10);
    --accent-11: var(--sothebys-11);
    --accent-12: var(--sothebys-12);

    /* Золото — отдельно, только для декора */
    --gold: 43 51% 48%;
    --font-display: 'Cormorant Garamond';
    --font-body: 'Inter';

    /* Размеры заголовков */
    --text-h1: clamp(2.5rem, 5vw, 4.5rem);     /* 40px → 72px */
    --text-h2: clamp(1.75rem, 3.5vw, 2.5rem);   /* 28px → 40px */
    --text-h3: clamp(1.25rem, 2.5vw, 1.75rem);   /* 20px → 28px */
    --text-h4: clamp(1rem, 2vw, 1.25rem);        /* 16px → 20px */
    --text-h5: 1rem;                             /* 16px */
    --text-h6: 0.875rem;                         /* 14px */

    /* Размеры тела */
    --text-body: 1rem;                           /* 16px */
    --text-body-sm: 0.875rem;                    /* 14px */
    --text-meta: 0.75rem;                        /* 12px */
    --text-caption: 0.6875rem;                   /* 11px */

    /* Тёмно-синий для кнопок: #00253E → HSL 209 100% 12% */
    --btn: 209 100% 12%;               /* #00253E */
    --btn-foreground: 0 0% 100%;
    --btn-hover: 222 60% 35%;          /* #23448D */
}

@layer base {
    body {
        font-family: var(--font-body), 'Times New Roman', serif;
    }

    h1, h2, h3, h4, .font-display, .heading-underline {
        font-family: var(--font-display), 'Helvetica Neue', 'Arial', sans-serif;
    }

    .theme-sothebys {
        h1, .h1 {
            font-size: var(--text-h1);
            font-weight: 700;
            line-height: 1.1;
            letter-spacing: -0.01em;
            color: hsl(var(--foreground));
        }

        h2, .h2 {
            font-size: var(--text-h2);
            font-weight: 600;
            line-height: 1.2;
            letter-spacing: -0.005em;
            color: hsl(var(--foreground));
        }

        h3, .h3 {
            font-size: var(--text-h3);
            font-weight: 500;
            line-height: 1.3;
            color: hsl(var(--foreground));
        }

        h4, .h4 {
            font-family: var(--font-body);
            font-size: var(--text-h4);
            font-weight: 500;
            line-height: 1.4;
            letter-spacing: 0.02em;
            text-transform: uppercase;
            color: hsl(var(--foreground));
        }

        h5, .h5 {
            font-family: var(--font-body);
            font-size: var(--text-h5);
            font-weight: 500;
            line-height: 1.4;
            letter-spacing: 0.03em;
            text-transform: uppercase;
            color: hsl(var(--muted-foreground));
        }

        h6, .h6 {
            font-family: var(--font-body);
            font-size: var(--text-h6);
            font-weight: 600;
            line-height: 1.4;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            color: hsl(var(--muted-foreground));
        }

        p, .body {
            font-family: var(--font-body);
            font-size: var(--text-body);
            font-weight: 400;
            line-height: 1.6;
            color: hsl(var(--foreground));
        }

        .body-sm {
            font-size: var(--text-body-sm);
            line-height: 1.5;
        }

        .meta {
            font-family: var(--font-body);
            font-size: var(--text-meta);
            font-weight: 500;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: hsl(var(--muted-foreground));
        }

        .caption {
            font-family: var(--font-body);
            font-size: var(--text-caption);
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: hsl(var(--muted-foreground));
        }
    }
}


/* =============================================
   НАВИГАЦИЯ: hover → синий #23448D
   ============================================= */
.theme-sothebys .nav-link {
    text-decoration: none;
    color: hsl(var(--foreground));
    padding-bottom: 2px;
    transition: color 0.2s ease;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.8rem;
}

.theme-sothebys .nav-link:hover,
.theme-sothebys .nav-link.active {
    color: hsl(var(--primary));        /* #23448D */
}

/* =============================================
   ЗОЛОТОЕ ПОДЧЁРКИВАНИЕ ЗАГОЛОВКОВ
   ============================================= */
.theme-sothebys .heading-underline {
    position: relative;
    display: inline-block;
    padding-bottom: 0.75rem;
}

.theme-sothebys .heading-underline::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 2px;
    background-color: hsl(var(--gold)); /* золотой #B8973E */
}

/* Выравнивание по левому краю (для секций) */
.theme-sothebys .heading-underline-left::after {
    left: 0;
    transform: none;
}

/* =============================================
   КНОПКИ: Чёрные, строгие
   ============================================= */
/* Основная кнопка */
.theme-sothebys .btn-primary,
.theme-sothebys a[role="button"].btn-primary {
    background-color: hsl(var(--btn));            /* #00253E */
    color: hsl(var(--btn-foreground));
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-radius: var(--radius);
    border: 1px solid hsl(var(--btn));
    padding: 0.75rem 2rem;
    font-size: 0.8rem;
    transition: all 0.2s ease;
    cursor: pointer;
}

.theme-sothebys .btn-primary:hover {
    background-color: hsl(var(--btn-hover));      /* #23448D */
    border-color: hsl(var(--btn-hover));
}

/* Вторичная кнопка (обводка) */
.theme-sothebys .btn-outline,
.theme-sothebys a[role="button"].btn-outline {
    background-color: transparent;
    color: hsl(var(--btn));
    border: 1px solid hsl(var(--btn));
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-radius: var(--radius);
    padding: 0.75rem 2rem;
    font-size: 0.8rem;
    transition: all 0.2s ease;
    cursor: pointer;
}

.theme-sothebys .btn-outline:hover {
    background-color: hsl(var(--btn));
    color: hsl(var(--btn-foreground));
}

/* Акцентная кнопка (редко) */
.theme-sothebys .btn-accent,
.theme-sothebys a[role="button"].btn-accent {
    background-color: hsl(var(--primary));         /* #23448D */
    color: hsl(var(--primary-foreground));
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-radius: var(--radius);
    border: 1px solid hsl(var(--primary));
    padding: 0.75rem 2rem;
    font-size: 0.8rem;
    transition: all 0.2s ease;
    cursor: pointer;
}

.theme-sothebys .btn-accent:hover {
    background-color: transparent;
    color: hsl(var(--primary));
}

/* =============================================
   КОМПОНЕНТЫ
   ============================================= */

/* Хлебные крошки */
.theme-sothebys .breadcrumbs .home-crumb .icon-\[famicons--home-outline\] {
    color: hsl(var(--foreground));
}

.theme-sothebys .breadcrumbs .breadcrumb-link:hover {
    color: hsl(var(--primary));
}

/* Карточки */
.theme-sothebys .card {
    border-radius: var(--radius);
    border-color: hsl(var(--border));
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}
.theme-sothebys .card:hover {
    border-color: hsl(var(--border));
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
}

/* Бейдж */
.theme-sothebys .badge {
    background-color: hsl(var(--foreground));
    color: hsl(var(--card));
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 0.25rem 0.75rem;
    border-radius: var(--radius);
}

/* Разделительная линия */
.theme-sothebys .divider {
    border-color: hsl(var(--border));
}

/* Текст-мета */
.theme-sothebys .text-meta {
    color: hsl(var(--muted-foreground));
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

/* Ссылки в контенте */
.theme-sothebys .content-link {
    color: hsl(var(--foreground));
    text-decoration: none;
    transition: color 0.2s ease;
}

.theme-sothebys .content-link:hover {
    color: hsl(var(--primary));        /* #23448D */
}

/* Алерты */
.theme-sothebys .alert-success {
    background-color: hsl(150 30% 96%);
    border-color: hsl(150 20% 82%);
    color: hsl(150 40% 25%);
}
.theme-sothebys .alert-danger,
.theme-sothebys .alert-error {
    background-color: hsl(0 30% 97%);
    border-color: hsl(0 20% 85%);
    color: hsl(0 60% 35%);
}
.theme-sothebys .alert-warning {
    background-color: hsl(40 40% 96%);
    border-color: hsl(40 30% 82%);
    color: hsl(40 50% 25%);
}

/* Пагинация */
.theme-sothebys .paginator a:hover {
    border-color: hsl(var(--primary));
    color: hsl(var(--primary));
}
.theme-sothebys .paginator span.active {
    background-color: hsl(var(--foreground));
    border-color: hsl(var(--foreground));
    color: hsl(var(--card));
}

/* Выделение текста */
.theme-sothebys ::selection {
    background-color: hsl(var(--primary) / 0.15);
    color: hsl(var(--foreground));
}