/* responsive.css */

/* =========== Responsive для телефонов (до 600px) ======= */
@media (max-width: 600px) {

    /* Фиксируем футер */
    .site-footer {
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      z-index: 400;
    }
  
    /* Чат-контейнер на весь экран между header и nav, но центрированный */
    .chat-container {
      position: fixed;
      top:    calc(var(--header-height) + 10px);
      bottom: calc(var(--nav-height)    + 10px);
  
      /* центрируем по горизонтали */
      left: 50%;
      transform: translateX(-50%);
  
      /* оставляем небольшой «поле» по бокам */
      width: 90vw;
      max-width: 400px;
  
      height: auto;
      border-radius: 0;
      z-index: 100;
    }
  
    /* Отступ снизу, чтобы чат-контент не уходил под навигацию */
    #chat-windows {
      padding-bottom: calc(var(--nav-height) + 20px);
    }
  
    /* Горизонтальная прокручиваемая навигация */
    .chat-nav {
      position: fixed;
      bottom: var(--nav-height);
      left:   0;
      width:  100%;
      height: var(--nav-height);
      display: flex;
      flex-wrap: nowrap;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      padding: 0 8px;
      gap: 8px;
      background-color: rgba(255,255,255,0.8);
      backdrop-filter: blur(10px);
      border-radius: 0;
      z-index: 500;
    }
    .chat-nav::-webkit-scrollbar {
      height: 6px;
    }
    .chat-nav::-webkit-scrollbar-thumb {
      background: rgba(0,0,0,0.2);
      border-radius: 3px;
    }
    .chat-nav::-webkit-scrollbar-track {
      background: transparent;
    }
  
    /* Навигационные кнопки */
    .nav-button {
      flex: 0 0 auto;
      white-space: nowrap;
      font-size: 0.9rem;
      padding: 8px;
      margin: 0;
    }
  
    /* Область ввода и кнопка отправки */
    .chat-input-area {
      padding: 8px;
    }
    .chat-input {
      font-size: 0.9rem;
    }
    .send-button {
      padding: 8px;
    }
  
    /* Скроллим контент в окне чата */
    .chat-container .chat-content {
      padding: 8px;
      overflow-y: auto;
    }
  
    /* Формы и кнопки */
    .form-group {
      margin-bottom: 8px;
    }
    .form-group label {
      font-size: 0.85rem;
    }
    .form-group input,
    .form-group textarea {
      padding: 6px 8px;
      font-size: 0.8rem;
    }
    .btn {
      font-size: 0.9rem;
      padding: 6px 12px;
    }
    .btn-icon {
      padding: 6px 10px;
    }
  }
  
  /* =========== Дополнения для очень маленьких экранов (до 360px) ======= */
  @media (max-width: 360px) {
  
    /* ——— Landing Screen ——— */
    .landing {
      overflow-y: auto;
      padding: 12px 10px 60px;
    }
    .landing h1 {
      font-size: 1.8rem;
      margin-bottom: 12px;
    }
    .landing p {
      font-size: 0.95rem;
      margin-bottom: 12px;
    }
    .landing ul {
      margin: 8px 0 16px 16px;
    }
    .landing .btn-landing {
      position: absolute;
      bottom: 20px;
      left: 50%;
      transform: translateX(-50%);
      padding: 10px 20px;
      font-size: 1rem;
    }
  
    /* Мелкие правки */
    html, body {
      font-size: 14px;
    }
    .chat-header {
      padding: 8px 12px;
      font-size: 0.95rem;
    }
    .site-footer {
      font-size: 0.8rem;
    }
    .chat-container {
      top:    calc(var(--header-height) + 5px);
      bottom: calc(var(--nav-height)    + 5px);
      padding: 2px;
    }
    .chat-input-area {
      padding: 6px;
    }
    .chat-input {
      padding: 6px 8px;
    }
    .send-button {
      padding: 6px 10px;
    }
    .chat-nav {
      padding: 0 4px;
      gap: 4px;
    }
    .nav-button {
      font-size: 0.8rem;
      padding: 6px 8px;
    }
    .btn {
      font-size: 0.9rem;
      padding: 6px 12px;
    }
  }
  
  /* =========== Планшеты (до 768px) — опционально ======= */
  @media (max-width: 768px) {
    .landing h1 {
      font-size: 2rem;
    }
    .landing p {
      font-size: 1rem;
    }
    .chat-container {
      width: min(480px, 95vw);
      height: min(600px, calc(95vh - var(--nav-height) - 120px));
    }
    .nav-button {
      font-size: 0.95rem;
      padding: 6px 12px;
    }
  }
  