/* CH OS V108 — Mobile/Tablet responsiveness layer */
:root{--ch-safe-x:clamp(14px,3vw,28px);}
html{scroll-padding-top:80px} body{overflow-x:hidden} img,svg,video,canvas{max-width:100%;height:auto} *{box-sizing:border-box}
.main-content,.content,.app-main,.dashboard-content{min-width:0}.container,.wrap,.page-wrap,.dashboard-container{width:100%;max-width:100%}
.card,.stat-card,.panel,.glass-card,.table-card,.form-card,.module-card,.dashboard-card{min-width:0;overflow-wrap:anywhere}.btn,.button,a[class*="btn"]{white-space:normal}.form-input,input,select,textarea{max-width:100%;min-width:0}.form-row,.form-grid,.grid,.stats-grid,.cards-grid,.quick-grid,.hero-grid,.module-grid{min-width:0}.table-responsive,.ch-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:18px}table{max-width:100%}.ch-table-scroll table{min-width:760px}
@media (max-width:1180px){
  .sidebar{width:288px}.main-content,.app-content,.content-wrapper{margin-left:288px;width:calc(100% - 288px)}
  .dashboard-grid,.stats-grid,.cards-grid,.quick-grid,.hero-grid,.module-grid,.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
  .full-width,.grid-span-2,.span-2{grid-column:1/-1!important}.hero,.page-hero,.dashboard-hero{padding:28px var(--ch-safe-x)!important}
  h1,.hero-title,.page-title{font-size:clamp(36px,5.2vw,72px)!important;line-height:.94!important}
}
@media (max-width:900px){
  body.app-body{padding:0!important}.sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(86vw,330px)!important;transform:translateX(-105%);transition:transform .24s ease;z-index:1000;box-shadow:20px 0 70px rgba(0,0,0,.55);overflow-y:auto}.sidebar.is-open,.sidebar.open,.body-sidebar-open .sidebar,body.sidebar-open .sidebar{transform:translateX(0)!important}.main-content,.app-content,.content-wrapper,.content{margin-left:0!important;width:100%!important;padding:72px var(--ch-safe-x) 28px!important}.mobile-topbar,.ch-mobilebar,.app-mobilebar{display:flex!important;position:fixed;top:0;left:0;right:0;height:60px;z-index:900;align-items:center;justify-content:space-between;padding:0 16px;background:rgba(7,8,12,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
  .sidebar-backdrop,.nav-backdrop,.cp-scrim{position:fixed;inset:0;background:rgba(0,0,0,.54);z-index:990;opacity:0;pointer-events:none;transition:.2s}.sidebar-backdrop.is-open,.nav-backdrop.is-open,.cp-scrim.is-open{opacity:1;pointer-events:auto}
  .dashboard-grid,.stats-grid,.cards-grid,.quick-grid,.hero-grid,.module-grid,.form-grid,.two-col,.three-col{grid-template-columns:1fr!important}.top-actions,.page-actions,.hero-actions,.card-actions,.form-actions{display:flex;flex-wrap:wrap;gap:10px}.top-actions>* , .page-actions>* , .hero-actions>* , .card-actions>* , .form-actions>*{flex:1 1 auto}.btn,.button,button,input[type="submit"]{min-height:44px}.card,.panel,.glass-card,.form-card{border-radius:22px!important}.table-card{overflow:hidden}.filters,.filter-row,.toolbar{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}.form-row{grid-template-columns:1fr!important}.language-switcher,.lang-switch,.i18n-switch,.ch-language-switcher{justify-content:center!important;max-width:100%;overflow-x:auto}
}
@media (max-width:640px){
  .main-content,.app-content,.content-wrapper,.content{padding-left:14px!important;padding-right:14px!important}.hero,.page-hero,.dashboard-hero{border-radius:22px!important;padding:24px 18px!important}.hero h1,.page-title,h1{font-size:clamp(32px,12vw,52px)!important;letter-spacing:-.06em!important}.hero p,.lead,.page-subtitle{font-size:15px!important;line-height:1.55!important}.dashboard-grid,.stats-grid,.cards-grid{gap:14px!important}.stat-card,.card,.panel{padding:18px!important}.kpi-grid,.meta-grid{grid-template-columns:1fr!important}.btn,.button,button,a[class*="btn"]{width:100%;justify-content:center;text-align:center}.badge,.pill{max-width:100%;white-space:normal}.table-card table,.ch-table-scroll table{min-width:680px;font-size:13px}.modal,.dialog,.drawer{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;left:12px!important;right:12px!important}.form-input,input,select,textarea{font-size:16px!important} /* avoids iOS zoom */
}
@media (max-width:420px){.card,.panel,.glass-card,.form-card{padding:16px!important;border-radius:18px!important}.hero-actions,.form-actions,.card-actions{flex-direction:column}.nav-group-summary,.nav-link{min-height:44px}.logo img,.brand img{max-width:180px}}
