/* Полоса согласия на cookie (shared/_cookie_consent). Токены --of-*: на лендинге — бумага
   журнального стиля, в кабинете — те же токены. Внизу экрана, без затемнения; пока видна,
   страница получает отступ снизу, чтобы полоса не закрывала формы и кнопки. */
.of-cookie {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1250;
  pointer-events: none;
}
.of-cookie[hidden] { display: none; }
/* Компактная полоса внизу: текст слева в одну-две строки, кнопки справа */
.of-cookie__panel {
  pointer-events: auto;
  display: flex;
  align-items: center;
  gap: 16px;
  max-width: 1120px;
  margin: 0 auto;
  padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
  background: var(--of-surface);
  border-top: 1px solid var(--of-line-2);
  box-shadow: 0 -4px 16px color-mix(in srgb, var(--of-ink) 6%, transparent);
  font-family: var(--of-sans);
  color: var(--of-ink);
}
.of-cookie__text { flex: 1; min-width: 0; margin: 0; font-size: 12.5px; line-height: 1.45; color: var(--of-muted); }
.of-cookie__link { color: var(--of-ink); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.of-cookie__link:hover { color: var(--of-accent-strong); }
.of-cookie__actions { display: flex; gap: 8px; flex-shrink: 0; }
.of-cookie__btn {
  height: 32px;
  padding: 0 14px;
  border: 1px solid var(--of-line-2);
  border-radius: var(--of-radius);
  background: transparent;
  color: var(--of-ink);
  font: inherit;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.of-cookie__btn:hover { background: var(--of-surface-2); }
.of-cookie__btn.is-primary { background: var(--of-ink); border-color: var(--of-ink); color: var(--of-surface); }
.of-cookie__btn.is-primary:hover { background: var(--of-accent-strong); border-color: var(--of-accent-strong); }
.of-cookie__btn:focus-visible { outline: 2px solid color-mix(in srgb, var(--of-accent) 40%, transparent); outline-offset: 2px; }
@media (min-width: 1121px) {
  .of-cookie__panel { border: 1px solid var(--of-line-2); border-bottom: 0; border-radius: var(--of-radius-lg) var(--of-radius-lg) 0 0; }
}
@media (max-width: 640px) {
  .of-cookie__panel { flex-direction: column; align-items: stretch; gap: 8px; }
  .of-cookie__actions .of-cookie__btn { flex: 1; }
}
/* Пока полоса видна, страница и плавающие кнопки поднимаются над ней — формы не перекрыты */
html:has(.of-cookie:not([hidden])) body { padding-bottom: 64px; }
html:has(.of-cookie:not([hidden])) .cabinet-floating-actions { bottom: calc(1.5rem + 60px + env(safe-area-inset-bottom)); }
@media (max-width: 640px) {
  html:has(.of-cookie:not([hidden])) body { padding-bottom: 150px; }
  html:has(.of-cookie:not([hidden])) .cabinet-floating-actions { bottom: calc(1rem + 140px + env(safe-area-inset-bottom)); }
}
/* Лендинг: бумажная поверхность */
.landing-page .of-cookie__panel { background: var(--of-paper, var(--of-surface)); border-radius: 4px; }
.landing-page .of-cookie__btn { border-radius: 3px; }
.landing-page .of-cookie__btn.is-primary { color: var(--of-paper, var(--of-surface)); }
