/* ══════════════════════════════════════════════════════════════════════
   СЛОЙ ПО ГАЙДУ «Дизайн для недизайнеров». Грузится последним и решает.
   ──────────────────────────────────────────────────────────────────────
   До него лежат два слоя, которые гайду противоречат: main.css с тёмной
   темой «северное сияние» и glass.css с жидким стеклом. Оба строятся на
   том, что гайд прямо запрещает: цветные пятна за интерфейсом,
   градиентные заливки, тени и подсветки. Здесь всё это снимается, и
   остаётся формула гайда: фон + текст одного цвета + логотип.

   Палитра взята с обложек уроков — тех, что уже утверждены:
     тёмная сторона  #131417 фон / #F0EEEA текст
     светлая сторона #F4F3F0 фон / #1D1D1F текст
   Чистые чёрный и белый не используются: гайд требует «чёрный чуть
   светлее, белый едва темнее».

   Цвет остаётся ровно там, где несёт смысл: деньги и статусы. Иначе
   «просрочено» и «принято» перестают читаться — это не украшение.
   ══════════════════════════════════════════════════════════════════ */

/* ── 1. Никаких цветных пятен за интерфейсом ─────────────────────────
   glass.css рисует их через body::before в обеих темах. Гасим целиком:
   фон должен быть просто фоном.                                      */
body::before,
body.theme-student::before {
  content: none !important;
  background: none !important;
  filter: none !important;
  animation: none !important;
}

/* ── 2. Светлая сторона: админ и куратор ─────────────────────────── */
:root {
  --blue:       #1D1D1F;
  --blue-hover: #000000;
  --blue-light: #ECEAE5;
  --purple:     #6E6E73;
  --teal:       #8E8E93;
  --bg:         #F4F3F0;
  --surface:    #FDFDFB;
  --surface-2:  #F7F6F3;
  --separator:  rgba(29,29,31,0.10);
}

body { background: var(--bg); }
a { color: #1D1D1F; }

.btn-primary        { background: #1D1D1F; color: #FDFDFB; }
.btn-primary:hover  { background: #000000; color: #FDFDFB; }
.btn-ghost          { color: #1D1D1F; }
.btn-ghost:hover    { background: var(--blue-light); }

.nav-link.active            { background: #1D1D1F; color: #FDFDFB; }
.nav-link.active .nav-icon,
.nav-link.active .ic        { color: #FDFDFB; }
.sidebar-brand-icon         { background: #1D1D1F; color: #FDFDFB; }

.badge-blue { background: none; color: var(--label-3); }
.alert-info { background: rgba(29,29,31,0.05); color: #1D1D1F; }

/* ── 3. Стекло убрано: поверхности плоские ────────────────────────── */
.card, .stat-card, .modal, .auth-card, .course-card, .hw-card,
body.theme-student .card,
body.theme-student .stat-card,
body.theme-student .modal,
body.theme-student .auth-card,
body.theme-student .course-card,
body.theme-student .hw-card {
  background: var(--surface) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  border: 1px solid var(--separator) !important;
  box-shadow: none !important;
}

.sidebar, body.theme-student .sidebar,
.mobile-topbar, body.theme-student .mobile-topbar {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
}
.sidebar        { background: var(--surface) !important; border-right: 1px solid var(--separator) !important; }
.mobile-topbar  { background: var(--surface) !important; border-bottom: 1px solid var(--separator) !important; }

/* Подпрыгивание карточек по наведению — тоже декор */
.stat-card:hover, .course-card:hover,
body.theme-student .stat-card:hover,
body.theme-student .course-card:hover {
  transform: none !important;
  box-shadow: none !important;
}

/* ── 4. Тёмная сторона: кабинет ученика, мир обложек ──────────────── */
body.theme-student {
  --blue:       #F0EEEA;
  --blue-hover: #FFFFFF;
  --blue-light: rgba(240,238,233,0.12);
  --purple:     #F0EEEA;
  --teal:       #F0EEEA;
  --green:      #7FBF9A;
  --orange:     #D8A657;
  --red:        #D97C7C;

  --bg:         #131417;
  --surface:    #1A1B1F;
  --surface-2:  #212226;
  --label-1:    #F0EEEA;
  --label-2:    rgba(240,238,233,0.72);
  --label-3:    rgba(240,238,233,0.48);
  --label-4:    rgba(240,238,233,0.30);
  --separator:  rgba(240,238,233,0.10);
  --fill-1:     rgba(240,238,233,0.06);
  --fill-2:     rgba(240,238,233,0.11);
}
body.theme-student { background: #131417 !important; }
body.theme-student .sidebar       { background: #17181C !important; }
body.theme-student .mobile-topbar { background: #17181C !important; }

body.theme-student .btn-primary {
  background: #F0EEEA !important; color: #131417 !important; box-shadow: none !important;
}
body.theme-student .btn-primary:hover {
  background: #FFFFFF !important; color: #131417 !important; filter: none;
}
body.theme-student .nav-link.active {
  background: #F0EEEA !important; color: #131417 !important; box-shadow: none !important;
}
body.theme-student .nav-link.active .nav-icon,
body.theme-student .nav-link.active .ic { color: #131417 !important; }
body.theme-student .sidebar-brand-icon { background: #F0EEEA !important; color: #131417 !important; }
body.theme-student a { color: #F0EEEA; }

/* Заголовок ученика — один цвет, без градиентной заливки */
body.theme-student .page-title {
  background: none !important;
  -webkit-text-fill-color: #F0EEEA !important;
  color: #F0EEEA !important;
}

/* ── 5. Градиенты на мелочах — в один тон ─────────────────────────── */
.avatar, .book-cover, .book-cover.started, .book-cover.done,
.course-icon, .auth-icon, .sidebar-brand-icon,
body.theme-student .avatar,
body.theme-student .book-cover,
body.theme-student .book-cover.started,
body.theme-student .book-cover.done,
body.theme-student .course-icon,
body.theme-student .auth-icon {
  box-shadow: none !important;
}
.book-cover, .book-cover.started, .book-cover.done { background: #3A3A3A !important; }
body.theme-student .book-cover,
body.theme-student .book-cover.started,
body.theme-student .book-cover.done { background: #2A2B30 !important; }
.avatar      { background: var(--fill-2) !important; color: var(--label-1) !important; }
.auth-icon   { background: #1D1D1F !important; }
body.theme-student .auth-icon { background: #F0EEEA !important; color: #131417 !important; }
.auth-footer a { color: #1D1D1F !important; }
body.theme-student .auth-footer a { color: #F0EEEA !important; }

/* ── 6. Дашборд: цифры одного цвета ───────────────────────────────── */
.stat-icon-wrap { background: var(--fill-1) !important; }
.stat-val       { color: var(--label-1) !important; }
.stat-val span,
.stat-val small { color: var(--label-3) !important; }
td[style*="#34C759"] { color: var(--label-1) !important; }

/* ── 7. Полоса прогресса ──────────────────────────────────────────── */
body.theme-student .pbar      { background: var(--fill-2); }
body.theme-student .pbar-fill { background: #F0EEEA; }

/* ── 8. Фокус на поле — контуром, а не цветным свечением ──────────── */
.form-input:focus,
body.theme-student .form-input:focus {
  box-shadow: none !important;
  border-color: var(--label-3) !important;
}

/* ── 9. Выход из аккаунта — обычный пункт меню, не тревога ────────── */
.sidebar-logout, .sidebar-logout span, .sidebar-logout .ic,
.sidebar-logout:hover, .sidebar-logout:hover span, .sidebar-logout:hover .ic {
  color: var(--label-2) !important;
}
.sidebar-logout:hover { background: var(--fill-1) !important; }

/* ── 10. Значок раздела — ровный тон вместо сине-фиолетового градиента ── */
.course-icon { background: var(--fill-2) !important; color: var(--label-1) !important; }
body.theme-student .course-icon { background: var(--fill-2) !important; color: var(--label-1) !important; }

/* ── 11. Опасное действие не должно быть самым громким на странице ────
   «Удалить» стоит у каждой карточки в списке, поэтому красная заливка
   перетягивает внимание с самого содержания. Оставляем красным только
   текст, а заливку показываем в момент наведения — когда человек уже
   целится в кнопку.                                                   */
.btn-danger {
  background: none !important;
  color: var(--red) !important;
  border: 1px solid transparent !important;
  box-shadow: none !important;
}
.btn-danger:hover {
  background: var(--red) !important;
  color: #FDFDFB !important;
}
body.theme-student .btn-danger:hover { color: #131417 !important; }

/* ── 12. Знак школы на входе ──────────────────────────────────────────
   Раньше в квадрате стоял смайлик; после его удаления остался пустой
   светлый прямоугольник — первое, что видит человек на странице входа.
   Ставим тот же знак «Д», что и в шапке кабинета.                     */
.auth-icon {
  font-weight: 700;
  line-height: 1;
  color: #FDFDFB !important;
}
body.theme-student .auth-icon { color: #131417 !important; }

/* ── 13. Остатки «жидкого стекла» ─────────────────────────────────────
   glass.css добавлял размытие, градиентную подсветку и внутренние блики
   второстепенным кнопкам, полям и ховерам. На глаз это почти незаметно,
   но именно из таких мелочей набирается общая мутность: гайд требует
   плоскую заливку одним тоном и чёткую границу.                       */
.btn-secondary, .btn-outline, .btn-ghost,
body.theme-student .btn-secondary,
body.theme-student .btn-outline,
body.theme-student .btn-ghost {
  background: var(--fill-1) !important;
  border: 1px solid var(--separator) !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  color: var(--label-1);
}
.btn-secondary:hover, .btn-outline:hover, .btn-ghost:hover,
body.theme-student .btn-secondary:hover,
body.theme-student .btn-outline:hover,
body.theme-student .btn-ghost:hover {
  background: var(--fill-2) !important;
}

.btn-primary, body.theme-student .btn-primary { box-shadow: none !important; }

.form-input, body.theme-student .form-input {
  background: var(--surface-2) !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.badge {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
}

.card-hover:hover, body.theme-student .card-hover:hover {
  box-shadow: none !important;
  border-color: var(--label-4) !important;
}

.modal-overlay {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.pbar { box-shadow: none !important; }
