/* ============================================================
   FitAI — кабинет: НАВИГАЦИЯ И ГЛАВНАЯ
   Зона файла: сайдбар, шапка/приветствие, дашборд, мобильная
   нижняя навигация. Стиль — новый лендинг (landing.css).
   Подключается после cabinet-base.css, где объявлены токены.

   ------------------------------------------------------------
   О СПЕЦИФИЧНОСТИ (читать перед правками)
   1) styles.css красит кабинет в тёмную тему ~107 правилами
      с !important; часть из них — (0,3,1), например
      `.btn, button:not(.exercise-heart):not(.check):not(.modal-close)`.
   2) app.js инжектит <style> в <head> РАНТАЙМОМ, то есть уже
      ПОСЛЕ всех <link>. При равном весе побеждает он.
   Поэтому базовый префикс здесь — `.fai83-shell.fai83-shell`
   (0,2,0): любое правило ниже получает минимум (0,3,0) и
   уверенно перекрывает и styles.css, и рантайм-инъекции.
   Мобильная навигация живёт вне шелла, там свой приём —
   троение класса, см. раздел 5.
   ------------------------------------------------------------ */


/* ============================================================
   0. ХОЛСТ
   .main в styles.css тёмный (#101512 и т.п.). Возвращаем бумагу.
   ============================================================ */
.fai83-shell.fai83-shell .main{
  background:var(--c-paper)!important;
}


/* ============================================================
   1. САЙДБАР
   Было: чёрная панель #080a09 с неоновой зелёной активной
   строкой. Стало: белая панель, тонкая граница, тёмная
   активная «пилюля» — как primary-кнопка на лендинге.
   ============================================================ */
.fai83-shell.fai83-shell .sidebar{
  background:var(--c-white)!important;
  border-right:1px solid var(--c-line)!important;
  padding:18px 14px 16px!important;
}

/* --- логотип ---
   В media/fitai-logo.png светлая графика: на белом фоне она
   почти не читается. Поэтому сам <img> получает тёмную
   плашку-бейдж (как .nl-mark i на лендинге), а не контейнер —
   так не трогаем display/раскладку .fp-brand-v72. */
.fai83-shell.fai83-shell .sidebar .fp-brand-v72{
  height:auto!important;
  padding:2px 2px 16px!important;
  margin-bottom:12px!important;
  background:transparent!important;
  border-bottom:1px solid var(--c-line)!important;
}
.fai83-shell.fai83-shell .sidebar .fp-brand-v72 img{
  box-sizing:border-box!important;
  width:54px!important;
  height:54px!important;
  padding:7px!important;
  border-radius:14px!important;
  background:var(--c-ink)!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* --- пункты меню --- */
.fai83-shell.fai83-shell .sidebar .menu{
  gap:4px!important;
  padding:2px 0 10px!important;
}
.fai83-shell.fai83-shell .sidebar .menu button{
  min-height:44px!important;
  padding:0 14px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  color:var(--c-ink-2)!important;
  font-family:var(--c-sans)!important;
  font-size:14.5px!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-align:left!important;
  box-shadow:none!important;
  transition:background .18s ease,color .18s ease,border-color .18s ease!important;
}
.fai83-shell.fai83-shell .sidebar .menu button:hover{
  background:var(--c-stone)!important;
  border-color:transparent!important;
  color:var(--c-ink)!important;
}
/* активный пункт: тёмная плашка, белый текст.
   Гасим зелёную inset-полосу из styles.css. */
.fai83-shell.fai83-shell .sidebar .menu button.active{
  /* был --c-ink (почти чёрный) — не совпадал с синими акцентами
     карточек на Главной и активным пунктом мобильной шторки */
  background:var(--c-blue)!important;
  border-color:transparent!important;
  color:#fff!important;
  font-weight:600!important;
  box-shadow:none!important;
}
.fai83-shell.fai83-shell .sidebar .menu button:focus-visible{
  outline:2px solid var(--c-blue-3)!important;
  outline-offset:2px!important;
}

/* --- виджет апгрейда ---
   Тёмная карточка = акцент лендинга. Иконка-корона — латунь. */
.fai83-shell.fai83-shell .sidebar .fp-sidebar-upgrade-v71{
  width:auto!important;
  margin:18px 0 2px!important;
  padding:18px!important;
  border:1px solid transparent!important;
  border-radius:18px!important;
  background:var(--c-ink)!important;
  box-shadow:var(--c-shadow)!important;
  transition:background .18s ease!important;
}
.fai83-shell.fai83-shell .sidebar .fp-sidebar-upgrade-v71.fai112-upgrade-card:hover{
  background:var(--c-blue)!important;
  border-color:transparent!important;
  box-shadow:var(--c-shadow)!important;
}
.fai83-shell.fai83-shell .sidebar .fp-sidebar-upgrade-icon-v71{
  width:34px!important;
  height:34px!important;
  margin-bottom:12px!important;
  border-radius:11px!important;
  background:var(--c-brass)!important;
  color:var(--c-ink)!important;               /* #121418 на #B08F5C = 5.1:1 */
  font-size:15px!important;
  font-weight:600!important;
}
.fai83-shell.fai83-shell .sidebar .fp-sidebar-upgrade-v71>b{
  margin:0 0 7px!important;
  font-family:var(--c-display)!important;
  font-size:15px!important;
  font-weight:600!important;
  line-height:1.25!important;
  letter-spacing:-.02em!important;
  color:#fff!important;
}
.fai83-shell.fai83-shell .sidebar .fp-sidebar-upgrade-v71>p{
  margin:0 0 14px!important;
  font-size:12.5px!important;
  line-height:1.45!important;
  color:rgba(255,255,255,.62)!important;
}
/* ссылка «Тарифы →»: styles.css красит её в #56688F по (0,2,0) */
.fai83-shell.fai83-shell .sidebar .fp-sidebar-upgrade-v71 .fai112-upgrade-link{
  margin-top:0!important;
  font-size:12.5px!important;
  font-weight:600!important;
  color:#fff!important;
}


/* ============================================================
   2. ШАПКА ЭКРАНА / ПРИВЕТСТВИЕ НА ГЛАВНОЙ
   .screen-head — общая шапка всех экранов, поэтому правила
   держим нейтральными: они должны работать и на «Прогрессе»,
   и на «Избранном», которые ведут другие агенты.
   ============================================================ */
.fai83-shell.fai83-shell .screen-head{
  margin-bottom:24px!important;
  gap:16px!important;
}
.fai83-shell.fai83-shell .screen-head .muted{
  color:var(--c-ink-3)!important;
  font-family:var(--c-sans)!important;
  font-size:13px!important;
  font-weight:500!important;
  letter-spacing:0!important;
}
.fai83-shell.fai83-shell .screen-head h3{
  margin:6px 0 0!important;
  font-family:var(--c-display)!important;
  font-size:clamp(26px,2.4vw,34px)!important;
  font-weight:600!important;
  line-height:1.1!important;
  letter-spacing:-.02em!important;
  color:var(--c-ink)!important;
}
.fai83-shell.fai83-shell .screen-head p.muted{
  margin:8px 0 0!important;
  font-size:14px!important;
  line-height:1.5!important;
  color:var(--c-ink-2)!important;
}

/* --- статус подписки: пилюля вместо тёмного прямоугольника ---
   Рантайм-правила .fai242-…active/.inactive идут (0,2,0)
   с !important, поэтому здесь (0,4,0). */
.fai83-shell.fai83-shell .screen-head .fai242-subscription-status{
  margin-top:10px!important;
  padding:7px 14px 7px 8px!important;
  border:1px solid var(--c-line)!important;
  border-radius:999px!important;
  background:var(--c-white)!important;
  font-family:var(--c-sans)!important;
  font-size:12.5px!important;
  font-weight:500!important;
}
.fai83-shell.fai83-shell .screen-head .fai242-subscription-status i{
  width:18px!important;
  height:18px!important;
  font-size:11px!important;
  font-weight:600!important;
}
.fai83-shell.fai83-shell .screen-head .fai242-subscription-status.active{
  border-color:transparent!important;
  background:var(--c-sky)!important;
  color:var(--c-blue-2)!important;            /* #1F2B44 на #E7EDF8 */
}
.fai83-shell.fai83-shell .screen-head .fai242-subscription-status.active i{
  background:var(--c-blue)!important;
  color:#fff!important;
}
.fai83-shell.fai83-shell .screen-head .fai242-subscription-status.inactive{
  border-color:var(--c-line-2)!important;
  background:var(--c-white)!important;
  color:var(--c-bad)!important;               /* #9B3B3B на белом */
}
.fai83-shell.fai83-shell .screen-head .fai242-subscription-status.inactive i{
  background:var(--c-bad)!important;
  color:#fff!important;
}

/* --- кнопка «Профиль» (и кнопки, которые app.js дописывает
       в .screen-head): светлая пилюля-ghost с лендинга --- */
.fai83-shell.fai83-shell .screen-head>button.btn,
.fai83-shell.fai83-shell .screen-head button.btn{
  min-height:42px!important;
  padding:12px 22px!important;
  border:1px solid var(--c-line-2)!important;
  border-radius:999px!important;
  background:var(--c-white)!important;
  color:var(--c-ink)!important;
  font-family:var(--c-sans)!important;
  font-size:14.5px!important;
  font-weight:600!important;
  box-shadow:none!important;
  transition:border-color .18s ease,background .18s ease!important;
}
.fai83-shell.fai83-shell .screen-head button.btn:hover{
  border-color:var(--c-ink)!important;
  background:var(--c-white)!important;
}
.fai83-shell.fai83-shell .screen-head button.btn.accent{
  border-color:transparent!important;
  background:var(--c-ink)!important;
  color:#fff!important;
}
.fai83-shell.fai83-shell .screen-head button.btn.accent:hover{
  background:var(--c-blue)!important;
}


/* ============================================================
   3. ГЛАВНАЯ / ДАШБОРД
   ============================================================ */
.fai83-shell.fai83-shell .dashboard-grid{
  gap:16px!important;
}

/* --- 3.1 Карточка «Выбери тренировку» (герой) ---
   Единственная тёмная карточка на экране — как акцентные
   блоки лендинга. Класс содержит «card», поэтому фон только
   с !important. */
.fai83-shell.fai83-shell .dashboard-grid .card.workout-card{
  min-height:268px!important;
  padding:26px!important;
  border:1px solid transparent!important;
  border-radius:var(--c-r-lg)!important;
  background:var(--c-ink)!important;
  box-shadow:var(--c-shadow)!important;
  color:#fff!important;
}
.fai83-shell.fai83-shell .dashboard-grid .card.workout-card .eyebrow{
  font-family:var(--c-sans)!important;
  font-size:11px!important;
  font-weight:600!important;
  letter-spacing:.1em!important;
  color:var(--c-brass)!important;             /* латунь по чернилам */
}
.fai83-shell.fai83-shell .dashboard-grid .card.workout-card h4{
  margin:10px 0!important;
  font-family:var(--c-display)!important;
  font-size:clamp(24px,2.5vw,32px)!important;
  font-weight:600!important;
  line-height:1.08!important;
  letter-spacing:-.02em!important;
  color:#fff!important;
}
.fai83-shell.fai83-shell .dashboard-grid .card.workout-card p{
  font-size:14.5px!important;
  line-height:1.5!important;
  color:rgba(255,255,255,.66)!important;
}

/* кнопки внутри героя: основная — белая пилюля, вторая — ghost */
.fai83-shell.fai83-shell .today-workout-actions{
  gap:10px!important;
  margin-top:20px!important;
}
.fai83-shell.fai83-shell .today-workout-actions button.btn{
  min-height:48px!important;
  padding:14px 24px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  background:var(--c-white)!important;
  color:var(--c-ink)!important;
  font-family:var(--c-sans)!important;
  font-size:13.5px!important;
  font-weight:600!important;
  letter-spacing:.02em!important;
  box-shadow:none!important;
  transition:background .18s ease,border-color .18s ease,color .18s ease!important;
}
.fai83-shell.fai83-shell .today-workout-actions button.btn.accent{
  border-color:transparent!important;
  background:var(--c-white)!important;
  color:var(--c-ink)!important;
}
.fai83-shell.fai83-shell .today-workout-actions button.btn.accent:hover{
  background:var(--c-sky)!important;
}
.fai83-shell.fai83-shell .today-workout-actions button.btn.today-secondary-workout{
  background:transparent!important;
  border:1px solid rgba(255,255,255,.28)!important;
  color:#fff!important;
}
.fai83-shell.fai83-shell .today-workout-actions button.btn.today-secondary-workout:hover{
  border-color:rgba(255,255,255,.6)!important;
  background:rgba(255,255,255,.06)!important;
}

/* --- 3.2 Плитки Вес / Жим лёжа / Тренировок ---
   Белые карточки с цифрой в Unbounded — как .nl-stats. */
.fai83-shell.fai83-shell .progress-row{
  gap:12px!important;
  margin-top:16px!important;
}
.fai83-shell.fai83-shell .progress-row .metric{
  padding:18px 18px 20px!important;
  border:1px solid var(--c-line)!important;
  border-radius:var(--c-r)!important;
  background:var(--c-white)!important;
  box-shadow:none!important;
  text-align:left!important;
  transition:border-color .18s ease,transform .18s ease!important;
}
/* убираем декоративную неоновую полоску из styles.css:8467 */
.fai83-shell.fai83-shell .progress-row .metric:after{
  display:none!important;
}
.fai83-shell.fai83-shell .progress-row button.metric{
  cursor:pointer!important;
}
.fai83-shell.fai83-shell .progress-row button.metric:hover{
  border-color:var(--c-line-2)!important;
  transform:translateY(-2px)!important;
}
.fai83-shell.fai83-shell .progress-row .metric span{
  font-family:var(--c-sans)!important;
  font-size:12.5px!important;
  font-weight:500!important;
  color:var(--c-ink-3)!important;
}
.fai83-shell.fai83-shell .progress-row .metric span:last-child{
  font-size:12px!important;
  color:var(--c-ink-3)!important;
}
.fai83-shell.fai83-shell .progress-row .metric b{
  display:block!important;
  margin:8px 0 5px!important;
  font-family:var(--c-display)!important;
  font-size:26px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:-.02em!important;
  color:var(--c-ink)!important;
}

/* --- 3.3 Правая колонка: «Твой старт», «AI Coach», «Личный тренер» ---
   Белые карточки, скругление 20px, мягкая тень лендинга. */
.fai83-shell.fai83-shell .dashboard-grid .card.fai236-start-card,
.fai83-shell.fai83-shell .dashboard-grid .card.fai236-ai-card,
.fai83-shell.fai83-shell .dashboard-grid .card.fai236-trainer-card{
  padding:24px!important;
  border:1px solid var(--c-line)!important;
  border-radius:var(--c-r-lg)!important;
  background:var(--c-white)!important;
  box-shadow:var(--c-shadow)!important;
  color:var(--c-ink)!important;
}
.fai83-shell.fai83-shell .dashboard-grid .fai236-guidance-group .card strong{
  display:block!important;
  font-family:var(--c-display)!important;
  font-size:18px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:-.02em!important;
  color:var(--c-ink)!important;
}
.fai83-shell.fai83-shell .dashboard-grid .fai236-guidance-group .card p.muted{
  margin:8px 0 0!important;
  font-size:14px!important;
  line-height:1.55!important;
  color:var(--c-ink-2)!important;
}

/* план на неделю — голубая плашка --c-sky */
.fai83-shell.fai83-shell .fai236-start-card .fai224-weekly-goal{
  margin:16px 0 4px!important;
  padding:14px 16px!important;
  border:1px solid transparent!important;
  border-radius:14px!important;
  background:var(--c-sky)!important;
}
.fai83-shell.fai83-shell .fai236-start-card .fai224-weekly-goal span,
.fai83-shell.fai83-shell .fai236-start-card .fai224-weekly-goal small{
  font-size:12.5px!important;
  color:var(--c-ink-3)!important;             /* #5C616B на #E7EDF8 */
}
.fai83-shell.fai83-shell .fai236-start-card .fai224-weekly-goal b{
  font-family:var(--c-display)!important;
  font-size:16px!important;
  font-weight:600!important;
  letter-spacing:-.02em!important;
  color:var(--c-blue-2)!important;
}

/* точки недели: синий вместо зелёного */
.fai83-shell.fai83-shell .fai236-start-card .week-dots{
  gap:8px!important;
  margin-top:14px!important;
}
.fai83-shell.fai83-shell .fai236-start-card .week-dots .dot{
  width:10px!important;
  height:10px!important;
  background:var(--c-line-2)!important;
}
.fai83-shell.fai83-shell .fai236-start-card .week-dots .dot.on{
  background:var(--c-blue)!important;
}

/* карточки AI Coach / Личный тренер */
.fai83-shell.fai83-shell .dashboard-grid .fai185-ai-card{
  padding:24px!important;
}
.fai83-shell.fai83-shell .dashboard-grid .fai185-ai-copy{
  max-width:64%!important;
}
.fai83-shell.fai83-shell .dashboard-grid .fai185-ai-copy strong{
  font-size:18px!important;
}
.fai83-shell.fai83-shell .dashboard-grid .fai185-ai-copy .muted{
  margin:8px 0 16px!important;
}
.fai83-shell.fai83-shell .dashboard-grid .fai185-ai-copy button.btn{
  min-height:42px!important;
  padding:12px 20px!important;
  border:1px solid var(--c-line-2)!important;
  border-radius:999px!important;
  background:var(--c-white)!important;
  color:var(--c-ink)!important;
  font-family:var(--c-sans)!important;
  font-size:14px!important;
  font-weight:600!important;
  box-shadow:none!important;
  transition:border-color .18s ease,background .18s ease!important;
}
.fai83-shell.fai83-shell .dashboard-grid .fai185-ai-copy button.btn:hover{
  border-color:var(--c-ink)!important;
}
/* «Тренер →» — единственная синяя кнопка колонки */
.fai83-shell.fai83-shell .dashboard-grid .fai236-trainer-card .fai185-ai-copy button.btn.accent{
  border-color:transparent!important;
  background:var(--c-blue)!important;
  color:#fff!important;
}
.fai83-shell.fai83-shell .dashboard-grid .fai236-trainer-card .fai185-ai-copy button.btn.accent:hover{
  background:var(--c-blue)!important;
}
/* картинка AI Coach — зелёный PNG: гасим неоновое свечение
   и приглушаем насыщенность, чтобы не спорить с палитрой */
.fai83-shell.fai83-shell .dashboard-grid .fai236-ai-card .fai185-ai-figure{
  height:150px!important;
  opacity:.9!important;
  filter:saturate(.35) contrast(1.02)!important;
}
/* у карточки тренера .fai185-ai-figure — это <div> с «✦» */
.fai83-shell.fai83-shell .dashboard-grid .fai236-trainer-card .fai185-ai-figure{
  height:120px!important;
  opacity:1!important;
  filter:none!important;
  color:var(--c-brass)!important;
}


/* ============================================================
   4. ПЛАНШЕТ: сайдбар превращается в горизонтальную ленту
   (это делает рантайм-медиазапрос @media(max-width:1100px) из app.js —
   мы только перекрашиваем).
   ============================================================ */
@media (max-width:1100px){
  .fai83-shell.fai83-shell .sidebar{
    padding:10px 12px!important;
    background:var(--c-white)!important;
    border-right:0!important;
    border-bottom:1px solid var(--c-line)!important;
  }
  .fai83-shell.fai83-shell .sidebar .menu{
    gap:8px!important;
    padding:2px 0!important;
  }
  .fai83-shell.fai83-shell .sidebar .menu button{
    min-height:40px!important;
    padding:0 16px!important;
    border:1px solid var(--c-line)!important;
    border-radius:999px!important;
  }
  .fai83-shell.fai83-shell .sidebar .menu button.active{
    border-color:transparent!important;
  }
}


/* ============================================================
   5. МОБИЛЬНАЯ НИЖНЯЯ НАВИГАЦИЯ (.fitai-mobile-nav)
   ВНИМАНИЕ: в styles.css оформлена только .fitpath-mobile-nav
   (старый класс). Для .fitai-mobile-nav, который реально
   создаёт app.js:2622, нет ни display:none, ни фиксации —
   поэтому на десктопе строка кнопок болтается внизу <body>.
   Здесь это чиним по образцу .fitpath-mobile-nav: прячем на
   десктопе и фиксируем на мобильной ширине. Это единственное
   место в файле, где меняются display/position — без них
   элемент нерабочий.

   Навигация живёт ВНЕ .fai83-shell, защиты cabinet-base на неё
   не действуют, поэтому цвета задаём явно. Класс троим:
   нужно перебить `button:not(.exercise-heart):not(.check)
   :not(.modal-close)` = (0,3,1) из styles.css.
   ============================================================ */
nav.fitai-mobile-nav.fitai-mobile-nav{
  display:none!important;
}

@media (max-width:760px){
  nav.fitai-mobile-nav.fitai-mobile-nav{
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:9000!important;
    gap:4px!important;
    padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important;
    background:rgba(255,255,255,.92)!important;
    border-top:1px solid var(--c-line)!important;
    box-shadow:0 -10px 30px -24px rgba(18,20,24,.4)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  nav.fitai-mobile-nav.fitai-mobile-nav.fitai-mobile-nav button{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    min-height:52px!important;
    padding:6px 2px!important;
    border:1px solid transparent!important;
    border-radius:14px!important;
    background:transparent!important;
    color:var(--c-ink-3)!important;
    font-family:var(--c-sans)!important;
    box-shadow:none!important;
    transition:background .18s ease,color .18s ease!important;
  }
  nav.fitai-mobile-nav.fitai-mobile-nav.fitai-mobile-nav button span{
    font-size:19px!important;
    line-height:1!important;
    color:inherit!important;
  }
  nav.fitai-mobile-nav.fitai-mobile-nav.fitai-mobile-nav button small{
    font-size:10.5px!important;
    font-weight:500!important;
    white-space:nowrap!important;
    color:inherit!important;
  }
  nav.fitai-mobile-nav.fitai-mobile-nav.fitai-mobile-nav button.active{
    background:var(--c-blue)!important;
    border-color:transparent!important;
    color:#fff!important;
    font-weight:600!important;
  }

  /* чтобы фиксированная панель не накрывала контент */
  .fai83-shell.fai83-shell .main{
    padding-bottom:calc(84px + env(safe-area-inset-bottom))!important;
  }
}


/* ============================================================
   6. ТЕЛЕФОН (≤600px) — уплотняем главную
   ============================================================ */
@media (max-width:600px){
  .fai83-shell.fai83-shell .screen-head{
    margin-bottom:18px!important;
    gap:12px!important;
  }
  .fai83-shell.fai83-shell .screen-head h3{
    font-size:24px!important;
  }
  .fai83-shell.fai83-shell .screen-head button.btn{
    min-height:38px!important;
    padding:10px 16px!important;
    font-size:13.5px!important;
  }
  .fai83-shell.fai83-shell .screen-head .fai242-subscription-status{
    font-size:12px!important;
  }

  .fai83-shell.fai83-shell .dashboard-grid{
    gap:12px!important;
  }
  .fai83-shell.fai83-shell .dashboard-grid .card.workout-card{
    min-height:0!important;
    padding:20px!important;
    border-radius:var(--c-r)!important;
  }
  .fai83-shell.fai83-shell .dashboard-grid .card.workout-card h4{
    font-size:24px!important;
  }
  .fai83-shell.fai83-shell .today-workout-actions button.btn{
    min-height:46px!important;
    font-size:13px!important;
  }

  .fai83-shell.fai83-shell .progress-row .metric{
    padding:16px!important;
  }
  .fai83-shell.fai83-shell .progress-row .metric b{
    font-size:23px!important;
  }

  .fai83-shell.fai83-shell .dashboard-grid .card.fai236-start-card,
  .fai83-shell.fai83-shell .dashboard-grid .card.fai236-ai-card,
  .fai83-shell.fai83-shell .dashboard-grid .card.fai236-trainer-card{
    padding:20px!important;
    border-radius:var(--c-r)!important;
  }
  .fai83-shell.fai83-shell .dashboard-grid .fai185-ai-copy{
    max-width:100%!important;
  }
}

/* ============================================================
   ФИКС: сайдбар шире своей колонки грида.
   styles.css задаёт `.fai83-shell > .sidebar{width:280px}`, но
   колонку грида — 248px. Сайдбар наезжал на .main на 32px,
   из-за чего заголовки экранов подрезались слева.
   Выравниваем колонку по фактической ширине сайдбара.
   ============================================================ */
.fai83-shell.fai83-shell{grid-template-columns:280px minmax(0,1fr)!important}
@media (max-width:1100px){
  .fai83-shell.fai83-shell{grid-template-columns:minmax(0,1fr)!important}
}

/* ============================================================
   v282: векторные иконки разделов (SVG вместо юникод-символов)
   ============================================================ */
.fai282-ic{
  width:20px;height:20px;flex:none;display:inline-block;vertical-align:-4px;
  stroke:currentColor;opacity:.9;
}
.fai83-shell.fai83-shell .sidebar .menu button{
  display:flex!important;align-items:center!important;gap:12px!important;
}
/* было «иконка &nbsp; текст» — неразрывный пробел больше не нужен */
.fai83-shell.fai83-shell .sidebar .menu button .fai282-ic{margin:0!important}
.fai83-shell.fai83-shell .sidebar .menu button.active .fai282-ic{opacity:1}
/* мобильное меню */
.fai237-drawer .fai282-ic,.fai235-drawer .fai282-ic{width:20px;height:20px;margin-right:10px}
