@media (max-width:900px){
  .mobile-container{padding-bottom:126px!important}
  .mobile-topbar{position:sticky;top:0;z-index:90;background:#d6001c;padding:12px 14px 14px;margin:-16px -16px 16px;border-radius:0 0 18px 18px}
  .mobile-topbar-row{
    display:grid;
    grid-template-columns:40px 1fr 40px;
    align-items:center;
    gap:10px;
    margin-bottom:10px;
  }
  .mobile-brand{
    justify-self:center;
    font-size:24px;
    font-weight:900;
    color:#fff!important;
    letter-spacing:.3px;
  }
  .mobile-icon-btn{
    width:40px;height:40px;padding:0;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.2);
    background:rgba(255,255,255,.08);
    display:flex;align-items:center;justify-content:center;
  }
  .mobile-icon-btn svg{
    width:18px;height:18px;
    stroke:#fff;stroke-width:2;fill:none;
    stroke-linecap:round;stroke-linejoin:round;
  }

  .mobile-search{
    display:grid!important;
    grid-template-columns:1fr 64px;
    gap:8px;
    background:#fff;
    border-radius:18px;
    padding:7px;
    box-shadow:0 8px 18px rgba(0,0,0,.08);
  }
  .mobile-search input{
    border:none!important;outline:none;
    font-size:15px;padding:10px 12px;background:transparent;
  }
  .mobile-search button{
    border:none;border-radius:14px;
    background:#1f2626;color:#fff;
    font-size:14px;font-weight:800;
  }

  .mobile-bottom-nav{
    position:fixed;
    left:12px; right:12px; bottom:20px;
    background:#fff;
    border:1px solid #ececec;
    border-radius:22px;
    padding:8px 10px;
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:2px;
    z-index:105;
    box-shadow:0 10px 24px rgba(0,0,0,.10);
  }
  .mobile-bottom-nav a,
  .mobile-bottom-nav button{
    border:none;background:none;
    display:flex;flex-direction:column;
    align-items:center;justify-content:center;
    gap:2px;padding:2px 0;
  }
  .mobile-bottom-nav svg{
    width:18px;height:18px;
    stroke:#2a2a2a;stroke-width:1.9;fill:none;
    stroke-linecap:round;stroke-linejoin:round;
  }
  .mobile-bottom-nav small{
    font-size:11px;
    font-weight:700;
    line-height:1.1;
    color:#222;
  }
  .mobile-bottom-nav a.active svg,
  .mobile-bottom-nav button.active svg{ stroke:#d6001c; }

  .mobile-chat-btn{
    position:fixed!important;
    right:12px!important;
    bottom:88px!important;
    z-index:106!important;
    height:40px!important;
    padding:0 12px!important;
    border-radius:999px!important;
    font-size:13px!important;
    font-weight:800!important;
    box-shadow:0 8px 18px rgba(0,0,0,.14)!important;
  }
  #chatWidget{
    right:12px!important;left:12px!important;
    bottom:140px!important;
    width:auto!important;max-width:none!important;
    z-index:120!important;
  }
}
@media (min-width:901px){
  .mobile-bottom-nav,.mobile-drawer,.mobile-overlay{display:none!important}
}
@media (max-width:900px){
  .mobile-topbar{
    padding:10px 14px 8px!important;
  }
  .mobile-topbar-row{
    margin-bottom:4px!important;
  }
  .mobile-search{
    margin-top:0!important;
    padding:7px!important;
    grid-template-columns:1fr 72px!important;
    align-items:center!important;
  }
  .mobile-search input{
    padding:10px 12px!important;
    line-height:1.2!important;
  }
  .mobile-search button{
    min-width:72px!important;
    height:44px!important;
    align-self:center!important;
  }
}
@media (max-width:900px){
  .mobile-topbar{
    padding:10px 14px 8px!important;
  }
  .mobile-topbar-row{
    grid-template-columns:44px 1fr 44px!important;
    margin-bottom:4px!important;
  }
  .mobile-icon-btn{
    width:44px!important;
    height:44px!important;
  }
  .mobile-search{
    margin-top:0!important;
    padding:7px!important;
    grid-template-columns:1fr 72px!important;
    align-items:center!important;
  }
  .mobile-search input{
    padding:10px 12px!important;
    line-height:1.2!important;
  }
  .mobile-search button{
    min-width:72px!important;
    height:44px!important;
    align-self:center!important;
  }
}
@media (max-width:900px){
  /* Samakan posisi kiri dengan kanan */
  .mobile-topbar-row{
    grid-template-columns:48px minmax(0,1fr) 48px !important;
    gap:12px !important;
    margin-bottom:6px !important;
  }

  .mobile-icon-btn{
    width:48px !important;
    height:48px !important;
  }

  /* Logo lebih presisi di tengah */
  .mobile-brand{
    width:100% !important;
    text-align:center !important;
    justify-self:center !important;
    padding-left:6px !important;
  }

  /* Search bar lebih seimbang kiri-kanan */
  .mobile-search{
    grid-template-columns:minmax(0,1fr) 72px !important;
    padding:8px !important;
  }

  .mobile-search input{
    padding:10px 14px 10px 16px !important;
  }

  .mobile-search button{
    height:46px !important;
  }
}
@media (max-width:900px){
  .mobile-topbar{
    border-radius:0 !important;
  }
}
@media (max-width:900px){
  .mobile-topbar-row{
    display:grid !important;
    grid-template-columns:48px 1fr 48px !important;
    align-items:center !important;
    gap:12px !important;
  }

  .mobile-icon-btn{
    width:48px !important;
    height:48px !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .mobile-brand{
    display:block !important;
    width:100% !important;
    text-align:center !important;
    margin:0 !important;
    padding:0 !important;
    justify-self:center !important;
  }
}
@media (max-width:900px){
  .mobile-bottom-nav{
    position:sticky !important;
    bottom:12px !important;
  }
}
@media (max-width:900px){
  .mobile-bottom-nav{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    bottom:8px !important;
    z-index:105 !important;
    margin:0 !important;
  }

  .mobile-site,
  .mobile-container,
  .m-content,
  .container{
    padding-bottom:110px !important;
  }

  #chatWidget{
    bottom:76px !important;
  }

  .mobile-chat-btn{
    bottom:84px !important;
  }
}
@media (max-width:900px){
  .mobile-bottom-nav{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    bottom:calc(env(safe-area-inset-bottom, 0px) + 6px) !important;
    z-index:105 !important;
    margin:0 !important;
    transform:translateZ(0) !important;
    -webkit-transform:translateZ(0) !important;
  }

  .mobile-site,
  .mobile-container,
  .m-content,
  .container{
    padding-bottom:110px !important;
    min-height:calc(100vh - 120px) !important;
    min-height:calc(100dvh - 120px) !important;
  }

  .mobile-chat-btn{
    position:fixed !important;
    right:12px !important;
    bottom:calc(env(safe-area-inset-bottom, 0px) + 74px) !important;
    z-index:106 !important;
  }

  #chatWidget{
    bottom:calc(env(safe-area-inset-bottom, 0px) + 66px) !important;
  }
}
@media (max-width:900px){
  .mobile-site,
  .mobile-container,
  .m-content,
  .container{
    padding-bottom:120px !important;
    min-height:auto !important;
  }

  .mobile-bottom-nav,
  .m-bottom-nav{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    bottom:calc(env(safe-area-inset-bottom, 0px) + 4px) !important;
    z-index:120 !important;
    margin:0 !important;

    background:#fff !important;
    border:1px solid #ececec !important;
    border-radius:22px !important;
    padding:10px 8px !important;
    display:grid !important;
    grid-template-columns:1fr 1fr 1fr !important;
    gap:0 !important;
    box-shadow:0 10px 28px rgba(0,0,0,.10) !important;

    transform:none !important;
    -webkit-transform:none !important;
  }

  .mobile-bottom-nav a,
  .mobile-bottom-nav button,
  .m-bottom-nav a,
  .m-bottom-nav button{
    min-height:52px !important;
    padding:4px 0 !important;
    border:none !important;
    background:transparent !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    box-shadow:none !important;
  }

  .mobile-bottom-nav svg,
  .m-bottom-nav svg{
    width:20px !important;
    height:20px !important;
  }

  .mobile-bottom-nav small,
  .m-bottom-nav small{
    font-size:11px !important;
    line-height:1.1 !important;
    font-weight:800 !important;
  }

  .mobile-chat-btn{
    position:fixed !important;
    right:12px !important;
    bottom:calc(env(safe-area-inset-bottom, 0px) + 82px) !important;
    z-index:121 !important;
    transform:none !important;
    -webkit-transform:none !important;
  }

  #chatWidget{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    bottom:calc(env(safe-area-inset-bottom, 0px) + 72px) !important;
    width:auto !important;
    max-width:none !important;
    z-index:122 !important;
  }
}