.nas-os-history-body { margin-inline: var(--mac-doc-content-inset, 0px); }
.nas-os-history-note { margin: 0 0 24px; color: #60758b; font-size: .8rem; line-height: 1.7; }
.nas-os-controls { display: grid; grid-template-columns: minmax(240px, .4fr) minmax(0, 1fr); gap: 24px; padding: 24px 40px; border-block: 1px solid #cbd6e3; }
.nas-os-controls > div { display: flex; align-items: center; gap: 20px; min-width: 0; }
.nas-os-controls > .nas-os-search-control { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; }
.nas-os-controls button { min-height: 44px; padding: 10px 22px; border: 1px solid #0d243f; background: #0d243f; color: #fff; font: inherit; font-size: .8rem; font-weight: 800; white-space: nowrap; cursor: pointer; }
.nas-os-controls label { flex-shrink: 0; color: #0d243f; font-size: .8rem; font-weight: 800; }
.nas-os-controls :is(input, select) { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; padding: 10px 12px; border: 1px solid #9eb6d0; border-radius: 0; background: white; color: #0d243f; font: inherit; font-size: .85rem; }
.nas-os-list-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; margin: 20px 40px; }
.nas-os-result { margin: 0; color: #60758b; font-size: .78rem; }
.nas-os-sort-control { display: flex; align-items: center; gap: 12px; margin-left: auto; }
.nas-os-sort-control label { color: #0d243f; font-size: .8rem; font-weight: 800; }
.nas-os-sort-control select { min-height: 44px; padding: 10px 32px 10px 12px; border: 0; border-radius: 0; background: transparent; color: #0d243f; font: inherit; font-size: .85rem; }
.nas-os-list { margin: 0; padding: 0; list-style: none; border-top: 2px solid #0d243f; }
.nas-os-row { display: grid; grid-template-columns: minmax(180px, .32fr) minmax(0, 1fr); gap: 36px; padding: 24px 40px; border-bottom: 1px solid #cbd6e3; }
.nas-os-row[hidden], .nas-os-empty[hidden], [data-os-more][hidden] { display: none; }
.nas-os-model h3 { margin: 0 0 8px; color: #0d1b2d; font-size: 1.2rem; letter-spacing: -.025em; }
.nas-os-model p { margin: 0 0 5px; color: #60758b; font-size: .8rem; }
.nas-os-family { color: #60758b; font-size: .72rem; font-weight: 500; }
.nas-os-support { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px 24px; min-width: 0; align-content: start; }
.nas-os-facts { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 0; }
.nas-os-facts > div:not(.nas-os-history-series) { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; }
.nas-os-facts > div:not(.nas-os-history-series) dt { margin: 0; }
.nas-os-facts dt, .nas-history-series-label { margin: 0 0 7px; color: #60758b; font-size: .72rem; font-weight: 700; }
.nas-os-facts dd { margin: 0; color: #0d243f; font-size: .85rem; }
.nas-os-history-series { flex-basis: 100%; }
.nas-os-history-series ul, .nas-history-series-list { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0; padding: 0; list-style: none; }
.nas-os-history-series li, .nas-history-series-list li { color: #075eaf; font-weight: 700; }
.nas-os-facts > div.nas-os-status-badge { gap: 4px; padding: 4px 8px; border: 1px solid currentColor; align-items: center; line-height: 1.4; }
.nas-os-facts .nas-os-status-badge :is(dt, dd) { margin: 0; color: inherit; font-size: .72rem; font-weight: 700; }
.nas-os-facts [data-os-state="supported"] { color: #187044; background: #f1f8f4; }
.nas-os-facts [data-os-state="conditional"] { color: #996000; background: #fff8ec; }
.nas-os-facts [data-os-state="unsupported"] { color: #626d7a; background: #f3f5f7; }
.nas-os-facts > div[data-os-final] { gap: 4px 8px; padding: 4px 8px; border: 1px solid #9eb6d0; background: #edf3fa; align-items: center; line-height: 1.4; }
.nas-os-facts [data-os-final] :is(dt, dd) { color: #0d243f; font-size: .72rem; font-weight: 800; }
.nas-os-evidence { grid-column: 1; margin-top: 0; color: #60758b; font-size: .78rem; line-height: 1.65; }
.nas-os-evidence summary { width: fit-content; padding: 6px 0; color: #146cd4; cursor: pointer; font-weight: 700; }
.nas-os-condition { margin-block: 16px; }
.nas-os-condition p { margin-block: 6px; }
.nas-os-evidence-date { margin: 12px 0 6px; }
.nas-os-sources { display: flex; flex-wrap: wrap; gap: 6px 16px; }
.nas-os-sources a { color: #146cd4; overflow-wrap: anywhere; }
:is(#dsm-history, #os-history) .nas-os-model-link { grid-column: 2; align-self: start; display: inline-flex; align-items: center; justify-content: center; gap: 8px; box-sizing: border-box; min-height: 44px; margin-top: 0; padding: 10px 0; border: 0; background: transparent; color: #0d243f; font-size: .9rem; font-weight: 800; line-height: 1.4; text-decoration: none; white-space: nowrap; transition: background-color .16s ease, border-color .16s ease, color .16s ease; }
:is(#dsm-history, #os-history) .nas-os-model-link > span { display: inline-block; transform: translateX(0); transition: transform .18s ease; }
:is(#dsm-history, #os-history) .nas-os-model-link:focus-visible > span { transform: translateX(4px); }
:is(#dsm-history, #os-history) .nas-os-model-link:focus-visible { background: transparent; color: #146cd4; text-decoration: none; }
.nas-os-controls { scroll-margin-top: 180px; }
.nas-os-more { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 16px; margin-top: 26px; padding-inline: 40px; }
.nas-os-more > button { grid-column: 2; }
:is(#dsm-history, #os-history) .nas-os-back-to-search { grid-column: 3; justify-self: end; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: #0d243f; font-size: .85rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
:is(#dsm-history, #os-history) .nas-os-back-to-search > span { transition: transform .18s ease; }
:is(#dsm-history, #os-history) .nas-os-back-to-search:is(:hover, :focus-visible) { color: #146cd4; text-decoration: none; }
:is(#dsm-history, #os-history) .nas-os-back-to-search:is(:hover, :focus-visible) > span { transform: translateX(4px); }
.nas-os-more button { min-height: 44px; padding: 12px 30px; border: 1px solid #9eb6d0; background: white; color: #0d243f; font: inherit; font-size: .8rem; font-weight: 800; cursor: pointer; }
.nas-os-empty { padding: 30px; color: #60758b; }
[data-nas-os-history] :is(a, button, input, select, summary):focus-visible { outline: 2px solid #146cd4; outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
  :is(#dsm-history, #os-history) .nas-os-model-link:hover > span { transform: translateX(4px); }
  :is(#dsm-history, #os-history) .nas-os-model-link:hover { background: transparent; color: #146cd4; text-decoration: none; }
  .nas-os-controls button:hover { background: #146cd4; border-color: #146cd4; }
  .nas-os-row:hover { background: #eef4fa; }
  .nas-os-more button:hover { background: #eef4fa; color: #146cd4; }
}
@media (max-width: 760px) {
  .nas-os-more { display: flex; flex-wrap: wrap; justify-content: center; padding-inline: 20px; }
  .nas-os-history-body { margin-inline: 0; }
  .nas-os-controls { grid-template-columns: 1fr; padding: 20px 20px; gap: 16px; }
  .nas-os-controls > div { display: grid; gap: 8px; }
  .nas-os-controls > .nas-os-search-control { grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; }
  .nas-os-search-control label { grid-column: 1 / -1; }
  .nas-os-controls :is(input, select) { font-size: 16px; }
  .nas-os-list-toolbar { margin-inline: 20px; }
  .nas-os-sort-control select { font-size: 16px; }
  .nas-os-row { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 22px 20px; }
  .nas-os-facts { gap: 12px 20px; }
  .nas-os-support { gap: 10px 12px; }
  .nas-os-evidence[open] { grid-column: 1 / -1; }
}

@media (prefers-reduced-motion: reduce) {
  :is(#dsm-history, #os-history) .nas-os-back-to-search > span { transition: none; transform: none; }
  :is(#dsm-history, #os-history) .nas-os-model-link { transition: none; }
  :is(#dsm-history, #os-history) .nas-os-model-link > span { transition: none; transform: none; }
}
