@media screen and (max-width: 1024px) {

    html {
        overflow-x: scroll !important;
        -webkit-overflow-scrolling: touch;
        min-width: 984px !important;
    }

    body {
        overflow-x: visible !important;
        min-width: 984px !important;
        width: 984px !important;
        position: relative !important;
        left: 0 !important;
        margin: 0 !important;
    }

    .wrapper_top {
        position: relative !important;
        left: 0 !important;
        margin-left: 0 !important;
        width: 984px !important;
    }

    .header_login {
        position: absolute !important;
        left: 0 !important;
        margin-left: 0 !important;
        width: 984px !important;
    }

    .wrapper_body {
        position: absolute !important;
        top: 50px !important;
        left: 0 !important;
        margin-left: 0 !important;
        width: 984px !important;
    }

    .header_beasts {
        left: 0 !important;
        margin-left: 0 !important;
        width: 984px !important;
        background-size: cover !important;
        background-position: center top !important;
    }

    .header_shaman,
    .header_sura,
    .header_wings {
        display: none !important;
    }
}

/* ══════════════════════════════════════════════
   SUPORTE — CORREÇÕES MOBILE
   Panel movido para <body> via JS (index.php),
   o que resolve o position:fixed quebrado.
   Z-index máximo para ficar por cima de tudo.
══════════════════════════════════════════════ */
@media screen and (max-width: 1024px) {

  /* FAB fixo no canto inferior direito */
  .support-fab {
    position: fixed !important;
    right: 14px !important;
    bottom: 14px !important;
    left: auto !important;
    top: auto !important;
    z-index: 2147483647 !important;
    white-space: nowrap !important;
  }

  /* Panel fullscreen — z-index máximo possível */
  .support-panel,
  .support-panel--admin {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    border-radius: 0 !important;
    border: none !important;
    border-top: 2px solid var(--sw-gold-dim) !important;
    display: none !important;
    flex-direction: column !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    z-index: 2147483646 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }
  .support-panel.open,
  .support-panel--admin.open {
    display: flex !important;
  }

  /* Header */
  .support-header {
    flex-shrink: 0 !important;
    padding: 14px 16px !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }

  /* Body */
  .support-body {
    flex: 1 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }

  /* Nav tabs */
  .sw-nav { flex-shrink: 0 !important; width: 100% !important; }
  .sw-nav-tab { padding: 10px 4px !important; font-size: 10px !important; }

  /* Views */
  .sw-view {
    flex: 1 !important;
    display: none !important;
    flex-direction: column !important;
    padding: 12px 14px 14px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }
  .sw-view.active { display: flex !important; }

  /* Chat */
  .sw-chatlog {
    flex: 1 !important;
    height: auto !important;
    min-height: 120px !important;
    margin-bottom: 10px !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }
  .sw-compose { flex-shrink: 0 !important; box-sizing: border-box !important; width: 100% !important; }
  .sw-msg-bubble-wrap { max-width: 85% !important; }

  /* Admin grid */
  .sw-admin-grid { display: flex !important; flex-direction: column !important; gap: 8px !important; width: 100% !important; box-sizing: border-box !important; }
  .sw-admin-list { height: 220px !important; width: 100% !important; box-sizing: border-box !important; }
  .sw-admin-log, .sw-admin-log.sw-chatlog { height: 240px !important; width: 100% !important; box-sizing: border-box !important; }
  .sw-admin-toolbar { overflow-x: auto !important; flex-wrap: nowrap !important; padding-bottom: 10px !important; width: 100% !important; box-sizing: border-box !important; }
  .sw-admin-tab { white-space: nowrap !important; flex-shrink: 0 !important; }
  .sw-admin-chat-head { flex-wrap: wrap !important; gap: 6px !important; width: 100% !important; }
  .sw-admin-actions { flex-wrap: wrap !important; gap: 4px !important; }
  .sw-btn-util { font-size: 10px !important; padding: 5px 8px !important; }
  .sw-admin-addrow { flex-wrap: wrap !important; width: 100% !important; }
  .sw-admin-addrow input { min-width: 0 !important; flex: 1 1 120px !important; box-sizing: border-box !important; }
  .sw-cat-grid { grid-template-columns: 1fr !important; }
  .sw-step-label { font-size: 9px !important; }
  .support-status-pill { display: none !important; }
}