
/* v43.18 mobile polish: admin + association/default frontend */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,canvas,iframe{max-width:100%;height:auto}
*{word-wrap:break-word}

/* ---------- Frontend ---------- */
@media (max-width: 991px){
  .site-shell,.inner-wrap,.content-shell,.content-shell-wide,.page-content-shell,.section-shell,.section-shell-narrow{max-width:100%!important}
  .page-pad,.section-shell,.section-shell-narrow{padding-inline:1rem!important}
  .top-mini-action{padding:.72rem .9rem;border-radius:.9rem;font-size:.84rem}
  .top-profile-dropdown{width:min(92vw,320px)!important;left:auto;right:0}
  .top-profile-menu{max-width:100%}
  .zoom-lens{right:.75rem;bottom:.75rem;font-size:.72rem;padding:.45rem .65rem}
  .product-buy-btn{width:100%;padding:.9rem 1rem;border-radius:1rem}
  .quick-menu-card{min-height:148px!important}
  .news-card,.smx-public-card,.auth-card,.member-card,.member-soft-box,.member-sidebar{border-radius:1.25rem!important}
  .content-text h1,.prose h1{font-size:clamp(1.6rem,5.8vw,2rem)!important;line-height:1.15!important}
  .content-text h2,.prose h2{font-size:clamp(1.28rem,5vw,1.7rem)!important;line-height:1.2!important}
  .content-text h3,.prose h3{font-size:clamp(1.12rem,4.4vw,1.35rem)!important;line-height:1.28!important}
  .content-text p,.prose p{font-size:.96rem!important;line-height:1.78!important}
  .homepage-main .site-shell.page-pad{padding-top:.65rem!important;padding-bottom:.8rem!important}
  .homepage-content-shell>.row,.homepage-content-shell>.homepage-quick-row,.homepage-content-shell>.homepage-hero-row,.homepage-content-shell>.homepage-categories-row{margin-bottom:1rem!important}
  .homepage-hero-row{grid-template-columns:1fr!important;gap:.9rem!important}
  .homepage-hero-side{gap:.75rem!important}
  .homepage-hero-side-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.65rem!important}
  .homepage-hero-stat-item .homepage-hero-stat-card{padding:.85rem .65rem!important;min-height:90px!important}
  .homepage-hero-stat-value{font-size:1.15rem!important}
  .homepage-hero-portal-box.homepage-hero-portal-compact{padding:1rem!important;min-height:auto!important}
  .homepage-hero-portal-title{font-size:1.15rem!important}
  .quick-menu-rail{gap:.75rem!important;padding-bottom:.45rem!important}
  .quick-menu-card{flex-basis:calc((100% - .75rem)/2)!important}
  .grid.sm\:grid-cols-2,.grid.md\:grid-cols-2,.grid.lg\:grid-cols-2,.grid.lg\:grid-cols-3,.grid.xl\:grid-cols-2,.grid.xl\:grid-cols-3,.grid.xl\:grid-cols-4,.grid.2xl\:grid-cols-4{grid-template-columns:1fr!important}
  .smx-responsive-stack,.member-shell .grid,.member-card .grid,[class*="grid-cols-"]{min-width:0}
  .grid.sm\:grid-cols-2.keep-mobile-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .auth-shell{padding-inline:0!important}
  .auth-card{border-radius:1.25rem!important}
  .auth-side{padding:1.25rem!important}
  .auth-input-grid{grid-template-columns:1fr!important;gap:.85rem!important}
  .auth-actions{gap:.65rem!important}
  .auth-actions>*{width:100%!important;justify-content:center!important}
  .member-shell{padding-inline:.25rem!important}
  .member-sidebar nav{grid-template-columns:1fr!important}
  .member-nav-link{padding:.8rem .9rem!important}
  .member-list-card{padding:1rem!important}
  .member-list-card>*{min-width:0}
  .smx-floating-cta-cluster{right:.75rem!important;bottom:.9rem!important;gap:.55rem!important}
  .smx-shift-left-mobile{right:1rem!important;left:auto!important}
}

@media (max-width: 767px){
  body{font-size:14.5px!important}
  .page-pad,.section-shell,.section-shell-narrow{padding-inline:.9rem!important}
  .site-shell,.section-shell,.section-shell-narrow{width:100%!important}
  .news-card{border-radius:1.15rem!important}
  .content-shell .content-text,.content-shell-wide .content-text{font-size:.96rem!important}
  .product-thumb{width:64px!important;height:64px!important}
  .filter-chip{padding:.68rem .85rem!important;font-size:.82rem!important}
  .top-profile-dropdown{width:min(94vw,320px)!important;right:0;left:auto}
  .top-mini-action{width:100%;justify-content:center}
  .smx-public-card,.member-card,.member-soft-box{padding:1rem!important}
  .smx-table-shell,.overflow-x-auto{overflow-x:auto!important;overflow-y:hidden!important}
  .smx-table-shell table,.overflow-x-auto table{min-width:640px}
  .smx-responsive-table table{min-width:0!important}
  footer{margin-top:2rem!important}
  footer .grid{gap:1.4rem!important}
  footer h3,footer h4{font-size:1rem!important}
}

/* ---------- Admin ---------- */
@media (max-width: 1279px){
  .admin-shell{grid-template-columns:1fr!important}
  aside#adminSidebar{width:min(88vw,320px)!important;max-width:320px!important}
  .sidebar-scroll{overflow-y:auto!important;overflow-x:hidden!important;padding-right:.15rem!important;margin-right:0!important}
  .admin-main-flow{padding-inline:1rem!important;padding-bottom:4.25rem!important;min-width:0!important}
  .top-toolbar-row,.admin-toolbar{padding-inline:1rem!important}
  .toolbar-menu,.toolbar-menu.wide{right:0;left:auto;max-width:min(92vw,360px)!important;min-width:min(92vw,320px)!important}
  .profile-card-btn{min-width:0!important;width:auto!important;max-width:100%}
}

@media (max-width: 991px){
  body .admin-main-flow{padding-inline:.9rem!important}
  .smx-page-header{gap:.75rem!important}
  .smx-page-title{font-size:1.35rem!important;line-height:1.15!important}
  .smx-page-desc{font-size:.92rem!important;line-height:1.6!important}
  .smx-toolbar{width:100%!important;gap:.6rem!important}
  .smx-toolbar>*{flex:1 1 calc(50% - .6rem);min-width:0}
  .smx-toolbar .btn-soft,.smx-toolbar .btn-primary,.smx-toolbar .btn-danger{width:100%;justify-content:center}
  .admin-card{border-radius:1.15rem!important}
  .top-panel{padding:1rem!important;border-radius:1.1rem!important}
  .grid.sm\:grid-cols-2,.grid.lg\:grid-cols-2,.grid.xl\:grid-cols-2,.grid.xl\:grid-cols-3,.grid.xl\:grid-cols-4,.grid.2xl\:grid-cols-4{grid-template-columns:1fr!important}
  .smx-stat-grid>*{grid-column:span 12!important}
  .smx-form-section{padding:1rem!important;border-radius:1.15rem!important}
  .smx-form-grid{gap:.7rem!important}
  .smx-form-actions>*{width:100%!important;justify-content:center!important}
  .smx-table-shell,.overflow-x-auto{overflow-x:auto!important;overflow-y:hidden!important}
  .smx-table-shell table,.overflow-x-auto table{min-width:720px}
  .toolbar-dropdown{position:static}
  .toolbar-menu{position:fixed!important;top:auto!important;left:1rem!important;right:1rem!important;bottom:1rem!important;width:auto!important;max-height:70vh;overflow:auto;z-index:39000!important}
  .profile-card-btn{padding:.5rem .65rem!important;border-radius:1rem!important}
  .profile-card-btn .profile-avatar{width:2.4rem!important;height:2.4rem!important}
  .brand-title{font-size:1.35rem!important}
  .brand-sub,.brand-badge,.brand-alert-chip{font-size:.72rem!important}
}

@media (max-width: 767px){
  .admin-main-flow{padding-inline:.75rem!important;padding-bottom:4rem!important}
  .top-toolbar-row,.admin-toolbar{padding-inline:.75rem!important}
  .smx-toolbar>*{flex:1 1 100%!important}
  .btn-primary,.btn-soft,.btn-danger{min-height:2.9rem!important;padding:.8rem 1rem!important;font-size:.92rem!important}
  input,select,textarea{font-size:16px!important}
  .smx-filter-grid,.smx-form-grid{grid-template-columns:1fr!important}
  .smx-filter-grid>*,.smx-form-grid>*{grid-column:1/-1!important}
  .smx-page-title{font-size:1.22rem!important}
  .admin-card .text-3xl,.admin-card .text-2xl{font-size:1.22rem!important;line-height:1.2!important}
  .admin-card .text-xl{font-size:1.05rem!important}
  .admin-card .min-h-\[132px\],.admin-card .min-h-\[260px\]{min-height:auto!important}
  .dashboard-kpi-grid,.ops-rail-grid{grid-template-columns:1fr!important}
  .top-icon-btn{width:2.7rem!important;height:2.7rem!important}
  .toolbar-menu-item{padding:.7rem .8rem!important}
  aside#adminSidebar{width:min(92vw,320px)!important}
}
