/* ============================================
   MOBILE STYLES — до 768px
   ============================================ */

/* Шапка — горизонтальная прокрутка */
.aptn-header__area {
  padding: 5px 0 !important;
}

.region-primary-menu {
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  gap: 4px !important;
  padding: 5px 10px !important;
  -webkit-overflow-scrolling: touch;
  justify-content: flex-start !important;
}

.region-primary-menu a {
  padding: 6px 12px !important;
  font-size: 0.75rem !important;
  white-space: nowrap !important;
}

.region-primary-menu ul {
  gap: 4px !important;
}

/* Кнопка сообщений */
.private-message-notification-wrapper {
  padding: 6px 10px !important;
  gap: 4px !important;
}

.private-message-notification-image {
  width: 16px !important;
  height: 16px !important;
  max-width: 16px !important;
}

.private-message-page-link {
  font-size: 0.75rem !important;
}

/* Контент */
.region-content {
  padding: 0 10px !important;
}

.container-fluid {
  padding: 0 !important;
}

/* Профиль */
article.profile {
  max-width: 100% !important;
  margin: 20px 10px !important;
  padding: 20px 15px !important;
}

article.profile .field--name-user-picture img {
  width: 80px !important;
  height: 80px !important;
}

article.profile .field--name-field-svetlye-impulsy .field__item {
  font-size: 2rem !important;
}

/* Лента новостей */
.path-frontpage .region-content {
  display: block !important;
  padding: 5px !important;
}

.path-frontpage .views-row {
  max-width: 100% !important;
  padding: 15px !important;
  margin: 0 auto 15px !important;
}

.path-frontpage .views-field-body .field-content {
  font-size: 1rem !important;
}

/* Кнопки */
button, .button, .btn {
  padding: 10px 20px !important;
  font-size: 0.85rem !important;
}

/* Скрываем десктопные элементы */
.aptn-action,
.offcanvas-toggle,
#header-fixed-height {
  display: none !important;
}

/* Формы */
.user-form {
  max-width: 100% !important;
  margin: 10px !important;
  padding: 15px !important;
}

/* Чат Коварис — чиним перекрытие */
.kovaris-container {
  top: 60px !important;
}

/* --- Чат знакомств (chat.html) --- */
.chat-container {
  margin: 0 5px !important;
  border-radius: 16px !important;
}

.chat-header {
  padding: 12px 15px !important;
}

.chat-header h2 {
  font-size: 1.2rem !important;
}

.chat-messages {
  height: 300px !important;
  padding: 12px !important;
  gap: 10px !important;
}

.message {
  max-width: 85% !important;
  padding: 10px 14px !important;
  font-size: 0.9rem !important;
}

.chat-input-area {
  padding: 12px 15px !important;
}

.button-group {
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.btn-primary, .btn-like, .btn-yes, .btn-no {
  padding: 10px 16px !important;
  font-size: 0.85rem !important;
}

.suggestion-btn {
  padding: 10px 14px !important;
  font-size: 0.85rem !important;
}

/* --- Чат Коварис (/kovaris) --- */
.kovaris-messages {
  padding: 10px 8px !important;
}

.kovaris-message {
  max-width: 90% !important;
  font-size: 0.9rem !important;
}

.kovaris-input {
  padding: 8px 12px !important;
  font-size: 0.85rem !important;
  min-height: 40px !important;
}

.kovaris-mode-btn {
  padding: 3px 6px !important;
  font-size: 0.65rem !important;
}

/* --- Страница «Получить задание» --- */
.view-id-poluchit_zadanie .views-row {
  padding: 15px !important;
  margin: 0 10px 15px !important;
}

.view-id-poluchit_zadanie .views-view-grid {
  max-width: 100% !important;
}

/* Кнопки в чате Коварис */
.kovaris-actions {
  gap: 2px !important;
  padding: 3px 6px !important;
}

.kovaris-action-btn {
  padding: 2px 8px !important;
  font-size: 0.65rem !important;
}

/* Аватар в чате Коварис — меньше */
.kovaris-header {
  padding: 6px 10px !important;
}

.kovaris-avatar {
  width: 30px !important;
  height: 30px !important;
  margin: 0 auto 3px !important;
}

.kovaris-name {
  font-size: 0.8rem !important;
}

.kovaris-subtitle {
  font-size: 0.55rem !important;
}

/* Сжимаем блок аватара в Коварисе */
.kovaris-header {
  padding: 4px 8px !important;
  min-height: auto !important;
}

/* Меню — вертикальный список */
.region-primary-menu {
  flex-direction: column !important;
  flex-wrap: wrap !important;
  overflow-x: visible !important;
  gap: 6px !important;
  padding: 10px !important;
}

.region-primary-menu ul {
  flex-direction: column !important;
  gap: 6px !important;
}

.region-primary-menu a {
  display: block !important;
  text-align: center !important;
  width: 100% !important;
  padding: 10px 16px !important;
  font-size: 0.9rem !important;
}

.region-primary-menu .block {
  width: 100% !important;
}

/* Поиск в мобильном меню — чёрный фон, розовая рамка */
.aptn-mobile__search input[type="search"],
.aptn-mobile__search .form-search {
  background: #000000 !important;
  border: 1px solid #FF38FF !important;
  color: #FFFFFF !important;
  border-radius: 50px !important;
  padding: 10px 16px !important;
}

.aptn-mobile__search input[type="search"]::placeholder {
  color: #888 !important;
}

.aptn-mobile__search .btn-primary {
  background: var(--kovaris-gradient-pink) !important;
  border: none !important;
}

/* Всё пространство вокруг поиска — чёрное */
.aptn-mobile__search,
.aptn-mobile__search *,
.aptn-mobile__search .container-inline,
.aptn-mobile__search .js-form-item,
.aptn-mobile__search .form-actions {
  background: #000000 !important;
  background-color: #000000 !important;
}

/* Поле ввода и кнопка — оставляем их стили */
.aptn-mobile__search input[type="search"] {
  background: #111 !important;
  border: 1px solid #FF38FF !important;
  color: #fff !important;
}

.aptn-mobile__search .btn-primary {
  background: var(--kovaris-gradient-pink) !important;
}

/* Кнопка «Поиск» — чёрная с розовой рамкой */
.aptn-mobile__search .btn-primary,
.aptn-mobile__search .button {
  background: #000000 !important;
  border: 1px solid #FF38FF !important;
  color: #FF38FF !important;
  border-radius: 50px !important;
}

.aptn-mobile__search .btn-primary:hover,
.aptn-mobile__search .button:hover {
  background: #FF38FF !important;
  color: #000000 !important;
}

/* Убираем розовые полосы сверху и снизу */
.aptn-header__area {
  border: none !important;
  border-bottom: 2px solid #FF38FF !important;
}

.aptn-mobile__menu-box {
  background: #000000 !important;
}

.aptn-mobile__menu {
  background: #000000 !important;
}

.site-header, .region-header, .region-primary-menu, nav[role="navigation"] {
  border-bottom: 2px solid #FF38FF !important;
}

/* Страница «Получить задание» — увеличиваем карточки */
.view-id-poluchit_zadanie .views-row {
  padding: 25px 20px !important;
  margin: 15px 10px !important;
  font-size: 1.1rem !important;
}

.view-id-poluchit_zadanie .views-field-name a {
  font-size: 1.2rem !important;
}

.view-id-poluchit_zadanie .deed-select-btn {
  padding: 12px 28px !important;
  font-size: 1rem !important;
  margin-top: 15px !important;
}

/* Страница «Получить задание» — увеличиваем карточки */
.deed-card {
  padding: 25px 20px !important;
  margin: 15px 10px !important;
  font-size: 1.1rem !important;
  border-radius: 20px !important;
}

.deed-card h3 {
  font-size: 1.2rem !important;
  margin-bottom: 15px !important;
}

.deed-select-btn {
  padding: 12px 28px !important;
  font-size: 1rem !important;
  margin-top: 15px !important;
}

/* Фикс для страниц с JavaScript-контентом на мобильных */
.kovaris-container,
#kovaris-messages-app,
.chat-container {
  min-height: 80vh !important;
  height: auto !important;
  overflow: visible !important;
  position: relative !important;
}

/* Фикс высоты для страниц с JS-контентом на мобильных */
@media (max-width: 768px) {
  #kovaris-messages-app {
    min-height: 400px !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    display: flex !important;
    flex-direction: column !important;
  }
  
  .kovaris-container {
    min-height: 400px !important;
    height: auto !important;
    position: relative !important;
    top: 60px !important;
  }
}

/* Срочный фикс Ковариса на мобильных */
@media (max-width: 768px) {
  .kovaris-container {
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    min-height: 80vh !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    z-index: 1 !important;
  }
  
  body.kovaris-page,
  body.kovaris-page .dialog-off-canvas-main-canvas {
    height: auto !important;
    overflow: visible !important;
  }
}

/* Фикс чата знакомств на мобильных */
@media (max-width: 768px) {
  body.path-match-bot .chat-container,
  body.path-match-bot-chat .chat-container {
    margin: 10px 5px !important;
    max-width: 100% !important;
    min-height: 70vh !important;
  }
  
  body.path-match-bot .chat-messages,
  body.path-match-bot-chat .chat-messages {
    height: 350px !important;
  }
}

/* Универсальный фикс для всех SPA-страниц на мобильных */
@media (max-width: 768px) {
  .dialog-off-canvas-main-canvas,
  .main-wrapper,
  .main-container,
  .main-content-wrapper,
  .main-content-section,
  .container-fluid > .main-content-wrapper > .row > .col-12 {
    height: auto !important;
    overflow: visible !important;
    min-height: auto !important;
  }
}

/* Жёсткий фикс чата знакомств */
@media (max-width: 768px) {
  .chat-container {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 400px !important;
    height: auto !important;
    margin: 5px !important;
    overflow: visible !important;
  }
  
  .chat-messages {
    display: flex !important;
    min-height: 200px !important;
    height: auto !important;
  }
}
