/* LastHope mobile layer. Desktop styles are intentionally untouched. */
@media (max-width: 991.98px) {
  html,
  body,
  body.cabinet-hero-layout,
  body.cabinet-hero-layout .page,
  body.cabinet-hero-layout .main-content.app-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html,
  body.cabinet-hero-layout {
    overflow-x: clip !important;
  }

  body.cabinet-hero-layout .page {
    display: block !important;
  }

  /* Compact header: same brand and controls, without the old tall mobile gap. */
  body.cabinet-hero-layout .app-header {
    height: 64px !important;
    min-height: 64px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    border-bottom: 1px solid rgba(154, 106, 58, 0.22) !important;
    box-shadow: 0 8px 24px rgba(20, 25, 34, 0.08) !important;
    backdrop-filter: blur(14px);
  }

  body.cabinet-hero-layout .main-header-container {
    width: 100% !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 10px !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 6px !important;
  }

  body.cabinet-hero-layout .header-content-left,
  body.cabinet-hero-layout .header-content-right {
    min-width: 0 !important;
    height: 64px !important;
    align-items: center !important;
  }

  body.cabinet-hero-layout .header-content-left {
    flex: 1 1 auto !important;
  }

  body.cabinet-hero-layout .header-content-right {
    flex: 0 0 auto !important;
  }

  body.cabinet-hero-layout .header-content-left > .header-element:has(.sidemenu-toggle) {
    order: -1;
  }

  body.cabinet-hero-layout .horizontal-logo {
    display: flex !important;
    align-items: center !important;
    width: auto !important;
    min-width: 0 !important;
  }

  body.cabinet-hero-layout .horizontal-logo .header-logo {
    display: flex !important;
    align-items: center !important;
    width: auto !important;
    height: 44px !important;
  }

  body.cabinet-hero-layout .horizontal-logo .forum-brand-logo.toggle-logo {
    display: block !important;
    width: min(124px, 34vw) !important;
    max-width: 124px !important;
    height: auto !important;
    object-fit: contain !important;
  }

  body.cabinet-hero-layout .sidemenu-toggle,
  body.cabinet-hero-layout .main-header-container .header-link {
    min-width: 42px !important;
    min-height: 42px !important;
  }

  body.cabinet-hero-layout .sidemenu-toggle {
    display: inline-flex !important;
    position: relative !important;
    inset: auto !important;
    align-items: center !important;
    justify-content: center !important;
    margin-right: 2px !important;
    padding: 10px !important;
    border: 1px solid rgba(154, 106, 58, 0.18) !important;
    border-radius: 10px !important;
    background: rgba(154, 106, 58, 0.06) !important;
  }

  body.cabinet-hero-layout .sidemenu-toggle.animated-arrow span,
  body.cabinet-hero-layout .sidemenu-toggle.animated-arrow span::before,
  body.cabinet-hero-layout .sidemenu-toggle.animated-arrow span::after {
    background: #8d673f !important;
  }

  body.cabinet-hero-layout .main-header-container .header-link {
    padding: 8px !important;
    justify-content: center !important;
  }

  body.cabinet-hero-layout .country-selector .header-link img,
  body.cabinet-hero-layout .main-profile-user .user_self_avatar {
    width: 30px !important;
    height: 30px !important;
    object-fit: cover !important;
  }

  /* The desktop sidebar becomes a touch-friendly drawer and keeps every menu item. */
  body.cabinet-hero-layout .app-sidebar {
    width: min(84vw, 300px) !important;
    max-width: 300px !important;
    background: linear-gradient(180deg, #111c2b 0%, #0a1320 100%) !important;
    border-right: 1px solid rgba(221, 180, 124, 0.16) !important;
    box-shadow: 18px 0 42px rgba(3, 8, 16, 0.38) !important;
    transition: transform 180ms ease !important;
  }

  html[data-toggled="close"] body.cabinet-hero-layout .app-sidebar {
    transform: translateX(-102%) !important;
  }

  html[data-toggled="open"] body.cabinet-hero-layout .app-sidebar {
    transform: translateX(0) !important;
  }

  body.cabinet-hero-layout .app-sidebar .main-sidebar {
    height: calc(100% - 64px) !important;
    margin-top: 0 !important;
    padding: 14px 10px 24px !important;
  }

  body.cabinet-hero-layout .app-sidebar .main-sidebar-header {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    height: 64px !important;
    min-height: 64px !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(221, 180, 124, 0.12) !important;
  }

  body.cabinet-hero-layout .app-sidebar .main-sidebar-header .forum-brand-logo.desktop-logo {
    display: block !important;
    width: 150px !important;
    height: auto !important;
  }

  body.cabinet-hero-layout .app-sidebar .main-menu {
    padding: 0 !important;
  }

  body.cabinet-hero-layout .app-sidebar .side-menu__item {
    min-height: 46px !important;
    margin: 2px 0 !important;
    padding: 10px 14px !important;
    border-radius: 9px !important;
  }

  body.cabinet-hero-layout .app-sidebar .side-menu__item:hover,
  body.cabinet-hero-layout .app-sidebar .side-menu__item:focus-visible,
  body.cabinet-hero-layout .app-sidebar .side-menu__item.active {
    background: rgba(255, 255, 255, 0.055) !important;
  }

  body.cabinet-hero-layout #responsive-overlay {
    background: rgba(5, 9, 15, 0.58) !important;
    backdrop-filter: blur(2px);
  }

  /* Content begins immediately below the 64px header. */
  body.cabinet-hero-layout .main-content.app-content {
    margin: 0 !important;
    padding: 76px 0 20px !important;
  }

  body.cabinet-hero-layout .main-content > .container-fluid,
  body.cabinet-hero-layout .main-content > .container,
  body.cabinet-hero-layout .main-content .container-xxl {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.cabinet-hero-layout .main-content .row {
    min-width: 0 !important;
  }

  body.cabinet-hero-layout .main-content .card {
    max-width: 100% !important;
    border-radius: 12px !important;
  }

  body.cabinet-hero-layout .main-content .card-header,
  body.cabinet-hero-layout .main-content .card-body {
    min-width: 0 !important;
  }

  /* Forum thread: compact author strip followed by the full post. */
  body.cabinet-hero-layout .forum-topic-post {
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.cabinet-hero-layout .forum-topic-post > .col-12,
  body.cabinet-hero-layout .forum-topic-post > .col-md-2,
  body.cabinet-hero-layout .forum-topic-post > .col-md-10 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.cabinet-hero-layout .forum-topic-post > .col-md-2 {
    margin-bottom: 10px !important;
  }

  body.cabinet-hero-layout .forum-topic-post > .col-md-2 > .card {
    margin: 0 !important;
    padding: 9px 11px !important;
    overflow: hidden !important;
    border-radius: 10px !important;
  }

  body.cabinet-hero-layout .forum-topic-post > .col-md-2 .d-flex.flex-column.align-items-center {
    flex-direction: row !important;
    justify-content: flex-start !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 6px 9px !important;
  }

  body.cabinet-hero-layout .forum-topic-post > .col-md-2 .online,
  body.cabinet-hero-layout .forum-topic-post > .col-md-2 .offline {
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  body.cabinet-hero-layout .forum-topic-post > .col-md-2 img:not(.avatar-xs),
  body.cabinet-hero-layout .forum-topic-post > .col-md-2 video {
    width: 46px !important;
    height: 46px !important;
    max-width: 46px !important;
    object-fit: cover !important;
  }

  body.cabinet-hero-layout .forum-topic-post > .col-md-2 h5,
  body.cabinet-hero-layout .forum-topic-post > .col-md-2 strong,
  body.cabinet-hero-layout .forum-topic-post > .col-md-2 .badge {
    margin: 0 !important;
  }

  body.cabinet-hero-layout .forum-topic-post .post,
  body.cabinet-hero-layout .forum-word-import {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.cabinet-hero-layout .forum-update-topic-hero {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 14px !important;
    padding: 4px !important;
  }

  body.cabinet-hero-layout .forum-update-topic-hero__image,
  body.cabinet-hero-layout .post img,
  body.cabinet-hero-layout .forum-word-import img {
    max-width: 100% !important;
    height: auto !important;
  }

  body.cabinet-hero-layout .forum-update-topic-hero__image {
    display: block !important;
    width: 100% !important;
    object-fit: contain !important;
  }

  body.cabinet-hero-layout .post p,
  body.cabinet-hero-layout .post li,
  body.cabinet-hero-layout .post blockquote,
  body.cabinet-hero-layout .forum-word-import p {
    font-size: 0.96rem !important;
    line-height: 1.6 !important;
  }

  body.cabinet-hero-layout .post table,
  body.cabinet-hero-layout .forum-word-import table {
    display: block !important;
    width: max-content !important;
    min-width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
  }

  body.cabinet-hero-layout .post th,
  body.cabinet-hero-layout .post td,
  body.cabinet-hero-layout .forum-word-import th,
  body.cabinet-hero-layout .forum-word-import td {
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.cabinet-hero-layout .forum-spoiler__toggle,
  body.cabinet-hero-layout details > summary {
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
  }

  body.cabinet-hero-layout .breadcrumb {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch;
  }

  body.cabinet-hero-layout .btn,
  body.cabinet-hero-layout button,
  body.cabinet-hero-layout [role="button"] {
    min-height: 40px;
  }
}

@media (max-width: 575.98px) {
  body.cabinet-hero-layout .header-search {
    display: none !important;
  }

  body.cabinet-hero-layout .main-content > .container-fluid,
  body.cabinet-hero-layout .main-content > .container,
  body.cabinet-hero-layout .main-content .container-xxl {
    padding-left: 7px !important;
    padding-right: 7px !important;
  }

  body.cabinet-hero-layout .main-content .card-body {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.cabinet-hero-layout .post h1 { font-size: 1.45rem !important; }
  body.cabinet-hero-layout .post h2 { font-size: 1.28rem !important; }
  body.cabinet-hero-layout .post h3 { font-size: 1.12rem !important; }
}
