.model-guide { max-width: 100%; }
.guide-updated { color: var(--muted); font-size: .9rem; }
.guide-table-scroll { position: relative; min-width: 0; max-width: 100%; overflow-x: auto; margin: 1.5rem 0; border: 1px solid currentColor; border-radius: 12px; }
.guide-table { display: table !important; overflow: visible !important; width: 100%; border-collapse: collapse; font-size: .95rem; }
.guide-table th, .guide-table td { text-align: left; vertical-align: top; padding: 1rem !important; border-bottom: 1px solid currentColor; }
.guide-table th { font-weight: 700; }
.guide-table code { font-size: .85rem; }
.guide-table .button { position: relative; display: inline-block; padding: .6rem 1rem; min-height: 44px; box-sizing: border-box; background: var(--text); color: var(--bg) !important; border-radius: 99px; text-decoration: none !important; white-space: nowrap; }
.model-guide pre { max-width: 100%; overflow-x: auto; padding: 1rem; border: 1px solid currentColor; border-radius: 8px; }
.model-guide code { overflow-wrap: anywhere; }
.model-guide nav { margin-top: 2rem; line-height: 2; }
.model-guide h3 { margin-top: 1.5rem; }
.family-pages-table { min-width: 960px; }
.family-pages__scroll-hint { font-size: .9rem; color: var(--muted); }
@media (min-width: 701px) {
  .family-pages-table { min-width: 1440px; }
  .family-pages-table :is(th, td):first-child { min-width: 280px; max-width: 360px; overflow-wrap: anywhere; }
}
.family-fit-badge { font-size: .85em; margin-left: .35rem; color: var(--text); }
.family-row-fits { background: color-mix(in srgb, var(--success, #0a7a2f) 8%, transparent); }
.family-row-tight { background: color-mix(in srgb, var(--warning, #b45309) 8%, transparent); }
.family-row-too-big { opacity: .92; }
.family-fit-helper form { display: flex; flex-wrap: wrap; gap: .5rem 1rem; align-items: center; margin: 1rem 0; }
@media (max-width: 600px) { .guide-table th, .guide-table td { padding: .75rem !important; } .guide-table { min-width: 640px; } .model-guide pre { font-size: .8rem; } .family-pages-table { min-width: 720px; } }
@media (max-width: 700px) {
  .family-pages__scroll-hint { display: none; }
  .family-pages-table, .hardware-pages-table { display: block !important; min-width: 0; }
  .family-pages-table thead, .hardware-pages-table thead { display: none; }
  .family-pages-table tbody, .hardware-pages-table tbody { display: block; }
  .family-pages-table tr, .hardware-pages-table tr { display: grid; grid-template-columns: minmax(0, 1fr); }
  .family-pages-table td, .hardware-pages-table td { display: block; min-width: 0; overflow-wrap: anywhere; }
  .family-pages-table td[data-label]::before, .hardware-pages-table td[data-label]::before { content: attr(data-label) ": "; font-weight: 700; }
  .family-pages-table tr + tr, .hardware-pages-table tr + tr { border-top: 2px solid var(--border); }
}
.guide-table.compare-pages-table { min-width: 0; table-layout: fixed; overflow-wrap: anywhere; }
/* Override the server shell's non-wrapping table defaults for this narrow table. */
.guide-table.compare-pages-table :is(th, td, th a) { white-space: normal !important; overflow-wrap: anywhere !important; }
.family-quickstart-steps { margin: 1.5rem 0; padding-left: 1.25rem; }
.family-quickstart-step { margin: 1.5rem 0; }
.family-quickstart-step h2 { margin-top: 0; }
.family-quickstart-table { min-width: 720px; }
.family-quickstart-index { line-height: 2; }
/* Keep independent actions apart when a table cell or phone card gets narrow. */
.family-quickstart-actions, .hardware-pages-actions { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 12px; }
.family-quickstart-actions > a, .hardware-pages-actions > a { min-height: 44px; display: inline-flex; align-items: center; white-space: normal !important; }
.family-quickstart-table :is(th, td), .hardware-pages-table :is(th, td) { white-space: normal !important; overflow-wrap: anywhere; }
.family-quickstart-starter { margin: 20px 0; padding: 16px; border: 1px solid var(--border); border-radius: 8px; overflow-wrap: anywhere; }
.family-quickstart-steps { padding-left: 1.5rem; }
.family-quickstart-step { padding-inline-start: .375rem; }
.family-quickstart-more > summary { min-height: 44px; padding-block: 10px; }
.model-guide.family-quickstart > nav { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.model-guide.family-quickstart > nav a { min-height: 44px; display: inline-flex; align-items: center; }
.hardware-pages-device-list li { margin-block: 12px; }
.compare-eval-snippets { margin-top: 1.5rem; }
.compare-eval-snippets ul { margin: .5rem 0 1rem; padding-left: 1.25rem; }
@media (max-width: 700px) {
  .family-quickstart-table { display: block !important; min-width: 0; }
  .family-quickstart-table thead { display: none; }
  .family-quickstart-table tbody, .family-quickstart-table tr, .family-quickstart-table td { display: block; min-width: 0; }
  .family-quickstart-table td[data-label]::before { content: attr(data-label) ": "; display: block; font-weight: 700; margin-bottom: 6px; }
  .family-quickstart-table tr + tr { border-top: 2px solid var(--border); }
}
