/* Shared base for ArmAGI sub-sites. Page styles are inline in the template;
   this file only adds what the desktop-first prototypes lacked. */
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 2px solid #C99A2E; outline-offset: 2px; }
img { max-width: 100%; }

@media (max-width: 760px) {
  /* the page column */
  #root > [style*="max-width"], #root > div > [style*="max-width: 1080px"], #root > div > [style*="max-width: 1120px"] { padding-left: 16px !important; padding-right: 16px !important; }
  /* proportional grids stack; fixed-track grids (label | bar | value) keep their shape */
  #root [style*="grid-template-columns: repeat(2"], #root [style*="grid-template-columns: repeat(3"],
  #root [style*="grid-template-columns: minmax("] { grid-template-columns: minmax(0, 1fr) !important; }
  #root [style*="grid-template-columns: repeat(4"], #root [style*="grid-template-columns: repeat(5"],
  #root [style*="grid-template-columns: repeat(6"], #root [style*="grid-template-columns: repeat(7"],
  #root [style*="grid-template-columns: repeat(8"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  #root [style*="grid-column: "] { grid-column: auto !important; }
  #root [style*="padding: 44px 40px"] { padding: 32px 22px !important; }
  #root section[style*="margin-top: 88px"], #root section[style*="margin-top: 96px"] { margin-top: 64px !important; }
  #root h2[style*="font-size: 32px"] { font-size: 26px !important; }
  #root table { display: block; overflow-x: auto; }
  #root span[style*="white-space: nowrap"] { white-space: normal !important; }
}

/* page-specific */
@media (max-width: 760px) { #root [style*="grid-template-columns: 240px minmax"] { grid-template-columns: 112px minmax(0, 1fr) 74px !important; gap: 8px !important; } }
