/* Global responsive guardrails; component-level layouts remain in their templates. */
html{overflow-x:clip;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body,main{min-width:0;max-width:100%;overflow-wrap:break-word}
img,video,canvas,svg{max-width:100%;height:auto}
iframe{max-width:100%}
.row>*{min-width:0}
.table-responsive{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
input,select,textarea,button{max-width:100%}
pre{max-width:100%;overflow:auto}
:focus-visible{outline:3px solid #32986c;outline-offset:3px}
.table-responsive:focus-visible{outline-offset:-3px}

@media (pointer:coarse){
  :is(a,button,.btn,.nav-link,.dropdown-item,input,select){min-height:44px}
  :is(button,.btn,.nav-link,.dropdown-item){touch-action:manipulation}
}

@media (max-width:575px){
  input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}
  .nav-tabs,.dashboard-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;scrollbar-width:thin}
  .nav-tabs .nav-link,.dashboard-tabs .nav-link{white-space:nowrap}
  .section{padding-block:1.25rem}
  .container,.container-fluid{padding-inline:12px}
  .modal-dialog{margin:.65rem}
  .modal-content{max-height:calc(100dvh - 1.3rem);overflow:auto}
  .dropdown-menu{max-width:calc(100vw - 24px)}
  h1{overflow-wrap:anywhere}
  .btn-group{max-width:100%;flex-wrap:wrap}
}

@media (max-width:359px){
  .container,.container-fluid{padding-inline:9px}
  .card,[class*="-card"]{border-radius:14px}
  .btn{white-space:normal}
}

@media (min-width:1440px){
  body{font-size:16px}
  .container{max-width:1320px}
}

@media (min-width:1920px){
  body{font-size:17px}
  .container{max-width:1560px}
  .section{padding-block:3rem}
  .site-navbar .container{max-width:1560px}
}

@media (min-width:2560px){
  body{font-size:18px}
  .container{max-width:1760px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

@media (max-width:767px),(prefers-reduced-motion:reduce){
  :is(.glass-card,.net-form,.net-result,.compare-card,.ups-card,.diag-card){backdrop-filter:none;-webkit-backdrop-filter:none}
}
