/* Center the legacy page shell and remove its retired advertising columns. */
body > table[width="720"] {
  margin-inline: auto;
}

td[height="480"][valign="top"]:first-child,
td[width="120"][valign="top"]:first-child,
td[width="120"][valign="top"]:first-child + td[width="520"] + td[valign="top"] {
  display: none;
}

/* Mobile enhancements for the preserved fixed-width legacy layout. */
.archive-page { font: 14px/1.5 Verdana, Arial, sans-serif; color: #111; background: white; }
.archive-main { max-width: 720px; margin: 20px auto; padding: 0 12px; }
.archive-main h1 { font-size: 22px; line-height: 1.3; }
.archive-main h2 { font-size: 17px; }
.archive-main a { color: #0000cc; }
.archive-main section[data-generated-specs] { margin: 16px 0 !important; font: inherit !important; }
.archive-main section[data-generated-specs] table { width: 100%; border-collapse: collapse; font: inherit; }
.archive-main section[data-generated-specs] th,
.archive-main section[data-generated-specs] td { padding: 7px; vertical-align: top; }
.archive-main section[data-generated-specs] th { width: 38%; }
.archive-years { display: flex; gap: 8px 22px; flex-wrap: wrap; padding-left: 20px; }
.archive-skip { position: absolute; left: -9999px; }
.archive-skip:focus { left: 12px; top: 12px; background: white; padding: 12px; z-index: 10; }
.archive-finder { max-width: 720px; margin: 16px auto; padding: 12px; border: 1px solid #888; text-align: left; background: #f4fff4; font: 13px/1.5 Verdana, Arial, sans-serif; }
.archive-finder label { display: inline-block; margin: 4px 12px 4px 0; }
.archive-finder input, .archive-finder select, .archive-finder button { font: inherit; padding: 6px; border: 1px solid #777; border-radius: 0; max-width: 100%; }
.archive-families { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.archive-finder a { font: inherit; text-decoration: underline; }
[hidden] { display: none !important; }

@media screen and (max-width: 760px) {
  html,
  body {
    box-sizing: border-box;
    margin: 0;
    max-width: 100%;
    overflow-x: hidden;
    padding: 0;
  }

  body {
    font-size: 14px;
    line-height: 1.4;
  }

  /* Recovered spec pages also have a fixed-width main outside their tables. */
  body > main {
    box-sizing: border-box;
    max-width: 100%;
    padding-inline: 12px;
  }

  body > table,
  table {
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
  }

  td,
  th {
    box-sizing: border-box;
    overflow-wrap: anywhere;
  }

  body td, body th, body a, body b, body font, body .BOD {
    font-size: 14px;
    line-height: 1.5;
  }

  .archive-finder input, .archive-finder select { font-size: 16px; }
  .archive-main section[data-generated-specs] { max-width: 100% !important; }

  img {
    height: auto !important;
    max-width: 100% !important;
  }

  h1,
  h2,
  h3 {
    line-height: 1.2;
  }

  #restoration-notice,
  section[data-generated-specs] {
    box-sizing: border-box;
    max-width: calc(100% - 16px) !important;
  }

  section[data-generated-specs] table {
    table-layout: auto;
  }
}
