@charset "UTF-8";
/* =========================================================================
   speedkeys — tray.css
   Нижняя панель согласия на cookie. Показывается на всех страницах, включая
   обе страницы выдачи, пока посетитель не выбрал «Принять» или «Отклонить».

   Панель, а не модалка на весь экран: она не мешает читать и не требует
   реакции, чтобы попасть на страницу. Отступ снизу у <body> ставит скрипт по
   фактической высоте панели — значение ниже нужно только как стартовое, до
   первого замера.
   ========================================================================= */

.tray {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 60;
  background: var(--case-deep);
  border-top: 1px solid var(--border);
  /* Тень вверх — панель лежит поверх страницы, а не встроена в неё. */
  box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.35);
  padding: 14px 0 calc(14px + env(safe-area-inset-bottom));
}

.tray[hidden] { display: none; }

.tray__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.tray__text {
  margin: 0;
  flex: 1 1 340px;
  max-width: 72ch;
  color: var(--on-case-mut);
  font-size: 14px;
  line-height: 1.55;
}
.tray__text a { color: var(--teal-lit); border-bottom: 1px solid rgba(53, 195, 178, 0.4); }

.tray__actions { display: flex; gap: 10px; flex: none; }
.tray__actions .btn-key { padding: 10px 18px; font-size: 14px; }

/* Стартовый отступ, чтобы панель не накрыла подвал до того, как отработает
   скрипт. Дальше высоту меряет tray-consent.js и ставит точное значение. */
body.has-tray { padding-bottom: 148px; }
@media (min-width: 768px) { body.has-tray { padding-bottom: 96px; } }

@media (max-width: 560px) {
  .tray__inner { gap: 10px; }
  .tray__text { font-size: 13.5px; flex-basis: 100%; }
  .tray__actions { width: 100%; }
  .tray__actions .btn-key { flex: 1 1 0; }
}
