/* Responsive sizing and touch targets shared by all pages. */
html{scroll-padding-top:140px}body{overflow-wrap:anywhere}img,svg{max-width:100%}main,.card,.grid>*,.admin-panels,.hero-copy{min-width:0}input,select,textarea{max-width:100%;font-size:16px}button,.btn,.nav a,.page-sharing a,.page-sharing button{min-height:44px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #a0ffc8;outline-offset:3px}.grid{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))}pre{max-width:100%;overflow:auto}.stats-heading,.actions{flex-wrap:wrap}.stat-value,.registration-value,.sale-stat strong{overflow-wrap:anywhere}
@media(max-width:650px){header{position:relative}.top{align-items:flex-start}.brand{font-size:21px}.nav{gap:4px 12px;width:100%}.nav a{display:inline-flex;align-items:center}.card{padding:18px}.actions>*{max-width:100%}.search-controls>*{min-width:0}.search-controls input{flex-basis:100%}.admin-layout{grid-template-columns:minmax(0,1fr)}.admin-tabs{max-width:100%;overflow-x:auto}.stats-heading{gap:12px}h1,h2,h3{overflow-wrap:anywhere}main{padding-bottom:max(70px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}

/* Collapsible primary navigation; links stay available if JavaScript fails. */
.mobile-menu-toggle{display:none}
@media(max-width:650px){
 header.mobile-menu-ready>.top,header.mobile-menu-ready:not(:has(>.top)){display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
 header.mobile-menu-ready>.top{width:100%}
 header.mobile-menu-ready .brand,header.mobile-menu-ready>a:first-child{flex:1;min-width:0}
 .mobile-menu-ready .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;min-width:92px;padding:9px 12px;border:1px solid #ffffff38;border-radius:10px;background:#262538;color:#f5f5fa;font:inherit;font-weight:650}
 .menu-icon{font-size:23px;line-height:1;width:24px;text-align:center}
 header.mobile-menu-ready #primary-navigation{flex-basis:100%;width:100%;display:flex;flex-direction:column;align-items:stretch;gap:4px;padding-top:12px;border-top:1px solid #ffffff21}
 header.mobile-menu-ready #primary-navigation[hidden]{display:none}
 #primary-navigation>a,#primary-navigation>.btn{display:flex;align-items:center;min-height:46px;padding:10px 12px;border-radius:10px;text-align:left}
 #primary-navigation>a:hover{background:#ffffff0c}
 #primary-navigation>span{display:none}
}
