/* Guideline pages only. The site's existing palette, fonts and chrome are inherited. */
.technical-guidelines .content-card,
.technical-guidelines .page-content {
  min-width: 0;
}
.technical-guidelines .page-hero h1 {
  overflow-wrap: anywhere;
}
.technical-guidelines .technical-table-wrap {
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}
.technical-guidelines .technical-table-wrap:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}
.technical-guidelines .page-content .technical-table {
  --technical-label-width: 13rem;
  --technical-value-width: 5.5rem;
  min-width: 0;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
}
.technical-guidelines .page-content .technical-table-wide {
  width: max(100%, calc(var(--technical-label-width) + (var(--technical-columns) - 1) * var(--technical-value-width))) !important;
}
.technical-guidelines .page-content .technical-table-units {
  --technical-value-width: 7.5rem;
}
.technical-guidelines .technical-table-wide .technical-description-column {
  width: var(--technical-label-width);
}
.technical-guidelines .technical-table-wide .technical-value-column {
  width: var(--technical-value-width);
}
.technical-guidelines .technical-table-small .technical-description-column {
  width: 36%;
}
.technical-guidelines .page-content .technical-table-small {
  table-layout: auto;
}
.technical-guidelines .technical-table th,
.technical-guidelines .technical-table td {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  font-variant-numeric: tabular-nums;
  vertical-align: middle;
}
.technical-guidelines .technical-table thead th {
  text-align: center;
  white-space: normal;
}
.technical-guidelines .technical-table .technical-description {
  text-align: left;
  white-space: normal;
}
.technical-guidelines .technical-table tbody th[scope="row"] {
  background: #fff;
  color: var(--muted-text);
  font-weight: inherit;
}
.technical-guidelines .technical-table .technical-numeric {
  text-align: center;
  white-space: nowrap;
}
.technical-guidelines .technical-table-small tbody th.technical-numeric {
  white-space: normal;
}
.technical-guidelines .technical-table .technical-values {
  text-align: center;
  white-space: normal;
}
.technical-guidelines .technical-atom {
  display: inline-block;
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
}
.technical-guidelines .technical-table-wrap.is-overflowing .technical-corner-header,
.technical-guidelines .technical-table-wrap.is-overflowing tbody th[scope="row"] {
  position: sticky;
  left: 0;
  z-index: 1;
}
.technical-guidelines .technical-table-wrap.is-overflowing .technical-corner-header {
  z-index: 2;
  background: var(--surface-strong);
}
.technical-guidelines .technical-scroll-hint {
  margin: .35rem 0 1rem;
  font-size: .85em;
  color: var(--muted-text);
}
.technical-guidelines .technical-scroll-hint[hidden] {
  display: none !important;
}
.technical-guidelines .technical-diagram-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 1rem 0;
}
.technical-guidelines .technical-diagram,
.technical-guidelines .technical-diagram-caption {
  min-width: 0;
}
.technical-guidelines .technical-diagram-caption {
  grid-column: 1 / -1;
}
.technical-guidelines .technical-diagram-grid img {
  max-width: 100%;
  object-fit: contain;
}
.technical-guidelines .page-content .lm-calculator-panel {
  max-width: 34rem;
  margin: 2rem auto;
  padding: clamp(.75rem, 3vw, 1.25rem);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
}
.technical-guidelines .lm-calculator-fields {
  display: grid;
  gap: .75rem;
}
.technical-guidelines .lm-calculator-row {
  display: grid;
  grid-template-columns: minmax(4rem, max-content) minmax(0, 1fr);
  align-items: center;
  gap: .75rem;
  min-width: 0;
}
.technical-guidelines .lm-calculator-label {
  color: var(--ink);
  font-weight: 600;
  text-align: right;
  white-space: nowrap;
}
.technical-guidelines .lm-calculator-value {
  display: flex;
  align-items: center;
  gap: .5rem;
  min-width: 0;
  text-align: left;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.technical-guidelines #bendingResultsForm .lm-calculator-value input,
.technical-guidelines #bendingResultsForm .lm-calculator-value select {
  width: 6.25rem;
  max-width: 100%;
  min-width: 0;
  font-size: 1.125rem;
}
.technical-guidelines #bendingResultsForm .lm-calculator-value label {
  min-width: 6.25rem;
  font-weight: 600;
}
.technical-guidelines #bendingResultsForm input[type="submit"] {
  padding: .6rem 1.25rem;
  font-size: 1.125rem;
}
.technical-guidelines #bendingResultsForm input[type="submit"]:hover {
  background: var(--accent-strong);
}
@media (max-width: 640px) {
  .technical-guidelines .page-content .technical-table {
    --technical-label-width: 9.5rem;
  }
  .technical-guidelines .technical-table th,
  .technical-guidelines .technical-table td {
    padding: .5rem;
  }
  .technical-guidelines .technical-diagram-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 600px) {
  .technical-guidelines .lm-calculator-row {
    grid-template-columns: 3.5rem minmax(0, 1fr);
    gap: .5rem;
  }
}
