.vhd-page { max-width: 960px; margin: 0 auto; padding: 0 16px; line-height: 1.7; color: #253b46; }
.vhd-page [hidden] { display: none !important; }
.vhd-page h1 { font-size: clamp(1.7rem, 4vw, 2.4rem); margin-bottom: 1.2rem; }
.vhd-page h2 { font-size: 1.5rem; margin: 2rem 0 1rem; }
.vhd-page a { color: #006b86; text-decoration: underline; text-underline-offset: .18em; }
.vhd-page a:hover { color: #004758; }
.vhd-page a:focus-visible, .vhd-page button:focus-visible { outline: 3px solid #006b86; outline-offset: 4px; }
.vhd-breadcrumb { font-size: .9rem; margin-bottom: 1.5rem; }
.vhd-filter { margin-top: 2rem; }
.vhd-filter fieldset { border: 0; padding: 0; margin: 0 0 1.75rem; min-width: 0; }
.vhd-filter legend { font-size: 1.2rem; font-weight: 600; float: none; width: auto; margin-bottom: 1rem; }
.vhd-choices { display: grid; gap: .65rem; }
.vhd-choice { display: flex; gap: .85rem; align-items: baseline; padding: .85rem 1rem; margin: 0; border: 1px solid #bccbd1; border-radius: 5px; background: #fff; cursor: pointer; }
.vhd-choice:hover { background: #f2f8fa; border-color: #006b86; }
.vhd-choice:focus-within { outline: 3px solid #006b86; outline-offset: 2px; }
.vhd-choice:has(input:checked) { border-color: #006b86; background: #eaf5f8; }
.vhd-choice input { flex: 0 0 auto; accent-color: #006b86; width: 1.1rem; height: 1.1rem; }
.vhd-choice span { min-width: 0; }
.vhd-step-description { margin: 0 0 .75rem; }
.vhd-reset { border: 1px solid #006b86; border-radius: 4px; padding: .55rem 1rem; background: #fff; color: #006b86; cursor: pointer; }
.vhd-reset:hover { background: #eaf5f8; }
.vhd-status { margin-top: 1rem; }
.vhd-page .vhd-card-list { margin: 1.5rem 0; padding: 0; list-style: none; counter-reset: none; }
.vhd-page .vhd-card-list > li { display: flex; gap: 1.2rem; align-items: center; padding: 1.15rem 0; margin: 0; border-bottom: 1px solid #d9e3e7; }
.vhd-card-list > li::before { content: attr(value); min-width: 2rem; align-self: flex-start; color: #526973; font-weight: 600; font-variant-numeric: tabular-nums; }
.vhd-card-body { flex: 1; min-width: 0; }
.vhd-card-title { font-weight: 600; }
.vhd-card-meta { display: block; font-size: .85rem; color: #526973; }
.vhd-card-reason { margin: .35rem 0; }
.vhd-download { flex-shrink: 0; font-size: .9rem; padding: .35rem 0; }
.vhd-all-link { margin-top: 2rem; }
@media (max-width: 575px) {
    .vhd-page .vhd-card-list > li { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: .4rem .75rem; }
    .vhd-download { grid-column: 2; justify-self: start; }
    .vhd-choice { padding: .75rem; }
}
