/* === ТЕМА === */
:root {
    --color-primary: #7f1d1d;
    --color-primary-hover: #5f1515;
    --color-primary-light: #fee2e2;
    --color-primary-dark: #3f0a0a;
    --color-text: #18181b;
    --color-bg: #f8f9fa;
}

.dark {
    --color-primary: #7f1d1d;
    --color-primary-hover: #5f1515;
    --color-primary-light: #4a1f1f;   /* более заметный тёмный оттенок для тёмной темы */
    --color-bg: #09090b;
    --color-text: #f4f4f5;
}

/* === БАЗА === */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

body {
    font-family: 'Inter', system-ui, sans-serif;
    background: var(--color-bg);
    color: var(--color-text);
}
.logo {
  transition: opacity 0.3s ease;
}
.logo-dark {
  display: none;
}

.dark .logo-light {
  display: none;
}

.dark .logo-dark {
  display: block;
}

/* === ГЕРОЙ === */
.hero-bg {
    background: linear-gradient(rgba(0,0,0,0.45), rgba(0,0,0,0.55)), url('images/hero-bg.jpg') center/cover no-repeat;
}

.dark .hero-bg {
    background: linear-gradient(rgba(0,0,0,0.75), rgba(0,0,0,0.85)), url('images/hero-bg.jpg') center/cover no-repeat;
    color: #f8f8f8;
}

/* === КАРТОЧКИ === */
.card-hover {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.card-hover:hover {
    transform: translateY(-12px);
    box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
}

/* === КНОПКИ И АКЦЕНТЫ === */
.btn-primary {
    background: var(--color-primary);
    color: #fff;
}
.btn-primary:hover {
    background: var(--color-primary-hover);
}

.text-primary { color: var(--color-primary); }
.border-primary { border-color: var(--color-primary); }
.bg-primary-light { background: var(--color-primary-light); }

/* === SIDEBAR  === */
.sidebar-item {
    cursor: pointer;
    transition: all 0.2s ease;
}

.sidebar-item.active {
    background: var(--color-primary-light);
    border-left: 5px solid var(--color-primary);
    font-weight: 600;
    color: var(--color-primary);
}

.sidebar-item:hover:not(.active) {
    background: var(--color-primary-light);
}

/* === ЧЕКБОКСЫ / РАДИО === */
input[type="checkbox"],
input[type="radio"] {
    accent-color: var(--color-primary);
}

/* === ЦЕНА === */
.price-live {
    font-size: 1.4rem;
    font-weight: bold;
    color: var(--color-primary);
}

.qty-btn, .side-btn {
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.qty-btn:hover, .side-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1);
}

.qty-btn {
  transition: all 0.2s cubic-bezier(0.4, 0.0, 0.2, 1);
  text-align: center; /* дополнительная страховка */
}

.qty-btn.border-primary {
  box-shadow: 0 0 0 3px rgba(127, 29, 29, 0.2); /* лёгкая обводка вокруг primary */
}

.paper-card:has(input:checked) {
  border-color: #7f1d1d !important;
  background-color: #fef2f2 !important;
}

.dark .paper-card:has(input:checked) {
  background-color: #450a0a !important;
}

.extra-card:has(input:checked) {
  border-color: #7f1d1d;
}