/* MSI Mobile Sidebar V2 — direct, isolated override */
@media (max-width:760px){
  html,body,#root{width:100%;max-width:100%;overflow-x:hidden}
  .app-shell{display:block!important;width:100%!important;min-height:100dvh!important}
  .content-shell{width:100%!important;min-width:0!important;padding-top:64px!important;contain:layout paint}

  .sidebar{
    position:fixed!important;
    top:0!important;left:0!important;bottom:0!important;
    z-index:120!important;
    width:min(82vw,300px)!important;
    height:100dvh!important;
    padding:max(76px,calc(58px + env(safe-area-inset-top))) 18px max(20px,env(safe-area-inset-bottom))!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:space-between!important;
    gap:20px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain;
    background:#0b1830!important;
    border:0!important;
    border-right:1px solid rgba(255,255,255,.12)!important;
    box-shadow:10px 0 28px rgba(5,18,43,.20)!important;
    transform:translate3d(-104%,0,0)!important;
    transition:transform .18s ease-out!important;
    will-change:transform;
    contain:layout paint style;
  }
  html.msi-mobile-nav-open .sidebar{transform:translate3d(0,0,0)!important}

  .sidebar-brand{display:grid!important;gap:10px!important;padding:0 8px 16px!important;border-bottom:1px solid rgba(255,255,255,.10)!important}
  .sidebar-logo{
    display:block!important;
    width:172px!important;height:auto!important;max-width:100%!important;
    object-fit:contain!important;object-position:left center!important;
    filter:none!important;opacity:1!important;margin:0!important;
    background:#fff!important;border-radius:10px!important;padding:8px!important;
  }
  .sidebar-brand>strong{display:block!important;color:#fff!important;font-size:18px!important;line-height:1.25!important}
  .sidebar .tenant-label{display:block!important;color:#a9bad0!important;font-size:12px!important;margin-top:-4px!important}

  .sidebar nav{
    display:grid!important;grid-template-columns:1fr!important;gap:7px!important;
    margin:0!important;padding:0!important;width:100%!important;
    background:transparent!important;border:0!important;border-radius:0!important;overflow:visible!important;
  }
  .sidebar nav button{
    display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;align-items:center!important;
    min-height:48px!important;width:100%!important;padding:0 14px!important;border-radius:12px!important;
    background:transparent!important;color:#fff!important;text-align:left!important;font-size:15px!important;
    white-space:normal!important;overflow:visible!important;box-shadow:none!important;border:1px solid transparent!important;
    touch-action:manipulation;
  }
  .sidebar nav button:hover{background:rgba(255,255,255,.08)!important;color:#fff!important;transform:none!important}
  .sidebar nav button.active{background:#1459ad!important;color:#fff!important;border-color:rgba(255,255,255,.12)!important;box-shadow:none!important}
  .nav-icon{width:24px!important;height:24px!important;color:#fff!important;font-size:17px!important}

  .sidebar-footer{display:grid!important;gap:10px!important;padding-top:16px!important;border-top:1px solid rgba(255,255,255,.10)!important}
  .signed-user{display:block!important;color:#fff!important;font-size:13px!important;padding:0 4px!important}
  .sidebar-footer .secondary{width:100%!important;min-height:44px!important;background:rgba(255,255,255,.06)!important;color:#fff!important;border-color:rgba(255,255,255,.22)!important;touch-action:manipulation}

  .msi-mobile-menu-toggle{
    position:fixed;top:max(12px,env(safe-area-inset-top));left:12px;z-index:140;
    display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;
    border-radius:12px;background:#0b1830;color:#fff;border:1px solid rgba(255,255,255,.18);
    box-shadow:0 6px 18px rgba(5,18,43,.18);font-weight:800;font:inherit;
    touch-action:manipulation;
  }
  .msi-mobile-menu-toggle .icon{font-size:20px;line-height:1}
  .msi-mobile-nav-backdrop{
    position:fixed;inset:0;z-index:110;background:rgba(8,20,42,.38);
    border:0;border-radius:0;padding:0;margin:0;width:100%;height:100%;display:none;
    touch-action:manipulation;
  }
  html.msi-mobile-nav-open .msi-mobile-nav-backdrop{display:block}

  .page,.chat-page{width:100%!important;max-width:100%!important;padding-left:18px!important;padding-right:18px!important}
  .dashboard-grid,.capability-section,.agenda-grid,.completed-reminders,.admin-panel{content-visibility:auto;contain-intrinsic-size:1px 500px}
  img{max-width:100%}
}

@media (prefers-reduced-motion:reduce) and (max-width:760px){
  .sidebar{transition:none!important}
}

@media (min-width:761px){
  .msi-mobile-menu-toggle,.msi-mobile-nav-backdrop{display:none!important}
}
