/* SpareParts Fitment — front-end styles
   Fitment-first: clear, functional, high-contrast. */

.spf-finder{background:#0f1b2d;color:#fff;border-radius:10px;padding:18px 20px;margin:0 0 20px}
.spf-finder__title{margin:0 0 12px;color:#fff;font-size:1.15rem}
.spf-finder__row{display:flex;flex-wrap:wrap;gap:10px}
.spf-finder__row select,
.spf-finder__row .button{flex:1 1 160px;min-width:140px;padding:10px 12px;border-radius:6px;border:1px solid #2b3d57;background:#fff;color:#111;font-size:.95rem}
.spf-finder__row .button{flex:0 0 auto;background:#ff6a00;border-color:#ff6a00;color:#fff;font-weight:600;cursor:pointer}
.spf-finder__row .button:disabled{opacity:.5;cursor:not-allowed}
.spf-finder__msg{margin-top:10px;font-size:.9rem;min-height:1em}
.spf-finder__msg.is-error{color:#ffb4a2}
.spf-finder__msg.is-ok{color:#9ae6b4}

/* Garage bar */
.spf-garage{display:flex;align-items:center;flex-wrap:wrap;gap:10px;background:#f4f6f9;border:1px solid #e1e6ec;border-radius:8px;padding:10px 14px;margin:0 0 18px}
.spf-garage__icon{font-weight:700;color:#ff6a00}
.spf-garage__heading{color:#0f1b2d}
.spf-garage__list{display:flex;flex-wrap:wrap;gap:8px}
.spf-garage__item{display:inline-flex;align-items:center;background:#fff;border:1px solid #cfd6df;border-radius:20px;padding:2px 4px 2px 10px}
.spf-garage__item.is-active{border-color:#ff6a00;box-shadow:0 0 0 1px #ff6a00 inset}
.spf-garage__select{background:none;border:none;cursor:pointer;font-size:.85rem;color:#0f1b2d;padding:4px}
.spf-garage__remove{background:none;border:none;cursor:pointer;color:#98a2b3;font-size:1.1rem;line-height:1;padding:0 6px}
.spf-garage__remove:hover{color:#e11d48}
.spf-garage__add{margin-left:auto;font-size:.85rem;text-decoration:none;color:#ff6a00;font-weight:600}
.spf-garage__empty{color:#667085;font-size:.85rem}

/* Fitment badge on product page */
.spf-fitment-badge{margin:0 0 16px}
.spf-fit{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:8px;font-size:.98rem}
.spf-fit__icon{font-size:1.2rem}
.spf-fit--yes{background:#e7f7ec;border:1px solid #34c759;color:#106b2b}
.spf-fit--no{background:#fdecec;border:1px solid #ff5a5a;color:#a51111}
.spf-fit--unknown{background:#eef2f7;border:1px solid #cfd6df;color:#334155}
.spf-fit__cta{margin-left:auto;color:#ff6a00;font-weight:600;text-decoration:none;white-space:nowrap}

/* Part meta list */
.spf-part-meta{list-style:none;margin:12px 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 20px}
.spf-part-meta li{font-size:.9rem;color:#334155}
.spf-part-meta li span{color:#667085}

/* Compatibility / numbers tables */
.spf-fit-table,.spf-numbers-table{width:100%;border-collapse:collapse;font-size:.9rem}
.spf-fit-table th,.spf-fit-table td,.spf-numbers-table th,.spf-numbers-table td{border:1px solid #e1e6ec;padding:8px 10px;text-align:left}
.spf-fit-table thead th{background:#0f1b2d;color:#fff}
.spf-num-brand{color:#667085}

/* Catalog + facets */
.spf-catalog__bar{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.spf-catalog__chips{display:flex;flex-wrap:wrap;gap:6px;flex:1 1 auto}
.spf-chip-active{background:#eef2f7;border:1px solid #cfd6df;border-radius:16px;padding:3px 10px;font-size:.82rem;cursor:pointer}
.spf-chip-active .x{margin-left:6px;color:#98a2b3;font-weight:700}
.spf-catalog__body{display:flex;gap:24px;align-items:flex-start}
.spf-facets{flex:0 0 240px;max-width:240px}
.spf-results{flex:1 1 auto;min-width:0}
.spf-facet{border-bottom:1px solid #e1e6ec;padding:12px 0}
.spf-facet__title{margin:0 0 8px;font-size:.95rem;color:#0f1b2d}
.spf-facet__list{list-style:none;margin:0;padding:0;max-height:220px;overflow:auto}
.spf-facet__list li{margin:4px 0}
.spf-facet__list label{display:flex;align-items:center;gap:6px;font-size:.88rem;cursor:pointer}
.spf-facet__count{color:#98a2b3;margin-left:auto;font-size:.8rem}
.spf-price-range{display:flex;gap:6px;align-items:center}
.spf-price-range input{width:70px;padding:6px}
.spf-results__count{font-size:.9rem;color:#667085;margin-bottom:10px}

/* Product grid */
.spf-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px}
.spf-card{border:1px solid #e1e6ec;border-radius:8px;padding:12px;background:#fff;display:flex;flex-direction:column}
.spf-card__link{text-decoration:none;color:inherit;display:block}
.spf-card__thumb img{width:100%;height:auto;border-radius:6px}
.spf-card__title{font-size:.95rem;margin:8px 0 4px;color:#0f1b2d}
.spf-card__sku{display:block;font-size:.78rem;color:#98a2b3;margin-bottom:4px}
.spf-card__price{font-weight:700;color:#0f1b2d}
.spf-chip{display:inline-block;margin-top:6px;font-size:.75rem;padding:2px 8px;border-radius:12px}
.spf-chip--fit{background:#e7f7ec;color:#106b2b}
.spf-chip--nofit{background:#fdecec;color:#a51111}
.spf-empty{padding:30px;text-align:center;color:#667085}

/* Sections */
.spf-related,.spf-fbt{margin-top:30px}
.spf-related h2,.spf-fbt h2{font-size:1.15rem;color:#0f1b2d}

/* Pagination */
.spf-results__pagination{display:flex;gap:6px;justify-content:center;margin-top:20px;flex-wrap:wrap}
.spf-page-btn{border:1px solid #cfd6df;background:#fff;border-radius:6px;padding:6px 12px;cursor:pointer}
.spf-page-btn.is-current{background:#0f1b2d;color:#fff;border-color:#0f1b2d}

.spf-loading{opacity:.5;pointer-events:none}

/* My Account garage */
.spf-account-garage__intro{color:#475569;margin-bottom:16px}
.spf-account-garage__table{width:100%;margin-bottom:24px}
.spf-account-garage__table th,.spf-account-garage__table td{padding:10px;vertical-align:middle}
.spf-account-garage__table tr.is-active{background:#f0f7ff}
.spf-default-badge{color:#106b2b}
.spf-nick-edit,.spf-nick-save{margin-left:6px;font-size:.8rem;cursor:pointer;background:none;border:none;color:#ff6a00;text-decoration:underline;padding:0}
.spf-nick-input{max-width:160px}
.spf-account-garage .spf-finder{margin-top:8px}

/* Mobile drawer */
.spf-catalog__drawer-toggle{display:none}
@media(max-width:782px){
	.spf-catalog__body{flex-direction:column}
	.spf-facets{position:fixed;top:0;left:0;bottom:0;width:82%;max-width:320px;background:#fff;z-index:9999;transform:translateX(-100%);transition:transform .25s;overflow:auto;padding:16px;box-shadow:2px 0 20px rgba(0,0,0,.2)}
	.spf-facets.is-open{transform:translateX(0)}
	.spf-catalog__drawer-toggle{display:inline-block}
	.spf-facets__backdrop{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:9998;display:none}
	.spf-facets__backdrop.is-open{display:block}
}
