/* AgoraIQ shared mobile-responsive styles
   Loaded on every page via /assets/agoraiq-mobile.css
   Last update: auto-generated by deploy-mobile.sh */

:root{
  --aiq-safe-top:env(safe-area-inset-top,0px);
  --aiq-safe-bottom:env(safe-area-inset-bottom,0px);
}

/* Lock brand text to Syne universally — bulletproof against fallbacks */
.brand-text,.brand-text *,.footer-brand,.footer-brand *{
  font-family:'Syne','Albert Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif!important;
  font-weight:800!important;
  letter-spacing:-.02em;
}

/* Hamburger toggle button (injected by JS, hidden on desktop) */
.aiq-nav-toggle{
  display:none;
  background:transparent;
  border:1px solid var(--border,#1e2230);
  border-radius:8px;
  color:var(--text,#e4e7ef);
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  padding:0;
  flex-shrink:0;
  -webkit-tap-highlight-color:transparent;
}
.aiq-nav-toggle:active{background:var(--surface2,#161822)}
.aiq-nav-toggle svg{width:20px;height:20px;display:block}

/* ≤900px: collapse topbar nav into hamburger drawer */
@media(max-width:900px){
  .aiq-nav-toggle{display:inline-flex}
  .topbar{position:relative;padding-top:calc(16px + var(--aiq-safe-top))}
  .topbar > nav{
    display:none!important;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    background:var(--surface,#0e1017);
    border-bottom:1px solid var(--border,#1e2230);
    box-shadow:0 8px 24px rgba(0,0,0,.4);
    padding:8px 0!important;
    gap:0!important;
    z-index:200;
    max-height:calc(100vh - 80px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }
  .topbar > nav.aiq-open{display:flex!important}
  .topbar > nav > a{
    padding:14px 24px!important;
    border-bottom:1px solid var(--border,#1e2230);
    font-size:14px;
    white-space:normal;
  }
  .topbar > nav > a:last-child{border-bottom:none}
}

/* ≤768px: tighten container padding */
@media(max-width:768px){
  .container{padding-left:16px!important;padding-right:16px!important}
}

/* ≤480px: small phone tightening for topbar + footer */
@media(max-width:480px){
  .topbar{padding:14px 16px!important;padding-top:calc(14px + var(--aiq-safe-top))!important}
  .brand-text{font-size:16px!important}
  .legal-footer{padding:28px 16px!important;padding-bottom:calc(28px + var(--aiq-safe-bottom))!important}
}

/* Touch devices: kill sticky hover lift */
@media(hover:none){
  .plan-card:hover,.card:hover,.signal-card:hover,.provider-card:hover{transform:none}
}

/* Prevent iOS input zoom */
@media(max-width:768px){
  input[type="text"],input[type="email"],input[type="password"],
  input[type="search"],input[type="number"],input[type="tel"],
  input[type="url"],textarea,select{font-size:16px!important}
}
