/* Shared responsive safeguards; no application behavior is defined here. */
html,body{max-width:100%}
img,svg,video,canvas{max-width:100%;height:auto}
.container,.card,.panel,.meta,main,section,article,form,fieldset,
[class*="grid"],[class*="row"],[class*="head"],[class*="body"]{min-width:0}
p,li,dd,td,th,label,a,span,strong,b,h1,h2,h3,h4,h5,h6{overflow-wrap:anywhere}
input:not([type="checkbox"]):not([type="radio"]),select,textarea{max-width:100%;box-sizing:border-box}
input[type="checkbox"],input[type="radio"]{width:auto;max-width:none}
.table-wrap,.table-responsive,.responsive-table,.read-table-wrap{
  width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch
}
.table-wrap table,.table-responsive table,.responsive-table table,.read-table-wrap table{
  width:max-content;min-width:100%;max-width:none
}
@media (max-width:768px){
  body{max-width:100vw;overflow-x:hidden}
  .container{max-width:calc(100% - 20px);margin-right:auto!important;margin-left:auto!important}
  .card,.panel{max-width:100%;padding:14px}
  h1{font-size:clamp(1.55rem,8vw,2rem)}h2{font-size:clamp(1.35rem,7vw,1.75rem)}h3{font-size:clamp(1.05rem,5.5vw,1.35rem)}
  .btn,button,
input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
select,textarea{min-height:44px}
  .btn,button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
  form:not(.inline-form) input:not([type="checkbox"]):not([type="radio"]),form:not(.inline-form) select,form:not(.inline-form) textarea{width:100%}
  .form-grid,.detail-grid{grid-template-columns:minmax(0,1fr)!important}
  .actions,.form-actions,.btn-row,.button-row,.page-actions{display:flex;flex-wrap:wrap;gap:8px}
  .actions>*,.form-actions>*,.btn-row>*,.button-row>*,.page-actions>*{flex:1 1 180px;max-width:100%}
  .kpi-grid,.stats-grid,.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .acc-wrap{max-width:100%}.acc-hero,.panel{border-radius:20px}
  .acc-hero-inner,.arrived-head{min-width:0}
  .acc-title,.acc-sub,.acc-badge{max-width:100%;overflow-wrap:anywhere}
  .meta-grid{grid-template-columns:repeat(auto-fit,minmax(min(145px,100%),1fr))!important}
  .operation-vehicle-grid{grid-template-columns:minmax(0,1fr)!important}
  .operation-vehicle-grid .meta,.operation-vehicle-grid details,.operation-vehicle-grid summary,.operation-vehicle-grid p,.operation-vehicle-grid li{min-width:0;max-width:100%;overflow-wrap:anywhere}
  .attendance-details>summary{overflow-wrap:anywhere}
  #navLinks{overscroll-behavior:contain;padding-bottom:calc(16px + env(safe-area-inset-bottom))!important}
}
@media (max-width:480px){
  .container{max-width:calc(100% - 10px);padding:10px!important}.card,.panel{padding:11px}
  .kpi-grid,.stats-grid,.summary-grid{gap:8px!important}.kpi{padding:12px;border-radius:17px}
  .kpi .label{font-size:12px}.kpi .num{font-size:22px}
  .photo-grid,.notification-track-summary{grid-template-columns:minmax(0,1fr)!important}
}
@media (max-width:340px){
  .kpi-grid,.stats-grid,.summary-grid{grid-template-columns:minmax(0,1fr)!important}
  .mobile-brand span{font-size:16px!important}
  .mobile-menu-btn{min-width:70px!important;max-width:76px!important;padding-inline:7px!important}
}
