/* M1.4 HARD MOBILE CLEANUP - stable mobile app layout */

/* desktop reset safety */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,canvas,iframe{max-width:100%;height:auto}
input,select,textarea,button{font-size:16px}

/* kill previous broken menu buttons on every size */
.mobile-menu-btn,#portalMenuBtn,button.mobile-menu-btn{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
  position:absolute!important;left:-99999px!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;
  padding:0!important;margin:0!important;border:0!important;transform:none!important;clip-path:inset(50%)!important;
}
.mobile-bottom-cta,.ati-public-actionbar{display:none!important}

/* pricing/public desktop repair */
body:not(.ati-admin-page):not(.ati-client-page) .topbar{
  min-height:76px!important;height:auto!important;
}
body:not(.ati-admin-page):not(.ati-client-page) .brand img{
  height:46px!important;width:auto!important;max-height:46px!important;max-width:70px!important;object-fit:contain!important;
}
body:not(.ati-admin-page):not(.ati-client-page) .container,
body:not(.ati-admin-page):not(.ati-client-page) .wrap{
  max-width:1180px!important;margin-left:auto!important;margin-right:auto!important;
}
body:not(.ati-admin-page):not(.ati-client-page) .hero{
  transform:none!important;zoom:1!important;
}
body:not(.ati-admin-page):not(.ati-client-page) .hero h1{
  font-size:clamp(38px,6vw,72px)!important;line-height:1.02!important;
}
body:not(.ati-admin-page):not(.ati-client-page) .price-grid{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;
}
body:not(.ati-admin-page):not(.ati-client-page) .price{
  min-height:0!important;
}

/* mobile app menu */
:root{--ati-tab-h:74px;--ati-safe:env(safe-area-inset-bottom,0px)}

@media(max-width:980px){
  body{padding-bottom:calc(var(--ati-tab-h) + var(--ati-safe) + 12px)!important}

  .ati-app-tabs{
    position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:2147483640!important;
    height:calc(var(--ati-tab-h) + var(--ati-safe))!important;
    padding:7px 8px calc(7px + var(--ati-safe))!important;
    display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important;
    background:rgba(4,11,22,.98)!important;border-top:1px solid rgba(101,213,255,.18)!important;
    box-shadow:0 -18px 55px rgba(0,0,0,.48)!important;backdrop-filter:blur(18px)!important;
  }
  .ati-app-tabs a{
    min-width:0!important;min-height:0!important;width:auto!important;height:auto!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;
    padding:6px 2px!important;border-radius:14px!important;color:#bcd0e8!important;text-decoration:none!important;
    font-size:11px!important;line-height:1.05!important;font-weight:800!important;background:transparent!important;border:0!important;text-align:center!important;white-space:nowrap!important;
  }
  .ati-app-tabs a span{display:block!important;font-size:19px!important;line-height:1!important}
  .ati-app-tabs a.active{background:rgba(44,201,255,.15)!important;color:#fff!important;border:1px solid rgba(101,213,255,.18)!important}

  body.ati-client-page aside,body.ati-admin-page aside{display:none!important}
  body.ati-client-page .shell,body.ati-admin-page .shell{display:block!important;width:100%!important;min-height:100vh!important}
  body.ati-client-page main,body.ati-admin-page main{width:100%!important;max-width:100%!important;padding:16px!important;margin:0!important}

  /* public mobile */
  body:not(.ati-admin-page):not(.ati-client-page) .topbar{
    padding:12px 14px!important;min-height:70px!important;height:auto!important;gap:10px!important;overflow:visible!important;
  }
  body:not(.ati-admin-page):not(.ati-client-page) .brand img{
    height:42px!important;max-height:42px!important;max-width:58px!important;
  }
  body:not(.ati-admin-page):not(.ati-client-page) .brand strong{font-size:15px!important}
  body:not(.ati-admin-page):not(.ati-client-page) .brand small{font-size:9px!important}
  body:not(.ati-admin-page):not(.ati-client-page) .container,
  body:not(.ati-admin-page):not(.ati-client-page) .wrap{
    width:min(100% - 24px,1120px)!important;max-width:1120px!important;
  }
  body:not(.ati-admin-page):not(.ati-client-page) .hero{padding:34px 0!important;text-align:center!important}
  body:not(.ati-admin-page):not(.ati-client-page) .hero h1{font-size:clamp(30px,9vw,42px)!important;line-height:1.08!important}
  body:not(.ati-admin-page):not(.ati-client-page) .price-grid,
  body:not(.ati-admin-page):not(.ati-client-page) .prices,
  .hero-grid,.grid,.grid2,.grid3,.cards,.steps,.ranks,.stats,.partner-grid,.form-grid,.wallet-pro,.board,.podium{
    grid-template-columns:1fr!important;gap:12px!important;
  }
  .card,.panel,.price,.stat,.field,.hero-card,.cta,.board-card{
    border-radius:20px!important;padding:16px!important;max-width:100%!important;overflow:hidden!important;
  }
  .btn,button,input[type=submit]{min-height:44px!important;border-radius:14px!important}
  .actions,.hero-actions,.btns{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .actions .btn,.hero-actions .btn,.btns .btn{width:100%!important;justify-content:center!important;text-align:center!important}
  input,select,textarea{width:100%!important;max-width:100%!important;border-radius:14px!important;padding:12px!important}

  /* compact public dropdown */
  body.nav-open .nav,body.nav-open .navlinks,.nav.open,.navlinks.open{
    display:flex!important;position:absolute!important;left:12px!important;right:12px!important;top:72px!important;z-index:2147483200!important;
    max-height:65vh!important;overflow:auto!important;flex-direction:column!important;gap:8px!important;padding:12px!important;border-radius:20px!important;
    background:rgba(7,18,32,.98)!important;border:1px solid rgba(101,213,255,.18)!important;box-shadow:0 22px 70px rgba(0,0,0,.45)!important;
  }
  body.nav-open .nav a,body.nav-open .navlinks a,.nav.open a,.navlinks.open a{
    width:100%!important;justify-content:center!important;text-align:center!important;padding:12px!important;border-radius:14px!important;
    background:rgba(255,255,255,.055)!important;border:1px solid rgba(101,213,255,.12)!important;
  }

  .table-wrap{overflow:visible!important;border:0!important;max-width:100%!important}
  table.mobile-card-table,table.mobile-card-table thead,table.mobile-card-table tbody,table.mobile-card-table th,table.mobile-card-table td,table.mobile-card-table tr{display:block!important;width:100%!important}
  table.mobile-card-table thead{display:none!important}
  table.mobile-card-table tr{margin:0 0 12px!important;padding:12px!important;border:1px solid rgba(101,213,255,.14)!important;border-radius:16px!important;background:rgba(255,255,255,.035)!important}
  table.mobile-card-table td{border:0!important;padding:8px 0!important;display:flex!important;justify-content:space-between!important;gap:12px!important;text-align:right!important;word-break:break-word!important}
  table.mobile-card-table td:before{content:attr(data-label);font-weight:800;color:#a8c4e3;text-align:left!important;min-width:42%;max-width:45%}
}

@media(max-width:420px){
  .ati-app-tabs a{font-size:10px!important}
  .ati-app-tabs a span{font-size:18px!important}
}
@media(min-width:981px){
  .ati-app-tabs{display:none!important}
  body{padding-bottom:0!important}
}
