/* Genius Property V37 — UX mobile/tablette */
@media (max-width: 900px){
  body{overflow-x:hidden;}
  .app-wrap{display:block;}
  .sidebar{position:fixed;left:0;top:0;bottom:0;width:82%;max-width:320px;z-index:9999;transform:translateX(-104%);transition:transform .24s ease;box-shadow:18px 0 44px rgba(15,23,42,.22);}
  body.gp-mobile-menu-open .sidebar{transform:translateX(0);}
  body.gp-mobile-menu-open:after{content:"";position:fixed;inset:0;background:rgba(15,23,42,.42);z-index:9998;}
  .main,.content{margin-left:0!important;width:100%!important;max-width:100vw;}
  .topbar{position:sticky;top:0;z-index:800;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);gap:8px;padding:8px 10px;}
  .topbar:before{content:"☰";display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#111827;color:#fff;font-size:20px;font-weight:900;margin-right:4px;cursor:pointer;}
  .top-icons{gap:5px;overflow-x:auto;max-width:58vw;}
  .top-icons .icon-btn{min-width:36px;height:36px;}
  .page{padding:12px!important;}
  .grid,.cards-grid,.dashboard-grid,.stats-grid{grid-template-columns:1fr!important;}
  table{font-size:12px;}
  .table-wrap,.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  input,select,textarea,button{font-size:16px;}
  .modal,.modal-content,.popup,.dialog{max-width:94vw!important;width:94vw!important;}
}
@media (max-width: 520px){
  .page h1,.page h2{font-size:21px!important;}
  .card,.gp-sync-card,.gpq-card,.gpo-card{border-radius:16px!important;padding:14px!important;}
  .btn,.gp-sync-btn,.gpq-btn,.gpo-btn{width:100%;justify-content:center;}
}
@media (max-width: 900px){
  #gpMobileMenuBtn{display:inline-flex!important;flex:0 0 auto;}
  .topbar:before{display:none!important;content:none!important;}
  .sidebar-overlay{display:none;}
  body.gp-mobile-menu-open .sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(15,23,42,.42);z-index:9998;}
}
