/* Module Phụ kiện: hub, trang theo dòng xe, trang sản phẩm, khối trên trang xe. Hero dùng chuẩn .vf-hero (components.css). */
.vf-acc__models { padding-block: var(--block-py) 0; }
.vf-acc__models ul, .vf-acc__others ul { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: 0; padding: 0; list-style: none; }
.vf-acc__models a, .vf-acc__others a { display: inline-flex; gap: var(--space-2); align-items: center; padding: var(--space-2) var(--space-4); border: 1px solid var(--color-border); border-radius: var(--radius-full, 999px); background: var(--color-surface); color: var(--color-text-primary); font-weight: var(--font-bold); text-decoration: none; }
.vf-acc__models a:hover, .vf-acc__models a:focus, .vf-acc__others a:hover, .vf-acc__others a:focus { border-color: var(--color-brand-primary); color: var(--color-brand-primary); }
.vf-acc__models span, .vf-acc__others a span { color: var(--color-text-secondary); font-weight: var(--font-regular, 400); }
.vf-acc__list { padding-block: var(--block-py); }
.vf-acc__group { margin-bottom: var(--space-12); }
.vf-acc__group-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-3); margin-bottom: var(--space-4); }
.vf-acc__group-head h2, .vf-acc__others h2, .vf-acc-single__related h2 { margin: 0; font-size: var(--text-2xl); line-height: var(--leading-snug); }
.vf-acc__group-head a, .vf-acc__car a, .vf-acc-single__all { font-weight: var(--font-bold); text-decoration: none; }
.vf-acc__group-head a:hover, .vf-acc__car a:hover, .vf-acc-single__all:hover, .vf-acc-single__source a:hover { text-decoration: underline; }
.vf-acc__car { margin: 0 0 var(--space-4); }
.vf-acc__note { margin: 0 0 var(--space-4); color: var(--color-text-secondary); }
.vf-acc__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
.vf-acc__disclaimer { max-width: var(--container-narrow); margin: var(--space-6) 0 0; font-size: var(--text-sm); color: var(--color-text-secondary); line-height: var(--leading-relaxed); }
.vf-acc__others { margin-top: var(--space-12); }
.vf-acc__others h2 { margin-bottom: var(--space-4); }
.vf-acc-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: var(--color-surface); }
.vf-acc-card__thumb { position: relative; display: block; aspect-ratio: 1 / 1; background: var(--color-surface); }
.vf-acc-card__thumb img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; }
.vf-acc-card__body { display: flex; flex: 1; flex-direction: column; gap: var(--space-1); padding: var(--space-4); }
.vf-acc-card__title { margin: 0; text-transform: none; font-size: var(--text-base); line-height: var(--leading-snug); }
.vf-acc-card__title a { color: var(--color-text-primary); text-decoration: none; }
.vf-acc-card__title a:hover, .vf-acc-card__title a:focus { color: var(--color-brand-primary); }
.vf-acc-card__price { margin: auto 0 0; padding-top: var(--space-2); color: var(--color-text-secondary); font-size: var(--text-sm); }
.vf-acc-card__price strong { color: var(--color-brand-primary); font-size: var(--text-base); }
.vf-acc-card__origin { margin: 0; font-size: var(--text-sm); color: var(--color-text-secondary); }
.vf-acc-single__body { padding-block: var(--block-py); }
.vf-acc-single__grid { display: grid; gap: var(--space-8); align-items: start; }
.vf-acc-single__figure { margin: 0; border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: var(--color-surface); overflow: hidden; }
.vf-acc-single__figure img { display: block; width: 100%; height: auto; }
.vf-acc-facts { display: grid; gap: var(--space-3); margin: 0 0 var(--space-6); }
.vf-acc-facts__item { padding: var(--space-4) var(--space-5); border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: var(--color-surface); }
.vf-acc-facts__item--price { background: var(--color-brand-light); border-color: transparent; }
.vf-acc-facts dt { margin: 0 0 var(--space-1); font-size: var(--text-sm); color: var(--color-text-secondary); }
.vf-acc-facts dd { margin: 0; font-size: var(--text-lg); font-weight: var(--font-bold); line-height: var(--leading-snug); }
.vf-acc-facts__item--price dd { color: var(--color-brand-primary); font-size: var(--text-2xl); }
.vf-acc-facts a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.vf-acc-single__note, .vf-acc-single__source { max-width: var(--container-narrow); margin: var(--space-4) 0; font-size: var(--text-sm); color: var(--color-text-secondary); line-height: var(--leading-relaxed); }
.vf-acc-single__cta { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-bottom: var(--space-2); }
.vf-acc-single__related { margin-top: var(--space-16); }
.vf-acc-single__related h2 { margin-bottom: var(--space-4); }
.vf-acc-single__all { display: inline-block; margin-top: var(--space-5); }
@media (min-width: 768px) {
	.vf-acc__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.vf-acc-single__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--space-12); }
}
@media (min-width: 1024px) { .vf-acc__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
