.v15-mobile-toggle{display:none;border:0;background:transparent;color:#fff;padding:9px;border-radius:10px;min-width:44px;min-height:44px;align-items:center;justify-content:center;gap:4px;flex-direction:column}
.v15-mobile-toggle:hover,.v15-mobile-toggle:focus-visible{background:rgba(255,255,255,.1);outline:2px solid rgba(147,197,253,.55);outline-offset:2px}
.v15-mobile-toggle span{display:block;width:22px;height:2px;border-radius:999px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
.nav.v15-mobile-open .v15-mobile-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav.v15-mobile-open .v15-mobile-toggle span:nth-child(2){opacity:0}
.nav.v15-mobile-open .v15-mobile-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

@media(max-width:780px){
  .site-header{position:sticky;top:0;z-index:40}
  .nav{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:10px 14px}
  .brand{min-width:0;overflow:hidden}
  .brand span:last-child{display:inline!important;overflow:hidden;text-overflow:ellipsis;font-size:15px}
  .brand-mark{width:46px;height:46px;flex:0 0 46px}
  .v15-mobile-toggle{display:flex;grid-column:2;grid-row:1}
  .nav-links,.nav-actions{grid-column:1/-1;width:100%;display:none!important;overflow:visible!important;flex-direction:column;gap:6px;padding:10px 0 2px;border-top:1px solid rgba(255,255,255,.11)}
  .nav.v15-mobile-open .nav-links,.nav.v15-mobile-open .nav-actions{display:flex!important}
  .nav.v15-mobile-open .nav-actions{padding-top:2px;border-top:0}
  .nav-link,.nav-actions .btn,.nav-actions .v10-admin-link,.nav-actions .v15-admin-entry{width:100%;min-height:46px;justify-content:flex-start;text-align:left;padding:11px 13px;border-radius:10px;font-size:15px}
  .v15-admin-entry.v15-admin-signed-out{font-size:0}
  .v15-admin-entry.v15-admin-signed-out::after{content:"Administrator Sign In";font-size:15px;line-height:1.35}
  .nav-actions .account-pill{width:max-content;margin:4px 2px 2px}
  .nav-actions .btn{border-color:rgba(255,255,255,.36)}
  .main{padding:18px 12px 42px}
  .page-head h1{font-size:clamp(30px,9vw,42px);line-height:1.05}
  .form-card{margin:22px auto;max-width:100%}
  .card{border-radius:16px}
  .input,.select,.textarea{font-size:16px;min-height:48px}
  .textarea{min-height:96px}
  .btn{min-height:44px}
  .admin-layout{gap:14px}
  .side-nav{display:flex;gap:4px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:8px;box-shadow:none}
  .side-account,.side-link{scroll-snap-align:start;flex:0 0 auto}
  .side-account{min-width:118px}
  .side-link{padding:9px 11px}
  .metrics{gap:10px}
  .metric{padding:14px}
  .metric-value{font-size:26px}
  .table-wrap{-webkit-overflow-scrolling:touch}
  .modal-backdrop{align-items:end;padding:10px}
  .modal{max-height:88vh;border-radius:18px 18px 12px 12px;padding:18px}
  .toast{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));max-width:none}
}

@media(max-width:520px){
  .brand span:last-child{font-size:14px}
  .page-head{gap:10px;margin-bottom:16px}
  .page-head p{font-size:15px}
  .grid.grid-2,.grid.grid-3,.grid.grid-4{grid-template-columns:1fr}
  .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .card{padding:14px}
  .v12-account-head,.v12-request-head{align-items:flex-start;gap:10px}
}
