[data-specifications] [hidden] { display: none !important; }
.spec-navigation { margin: 0 0 24px; min-width: 0; }
.spec-search { max-width: 640px; }
.spec-search label { display: block; margin-bottom: 8px; }
.spec-search-inputs { display: flex; align-items: center; gap: 10px; }
.spec-search-inputs input { flex: 1; }
.spec-search-inputs button { flex: none; min-height: 44px; }
.spec-search-inputs button:disabled { opacity: .6; cursor: default; }
.spec-search p { font-size: 13px; color: var(--muted); margin: 8px 0; }
.spec-section-menu { margin-top: 16px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); }
.spec-section-menu summary { cursor: pointer; padding: 12px 16px; }
.spec-section-menu nav { display: block; max-height: min(12rem, 30vh); overflow-y: auto; overscroll-behavior: contain; padding: 4px 16px 12px; }
.spec-section-menu ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 20px; }
.spec-section-menu a { display: block; padding: 10px 4px; color: var(--accent); overflow-wrap: anywhere; }
[data-spec-group] h2, #vehicle-specifications, #trim-equipment { scroll-margin-top: 24px; }
[data-spec-group] h2:focus { outline: 3px solid var(--accent); outline-offset: 5px; }
[data-spec-group] dt, [data-spec-group] h2 { overflow-wrap: anywhere; min-width: 0; }
[data-spec-group] mark { background: var(--accent); color: #17201b; border-radius: 2px; }
[data-spec-equipment] { margin-top: 28px; }
.spec-no-results { border: 1px solid var(--line); border-radius: 8px; padding: 20px; }
@media (max-width: 760px) {
  .spec-section-menu ul { display: block; }
  .spec-section-menu a { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  [data-specifications], [data-specifications] * { scroll-behavior: auto; animation: none; transition: none; }
}
