.mobile-menu-toggle{display:none}
.mobile-menu-toggle[hidden],[data-mobile-menu][hidden]{display:none!important}
.sidebar .mobile-menu-panel{display:flex;flex-direction:column;flex:1;min-width:0}
@media(max-width:760px){
  .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:44px;min-height:44px;padding:10px;border:1px solid var(--line,#dce4dd);border-radius:8px;background:#fff;color:var(--area-colour,#123d32);font-size:13px;font-weight:700;line-height:1.2}
  .mobile-menu-toggle:hover,.mobile-menu-toggle[aria-expanded="true"]{background:var(--area-soft,#edf5f0)}
  .mobile-menu-toggle:focus-visible{outline:3px solid var(--area-colour,#123d32);outline-offset:3px}
  .mobile-menu-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;flex:none}
  .mobile-menu-toggle path{transform-origin:12px 12px;transition:transform .15s ease,opacity .15s ease}
  .mobile-menu-toggle[aria-expanded="true"] .menu-line-top{transform:translateY(6px) rotate(45deg);transform-origin:12px 6px}
  .mobile-menu-toggle[aria-expanded="true"] .menu-line-middle{opacity:0}
  .mobile-menu-toggle[aria-expanded="true"] .menu-line-bottom{transform:translateY(-6px) rotate(-45deg);transform-origin:12px 18px}
  .sidebar[data-mobile-navigation]{padding:12px 16px}
  .mobile-brand-row{display:flex;align-items:center;justify-content:space-between;gap:16px}
  .mobile-brand-row .brand{min-width:0;width:auto}
  .mobile-brand-row .brand-logo{width:76px;height:64px;object-fit:contain}
  .sidebar .mobile-menu-panel{margin-top:12px;padding:8px 2px 12px;border-top:1px solid var(--line);max-height:72vh;max-height:72dvh;overflow-y:auto;overscroll-behavior:contain}
  .sidebar .mobile-menu-panel .portal-card{display:flex;margin:8px 0 18px}
  .sidebar .mobile-menu-panel .nav-label{display:block;margin:12px 10px 6px}
  .sidebar .mobile-menu-panel nav{display:flex;flex-direction:column;gap:2px;overflow:visible;margin:0}
  .sidebar .mobile-menu-panel .nav-link{min-height:44px;white-space:normal;font-size:14px;padding:11px 12px;margin:2px 0}
  .sidebar .mobile-menu-panel .sidebar-bottom{display:block;padding:18px 10px 4px;margin:10px 0 0}
  .sidebar .mobile-menu-panel .sidebar-bottom .text-button{min-height:44px}
  .sidebar .mobile-menu-panel .portal-switch select{max-width:none}
  .fan-header[data-mobile-navigation]{flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px;padding:14px 16px}
  .fan-header[data-mobile-navigation] .fan-brand{flex:1;min-width:0;gap:9px}
  .fan-header[data-mobile-navigation] .fan-brand img{width:72px;height:72px;flex:none}
  .fan-header[data-mobile-navigation] .fan-brand-copy>strong{font-size:16px;line-height:1.3}
  .fan-header[data-mobile-navigation] .fan-brand-copy>.area-identity{font-size:11px;padding:4px 6px;gap:6px}
  .fan-header nav[data-mobile-menu]{display:flex;flex-direction:column;align-items:stretch;flex-basis:100%;gap:2px;margin-top:4px;padding:10px 0 4px;border-top:1px solid var(--line);max-height:72vh;max-height:72dvh;overflow-y:auto;overscroll-behavior:contain}
  .fan-header nav[data-mobile-menu]>a,.fan-header nav[data-mobile-menu] .text-button{display:flex;align-items:center;min-height:44px;padding:11px 12px;border-radius:7px;white-space:normal;overflow-wrap:anywhere;text-align:left;font-size:14px}
  .fan-header nav[data-mobile-menu]>a:not(.primary):hover{background:var(--area-soft,#fbeaf5)}
  .fan-header nav[data-mobile-menu]>form{border-top:1px solid var(--line);padding-top:6px;margin-top:6px}
  .fan-header nav[data-mobile-menu] .text-button{width:100%}
}
@media(prefers-reduced-motion:reduce){.mobile-menu-toggle path{transition:none}}
