/* O'Sullivan Motors private vehicle filters — v0.7.0. Scoped to shortcode preview. */
.osm-vehicle-preview .osm-stock-filters { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:end; gap:15px; margin:0 0 18px; padding:20px; border:1px solid #dce7ed; border-radius:16px; background:#fff; box-shadow:0 6px 20px rgba(18,47,64,.06); }
.osm-vehicle-preview .osm-stock-filter-field { display:flex; flex-direction:column; gap:6px; min-width:0; margin:0; }
.osm-vehicle-preview .osm-stock-filter-field label { font-size:13px; font-weight:700; line-height:1.3; color:#1d3e50; margin:0; }
.osm-vehicle-preview .osm-stock-filter-field input,
.osm-vehicle-preview .osm-stock-filter-field select { display:block; box-sizing:border-box; width:100%; min-width:0; height:44px; margin:0; padding:9px 12px; color:#213746; background:#f8fbfd; border:1px solid #ccdce5; border-radius:8px; font:inherit; font-size:14px; box-shadow:none; }
.osm-vehicle-preview .osm-stock-filter-field input:focus,
.osm-vehicle-preview .osm-stock-filter-field select:focus { outline:2px solid #159fda; outline-offset:1px; }
.osm-vehicle-preview .osm-stock-filter-search { grid-column:span 2; }
.osm-vehicle-preview .osm-stock-filter-clear { display:flex; align-items:stretch; margin:0; }
.osm-vehicle-preview .osm-stock-reset { min-height:44px; width:100%; cursor:pointer; border:1px solid #159fda; background:#f0faff; color:#0b75a4; padding:8px 14px; border-radius:8px; font-size:14px; font-weight:700; line-height:1.3; }
.osm-vehicle-preview .osm-stock-reset:hover { background:#e3f4fd; }
.osm-vehicle-preview .osm-stock-reset:focus-visible,
.osm-vehicle-preview .osm-stock-pages button:focus-visible { outline:3px solid #096a99; outline-offset:2px; }
.osm-vehicle-preview .osm-stock-results-bar { display:flex; justify-content:space-between; align-items:center; margin:0 0 16px; }
.osm-vehicle-preview .osm-stock-count { font-size:14px; font-weight:700; color:#415b6a; margin:0; }
.osm-vehicle-preview .osm-stock-empty { padding:24px; text-align:center; color:#425b6a; font-size:15px; background:#f5f9fb; border:1px solid #e3edf1; border-radius:12px; }
.osm-vehicle-preview .osm-stock-empty .osm-stock-reset { width:auto; margin:8px auto; }
.osm-vehicle-preview .osm-stock-pages { display:flex; gap:14px; justify-content:center; align-items:center; margin:24px 0 8px; }
.osm-vehicle-preview .osm-stock-pages button { cursor:pointer; min-height:42px; border:1px solid #c8dee9; border-radius:8px; color:#087fae; background:#fff; padding:8px 14px; font-weight:700; font-size:14px; }
.osm-vehicle-preview .osm-stock-pages button:hover:not(:disabled) { background:#edf9ff; }
.osm-vehicle-preview .osm-stock-pages button:disabled { opacity:.38; cursor:not-allowed; }
.osm-vehicle-preview .osm-stock-page-count { font-size:13px; color:#516979; }
.osm-vehicle-preview [hidden] { display:none !important; }
@media (max-width:1024px) { .osm-vehicle-preview .osm-stock-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) { .osm-vehicle-preview .osm-stock-filters { grid-template-columns:minmax(0,1fr); padding:14px; gap:12px; } .osm-vehicle-preview .osm-stock-filter-search { grid-column:span 1; } .osm-vehicle-preview .osm-stock-pages { gap:6px; flex-wrap:wrap; } }
