
/* V6 STABLE STYLES - HOME & GLOBAL */
:root {
    --primary: #0073e6;
    --text: #1a1a1a;
    --bg: #f8fafc;
    --border: #e2e8f0;
    --white: #ffffff;
    --shadow: 0 4px 12px rgba(0,0,0,0.06);
}

body { background: var(--bg); color: var(--text); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; margin: 0; }
.v5-container { max-width: 1240px; margin: 0 auto; padding: 0 20px; }

/* Header */
.site-header { background: var(--white); border-bottom: 1px solid var(--border); padding: 12px 0; position: sticky; top: 0; z-index: 1000; }
.header-main { display: flex; align-items: center; justify-content: space-between; gap: 20px; max-width: 1240px; margin: 0 auto; padding: 0 20px; }
.site-logo { font-size: 26px; font-weight: 800; text-decoration: none; color: #000; }
.site-logo span { color: var(--primary); }
.header-search-form { flex: 1; max-width: 480px; display: flex; background: #f1f3f5; border-radius: 24px; overflow: hidden; }
.header-search-form input { border: none; background: transparent; padding: 10px 20px; flex: 1; outline: none; }
.header-search-form button { background: var(--primary); color: #fff; border: none; padding: 0 24px; cursor: pointer; }
.header-navigation { display: flex; align-items: center; gap: 20px; }
.header-navigation a { text-decoration: none; color: #4b5563; font-weight: 600; font-size: 14px; }
.btn-post-ad { background: var(--primary); color: #fff !important; padding: 10px 20px; border-radius: 8px; font-weight: bold; }

/* Hero */
.v5-hero { background: var(--white); padding: 80px 0; text-align: center; border-bottom: 1px solid var(--border); }
.v5-hero h1 { font-size: 42px; font-weight: 800; margin-bottom: 10px; color: #0f172a; }
.v5-hero p { color: #64748b; font-size: 18px; margin-bottom: 30px; }
.v5-hero-search { max-width: 600px; margin: 0 auto; display: flex; box-shadow: 0 10px 25px rgba(0,0,0,0.05); border-radius: 30px; overflow: hidden; }
.v5-hero-search input { flex: 1; padding: 18px 25px; border: 1px solid var(--border); outline: none; font-size: 16px; border-radius: 30px 0 0 30px; }
.v5-hero-search button { background: var(--primary); color: #fff; border: none; padding: 0 40px; font-weight: 700; cursor: pointer; }

/* Categories */
.v5-categories { padding: 60px 0; }
.v5-section-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; }
.v5-section-header h2 { font-size: 24px; font-weight: 800; }
.v5-cat-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 20px; }
.v5-cat-card { background: var(--white); padding: 30px 20px; border-radius: 16px; text-align: center; text-decoration: none; color: inherit; border: 1px solid var(--border); transition: 0.2s; }
.v5-cat-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); border-color: var(--primary); }
.v5-cat-icon { font-size: 32px; margin-bottom: 10px; }
.v5-cat-card span { font-weight: 700; font-size: 14px; }

/* Ads Grid */
.v5-latest-ads { padding-bottom: 80px; }
.ad-grid-v5 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.ad-card-v5 { background: var(--white); border-radius: 12px; border: 1px solid var(--border); overflow: hidden; transition: 0.2s; }
.ad-card-v5:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.05); }
.ad-card-v5 a { text-decoration: none; color: inherit; }
.card-image { position: relative; height: 180px; background: #eee; }
.card-image img { width: 100%; height: 100%; object-fit: cover; }
.badge-type { position: absolute; top: 12px; left: 12px; background: rgba(0,0,0,0.7); color: #fff; font-size: 10px; padding: 4px 10px; border-radius: 4px; font-weight: 600; }
.card-details { padding: 16px; }
.card-details h3 { font-size: 15px; margin: 0 0 8px; font-weight: 700; line-height: 1.4; }
.price { font-size: 18px; font-weight: 800; color: var(--primary); }
.meta { font-size: 12px; color: #64748b; margin-top: 10px; }

/* Layout fixes for subpages */
.archive-layout, .single-ad-layout, .dashboard-v5 { display: grid; margin-top: 40px; gap: 40px; }
.archive-layout { grid-template-columns: 250px 1fr; }
.single-ad-layout { grid-template-columns: 1fr 340px; }
.dashboard-v5 { grid-template-columns: 280px 1fr; }

/* Create ad form */
.omv-create-page { padding: 36px 20px 80px; }
.omv-create-shell { max-width: 1100px; margin: 0 auto; }
.omv-create-intro { margin-bottom: 24px; }
.omv-create-intro .eyebrow { display: inline-block; margin-bottom: 10px; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--primary); }
.omv-create-intro h1 { margin: 0 0 10px; font-size: 42px; line-height: 1.1; }
.omv-create-intro p { margin: 0; color: #64748b; font-size: 16px; max-width: 760px; }
.omv-create-form { display: grid; gap: 22px; }
.omv-form-step { display: grid; grid-template-columns: 56px 1fr; gap: 18px; background: var(--white); border: 1px solid var(--border); border-radius: 22px; box-shadow: var(--shadow); padding: 24px; }
.omv-form-step .step-badge { width: 56px; height: 56px; border-radius: 50%; background: #eaf3ff; color: var(--primary); display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: 800; }
.omv-form-step h2 { margin: 0 0 6px; font-size: 24px; }
.omv-form-step p { margin: 0 0 18px; color: #64748b; }
.field-grid { display: grid; gap: 18px; }
.field-grid.two-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.field-grid.three-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.field-card { background: #f8fafc; border: 1px solid var(--border); border-radius: 16px; padding: 16px; }
.wide-card { grid-column: span 1; }
.field-v5 label { display: block; font-weight: 700; margin-bottom: 8px; color: #0f172a; }
.field-v5 input[type="text"],
.field-v5 input[type="number"],
.field-v5 input[type="datetime-local"],
.field-v5 input[type="file"],
.field-v5 textarea,
.field-v5 select {
    width: 100%;
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    background: #fff;
    padding: 12px 14px;
    font-size: 15px;
    box-sizing: border-box;
}
.field-v5 textarea { min-height: 180px; resize: vertical; }
.field-v5 small { display: block; margin-top: 8px; color: #64748b; }
.field-header-inline { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 14px; }
.field-header-inline h3 { margin: 0; font-size: 20px; }
.omv-pill { display: inline-flex; align-items: center; justify-content: center; padding: 6px 10px; background: #eaf3ff; color: var(--primary); border-radius: 999px; font-size: 12px; font-weight: 700; white-space: nowrap; }
.action-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.omv-check-card { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border: 1px solid var(--border); border-radius: 14px; background: #fff; cursor: pointer; }
.omv-check-card input { width: auto; }
.omv-inline-check { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; margin-top: 10px; }
.auction-panel { border-color: #bfdbfe; background: #f8fbff; }
.omv-submit-row { display: flex; justify-content: flex-end; }
.btn-block { min-width: 260px; }

@media (max-width: 900px) {
    .field-grid.two-cols,
    .field-grid.three-cols,
    .action-grid,
    .single-ad-layout,
    .archive-layout,
    .dashboard-v5 { grid-template-columns: 1fr; }

    .omv-form-step { grid-template-columns: 1fr; }
    .omv-form-step .step-badge { width: 44px; height: 44px; font-size: 18px; }
    .field-header-inline { flex-direction: column; }
    .omv-submit-row { justify-content: stretch; }
    .btn-block { width: 100%; }
}

/* Layout shell */
.main-wrapper { padding: 32px 0 80px; }
.header-container { max-width: 1240px; margin: 0 auto; }
.header-user-actions { display: flex; align-items: center; gap: 16px; }
.site-footer { margin-top: 60px; padding: 28px 20px; background: #fff; border-top: 1px solid var(--border); }
.site-info { max-width: 1240px; margin: 0 auto; color: #64748b; font-size: 14px; }

/* Generic page UI */
.omv-page-wrap { padding-top: 24px; }
.omv-page-main { max-width: 920px; margin: 0 auto; }
.omv-page-card { background: #fff; border: 1px solid var(--border); border-radius: 24px; box-shadow: var(--shadow); padding: 34px; }
.omv-page-hero { margin-bottom: 28px; }
.omv-page-hero h1 { margin: 0 0 10px; font-size: 40px; line-height: 1.08; color: #0f172a; }
.omv-page-hero p { margin: 0; color: #64748b; max-width: 760px; }
.omv-page-thumb { margin-bottom: 24px; }
.omv-page-thumb img { width: 100%; height: auto; display: block; border-radius: 20px; }
.prose-content { color: #334155; line-height: 1.8; }
.prose-content > *:first-child { margin-top: 0; }
.prose-content > *:last-child { margin-bottom: 0; }
.omv-generic-list { display: grid; gap: 16px; }
.omv-generic-list-item { padding: 18px 20px; border: 1px solid var(--border); border-radius: 16px; background: #f8fafc; }
.omv-generic-list-item h2 { margin: 0 0 8px; font-size: 22px; }
.omv-generic-list-item a { text-decoration: none; color: #0f172a; }
.omv-empty-state { background: #fff; border: 1px dashed #cbd5e1; border-radius: 18px; padding: 28px; color: #64748b; }
.eyebrow { display: inline-block; margin-bottom: 10px; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--primary); }

/* Archive/category */
.omv-archive-layout { align-items: start; }
.omv-side-column { position: sticky; top: 92px; align-self: start; }
.sidebar-filters { display: grid; gap: 18px; }
.filter-box { background: #fff; border: 1px solid var(--border); border-radius: 20px; box-shadow: var(--shadow); padding: 20px; }
.filter-box h3 { margin: 0 0 16px; font-size: 18px; }
.omv-plain-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; color: #475569; }
.omv-category-tree .omv-category-tree-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.omv-category-tree .omv-category-tree-list li a { display: block; padding: 10px 12px; border-radius: 12px; text-decoration: none; color: #334155; background: #f8fafc; border: 1px solid transparent; }
.omv-category-tree .omv-category-tree-list li a:hover { border-color: #bfdbfe; background: #eff6ff; }
.omv-category-tree .omv-category-tree-list li.is-current a { background: #eaf3ff; color: var(--primary); border-color: #bfdbfe; font-weight: 700; }
.omv-category-tree .depth-1 a { padding-left: 24px; }
.omv-category-tree .depth-2 a { padding-left: 36px; }
.omv-results-head { margin-bottom: 16px; color: #475569; }
.omv-tax-hero { background: #fff; border: 1px solid var(--border); border-radius: 24px; box-shadow: var(--shadow); padding: 28px; }

/* Profile */
.omv-profile-layout { align-items: start; }
.omv-profile-sidebar { position: sticky; top: 92px; align-self: start; }
.user-profile-box-large { text-align: center; }
.user-profile-box-large .avatar { border-radius: 50%; }
.omv-profile-main .dash-header-v5 { margin-bottom: 22px; }

/* Single ad */
.omv-single-page { padding-top: 24px; }
.omv-single-layout { align-items: start; }
.omv-single-main { min-width: 0; }
.omv-breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; color: #64748b; font-size: 14px; margin-bottom: 18px; }
.omv-breadcrumbs a { color: #64748b; text-decoration: none; }
.omv-single-hero { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; background: #fff; border: 1px solid var(--border); border-radius: 24px; box-shadow: var(--shadow); padding: 28px; margin-bottom: 22px; }
.omv-single-heading h1 { margin: 8px 0 12px; font-size: 42px; line-height: 1.08; }
.omv-tag-row { display: flex; flex-wrap: wrap; gap: 8px; }
.omv-tag { display: inline-flex; align-items: center; padding: 7px 12px; border-radius: 999px; background: #dbeafe; color: #1d4ed8; font-size: 13px; font-weight: 700; }
.omv-tag-light { background: #f1f5f9; color: #475569; }
.omv-meta-row { display: flex; flex-wrap: wrap; gap: 14px; color: #64748b; font-size: 14px; }
.omv-price-card { min-width: 220px; border-radius: 20px; background: #f8fbff; border: 1px solid #bfdbfe; padding: 20px; }
.omv-price-card .price-label { color: #64748b; margin-bottom: 8px; }
.omv-price-card .price-value { font-size: 34px; font-weight: 800; color: var(--primary); }
.omv-content-shell { display: grid; gap: 22px; }
.omv-media-card { background: #fff; border: 1px solid var(--border); border-radius: 24px; overflow: hidden; box-shadow: var(--shadow); }
.omv-media-card img { display: block; width: 100%; height: auto; }
.omv-image-placeholder { min-height: 420px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg,#eff6ff,#f8fafc); color: #64748b; font-weight: 700; }
.omv-single-section { background: #fff; border: 1px solid var(--border); border-radius: 24px; box-shadow: var(--shadow); padding: 26px; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 16px; }
.section-head h2 { margin: 0; font-size: 24px; }
.omv-facts-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.omv-fact-card { background: #f8fafc; border: 1px solid var(--border); border-radius: 18px; padding: 16px; }
.fact-label { display: block; margin-bottom: 8px; color: #64748b; font-size: 13px; text-transform: uppercase; letter-spacing: .04em; }
.omv-single-sidebar { display: grid; gap: 18px; }
.omv-sticky-box { position: sticky; top: 92px; }
.ad-price-box, .seller-card { background: #fff; border: 1px solid var(--border); border-radius: 22px; box-shadow: var(--shadow); padding: 22px; }
.ad-price-box .price-value { font-size: 34px; font-weight: 800; color: var(--primary); margin-bottom: 14px; }
.loc-value { color: #475569; margin-bottom: 10px; }
.omv-sidebar-actions { display: grid; gap: 10px; margin-top: 18px; }
.btn-v5 { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; border-radius: 14px; padding: 0 18px; border: 1px solid transparent; cursor: pointer; text-decoration: none; font-weight: 700; }
.btn-primary { background: var(--primary); color: #fff; }
.btn-secondary { background: #eff6ff; color: var(--primary); border-color: #bfdbfe; }
.auction-notice { display: grid; gap: 6px; padding: 14px; border-radius: 14px; background: #f8fafc; border: 1px solid var(--border); color: #334155; font-size: 14px; }
.seller-head { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }
.seller-profile-link { display: inline-flex; text-decoration: none; color: var(--primary); font-weight: 700; }
.omv-single-catbox .omv-category-tree { margin: 0; }

/* Dashboard row polish */
.dash-sidebar, .dash-main-v5 { background: #fff; border: 1px solid var(--border); border-radius: 24px; box-shadow: var(--shadow); padding: 24px; }
.dash-nav-v5 { display: grid; gap: 12px; }
.dash-nav-v5 a { display: block; padding: 12px 14px; border-radius: 12px; background: #f8fafc; text-decoration: none; color: #334155; }
.dash-nav-v5 a.active { background: #eaf3ff; color: var(--primary); font-weight: 700; }
.ad-row-v5 { display: grid; grid-template-columns: 84px 1fr 120px 160px; gap: 16px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--border); }
.ad-row-v5:last-child { border-bottom: 0; }
.row-img img { width: 84px; height: 64px; object-fit: cover; border-radius: 12px; }
.row-actions { display: flex; gap: 14px; }
.row-actions a { color: var(--primary); text-decoration: none; }

/* Form helper validation */
#postal-help.is-valid { color: #15803d; }
#postal-help.is-invalid { color: #b91c1c; }

@media (max-width: 1100px) {
    .omv-single-hero { flex-direction: column; }
}

@media (max-width: 900px) {
    .main-wrapper { padding-top: 20px; }
    .header-main { flex-wrap: wrap; }
    .header-search-form { max-width: none; width: 100%; order: 3; }
    .omv-facts-grid,
    .ad-row-v5 { grid-template-columns: 1fr; }
    .omv-page-card,
    .omv-tax-hero,
    .omv-single-hero,
    .omv-single-section,
    .ad-price-box,
    .seller-card,
    .filter-box,
    .dash-sidebar,
    .dash-main-v5 { padding: 22px; border-radius: 20px; }
    .omv-side-column,
    .omv-profile-sidebar,
    .omv-sticky-box { position: static; }
}


/* Create ad v1.4.2 refinements */
.field-grid.one-col { grid-template-columns: 1fr; }
.category-level-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.omv-upload-grid .field-card { min-height: 132px; }
.price-card-single { max-width: 520px; }
.field-header-stack-mobile label { margin-bottom: 4px; }
.omv-submit-row { align-items: center; gap: 18px; flex-wrap: wrap; }
.omv-terms-check { padding: 14px 16px; border: 1px solid var(--border); border-radius: 16px; background: #fff; }
input[list]::-webkit-calendar-picker-indicator { opacity: 0; }
.omv-category-level { margin-top: 2px; }

@media (max-width: 900px) {
    .category-level-grid { grid-template-columns: 1fr; }
    .omv-submit-row { justify-content: stretch; }
}


/* v1.5 preview + image flow */
.omv-image-uploader { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; }
.omv-image-slot { border: 1px dashed #cbd5e1; background: #fff; border-radius: 16px; padding: 14px; display: grid; gap: 10px; }
.omv-image-slot.is-primary { background: #f8fbff; border-color: #bfdbfe; }
.omv-image-slot-head { display: flex; justify-content: space-between; gap: 8px; font-size: 13px; color: #64748b; }
.omv-image-slot-head strong { color: #0f172a; font-size: 15px; }
.omv-image-preview { min-height: 92px; display: flex; align-items: center; justify-content: flex-start; }
.omv-image-preview img { width: 96px; height: 96px; object-fit: cover; border-radius: 12px; border: 1px solid var(--border); }
.omv-submit-actions { display: flex; gap: 12px; margin-left: auto; }
.omv-preview-bar { position: sticky; top: 73px; z-index: 1001; background: rgba(15,23,42,.92); color: #fff; backdrop-filter: blur(10px); }
.omv-preview-bar-inner { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 14px 20px; }
.omv-preview-bar-inner span { display: block; font-size: 13px; color: rgba(255,255,255,.8); }
.omv-preview-actions { display: flex; align-items: center; gap: 12px; }
.omv-preview-actions form { margin: 0; }
.omv-preview-active .site-header a:not(.omv-preview-action), .omv-preview-active .site-header button:not(.omv-preview-action), .omv-preview-active .site-footer a:not(.omv-preview-action), .omv-preview-active .omv-single-page a:not(.omv-preview-action), .omv-preview-active .omv-single-page button:not(.omv-preview-action) { pointer-events: none; }
.omv-preview-gallery { display: grid; gap: 12px; }
.omv-preview-gallery img { width: 100%; height: auto; display: block; }
.omv-tax-breadcrumbs { margin-bottom: 20px; }
.omv-tax-parentline a { color: var(--primary); text-decoration: none; }
.omv-tree-group { display: grid; gap: 10px; margin-bottom: 16px; }
.omv-tree-label { font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #64748b; }
.omv-tree-parent-link { display: block; padding: 12px 14px; background: #eff6ff; border: 1px solid #bfdbfe; border-radius: 14px; color: var(--primary); text-decoration: none; font-weight: 700; }
.omv-current-level li a, .omv-child-level li a { display: flex !important; justify-content: space-between; align-items: center; }
@media (max-width: 900px) { .omv-image-uploader { grid-template-columns: 1fr; } .omv-preview-bar-inner, .omv-submit-actions { flex-direction: column; align-items: stretch; } }

/* v1.5.1 taxonomy filters + extra descriptions */
.omv-filter-box { display: grid; gap: 14px; }
.omv-tax-filter-form { display: grid; gap: 14px; }
.omv-filter-group { display: grid; gap: 8px; }
.omv-filter-group label { font-weight: 700; color: #0f172a; }
.omv-filter-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.omv-tax-intro p:last-child, .omv-collapsible-copy p:last-child, .omv-bottom-copy p:last-child { margin-bottom: 0; }
.omv-more-copy-wrap { margin-top: 16px; display: grid; gap: 12px; }
.omv-collapsible-copy { padding: 16px 18px; border: 1px solid var(--border); border-radius: 16px; background: #fff; }
.omv-bottom-copy-box { margin-top: 28px; }


/* v1.5.2 taxonomy refinement */
.omv-inline-filters { margin: 0 0 22px; padding: 18px 20px; }
.omv-tax-filter-form-inline { display: flex; flex-wrap: wrap; align-items: end; gap: 14px; }
.omv-filter-inline-group { min-width: 170px; flex: 1 1 170px; }
.omv-filter-inline-group label { font-size: 13px; margin-bottom: 6px; }
.omv-filter-actions-inline { margin-left: auto; align-self: end; }
.omv-tax-hero { margin-bottom: 18px; }
.omv-results-head { margin: 6px 0 20px; }
.omv-more-copy-wrap { margin-top: 10px; gap: 8px; }
.omv-text-toggle { appearance: none; background: transparent; border: 0; padding: 0; color: #2563eb; font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; display: inline-flex; align-items: center; justify-content: flex-start; min-height: 0; }
.omv-text-toggle:hover { color: #1d4ed8; }
.omv-collapsible-copy { margin-top: 4px; padding: 14px 16px; }
.omv-bottom-copy-box { margin-top: 42px; }
@media (max-width: 900px) {
  .omv-inline-filters { padding: 18px; }
  .omv-tax-filter-form-inline { display: grid; grid-template-columns: 1fr; }
  .omv-filter-inline-group, .omv-filter-actions-inline { min-width: 0; margin-left: 0; }
}

/* v1.6 taxonomy/media refinement */
.omv-mobile-toggle { display:flex; align-items:center; justify-content:space-between; width:100%; background:transparent; border:0; padding:0; font:inherit; color:#0f172a; cursor:pointer; }
.omv-mobile-toggle .omv-toggle-label { font-size:18px; font-weight:800; }
.omv-toggle-arrow { display:inline-flex; align-items:center; justify-content:center; width:20px; transition:transform .2s ease; color:#64748b; }
.omv-section-toggle.is-open .omv-toggle-arrow, .omv-text-toggle.is-open .omv-toggle-arrow { transform:rotate(180deg); }
.omv-toggle-panel[hidden] { display:none !important; }
.omv-category-tree .omv-mobile-toggle { margin-bottom:14px; }
.omv-tree-parent-link,
.omv-category-tree .omv-category-tree-list li a { display:flex; align-items:center; gap:10px; }
.omv-category-tree .omv-category-tree-list li a { justify-content:space-between; }
.omv-category-tree .omv-category-tree-list li a > span:nth-child(2) { flex:1; }
.omv-term-icon--inline { width:22px; height:22px; object-fit:cover; border-radius:6px; flex:0 0 22px; }
.omv-item-arrow { color:#94a3b8; font-weight:700; }
.omv-tax-hero-grid { display:grid; gap:24px; align-items:start; }
.omv-tax-hero-grid.has-featured { grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr); }
.omv-tax-hero-media img { width:100%; height:100%; max-height:320px; object-fit:cover; border-radius:20px; display:block; }
.omv-tax-intro + .omv-more-copy-wrap { margin-top:8px; }
.omv-text-toggle { color:#64748b; font-size:13px; font-weight:700; text-decoration:none; gap:6px; }
.omv-text-toggle:hover { color:#2563eb; }
.omv-inline-filters.omv-filter-box--toggleable { padding:16px 20px; }
.omv-filter-toggle { margin-bottom:12px; }
.omv-tax-filter-form-inline { display:flex; flex-wrap:wrap; align-items:end; gap:14px; }
.omv-filter-inline-group { min-width:160px; flex:1 1 160px; }
.omv-filter-actions-inline { margin-left:auto; }
.omv-category-settings-end { margin-top:26px; }
.ad-grid-v5 { grid-template-columns:repeat(3, minmax(0, 1fr)); }
.card-image { aspect-ratio:1 / 1; height:auto; display:flex; align-items:center; justify-content:center; background:#f8fafc; }
.card-image img { width:100%; height:100%; object-fit:cover; }
.omv-media-card { padding:16px; }
.omv-media-card img { width:100%; aspect-ratio:4 / 3; object-fit:contain; border-radius:18px; background:#f8fafc; }
.omv-image-placeholder { min-height:320px; border-radius:18px; }

@media (max-width: 1100px) {
  .ad-grid-v5 { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .omv-tax-hero-grid.has-featured { grid-template-columns:1fr; }
  .omv-inline-filters.omv-filter-box--toggleable { padding:14px 18px; }
  .omv-filter-toggle { margin-bottom:0; }
  .omv-filter-box--toggleable .omv-toggle-panel { margin-top:14px; }
  .omv-category-tree .omv-toggle-panel { margin-top:12px; }
  .ad-grid-v5 { grid-template-columns:1fr; }
  .ad-card-v5 { max-width:none; }
  .omv-media-card { padding:12px; }
}

/* v1.6.1 category icon/image refinement */
.omv-term-icon--inline { width:18px; height:18px; flex:0 0 18px; border-radius:4px; }
.omv-term-icon--placeholder { display:inline-flex; align-items:center; justify-content:center; background:#eef2ff; color:#64748b; }
.omv-term-icon--placeholder svg { width:12px; height:12px; }
.omv-tax-hero-grid.has-featured { grid-template-columns:minmax(0,1fr) auto; }
.omv-tax-hero-media { display:flex; align-items:flex-start; justify-content:flex-end; }
.omv-tax-hero-media img { width:100%; max-width:88px; max-height:88px; aspect-ratio:1/1; object-fit:cover; border-radius:16px; }
.omv-tax-hero-copy { min-width:0; }
.omv-category-tree .omv-category-tree-list li a,
.omv-tree-parent-link { gap:8px; }
.omv-category-tree .omv-category-tree-list li a > span:nth-child(2) { min-width:0; }
@media (min-width: 901px) {
  .omv-mobile-toggle { display:none; }
  .omv-toggle-panel { display:block !important; }
  .omv-toggle-panel[hidden] { display:block !important; }
}
@media (max-width: 900px) {
  .omv-tax-hero-grid.has-featured { grid-template-columns:1fr; }
  .omv-tax-hero-media { justify-content:flex-start; }
  .omv-tax-hero-media img { max-width:72px; max-height:72px; }
}

/* v1.6.2 sidebar/icon/toggle fixes */
.omv-mobile-toggle,
.omv-mobile-only { display:none !important; }

.omv-tree-item-main {
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  flex:1 1 auto;
}

.omv-category-tree .omv-category-tree-list li a,
.omv-tree-parent-link {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

.omv-category-tree .omv-category-tree-list li a > .omv-tree-item-main > span:last-child,
.omv-tree-parent-link > .omv-tree-item-main > span:last-child {
  min-width:0;
  flex:1 1 auto;
}

.omv-term-icon--inline,
.omv-tree-item-main .omv-term-icon--inline,
.omv-tree-parent-link .omv-term-icon--inline,
.omv-category-tree .omv-category-tree-list li a img.omv-term-icon--inline,
.omv-tree-parent-link img.omv-term-icon--inline {
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  min-height:16px !important;
  max-height:16px !important;
  flex:0 0 16px !important;
  border-radius:4px;
  object-fit:cover;
}

.omv-term-icon--placeholder {
  background:#eef2ff;
  color:#64748b;
}

.omv-term-icon--placeholder svg {
  width:10px;
  height:10px;
}

@media (max-width: 900px) {
  .omv-mobile-toggle,
  .omv-mobile-only { display:flex !important; }
}


/* v1.7.1 sidebar + featured image fixes */
.omv-term-icon-wrap {
  width: 18px;
  min-width: 18px;
  max-width: 18px;
  height: 18px;
  min-height: 18px;
  max-height: 18px;
  flex: 0 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 4px;
}
.omv-term-icon-wrap > img.omv-term-icon--inline,
.omv-term-icon-wrap > .omv-term-icon--placeholder {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  display: block;
  object-fit: cover;
}
.omv-term-icon--placeholder {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}
.omv-term-icon--placeholder svg { width: 12px; height: 12px; }
.omv-tree-item-name { min-width: 0; flex: 1 1 auto; }
.omv-category-tree .omv-category-tree-list li a,
.omv-tree-parent-link {
  padding: 14px 16px;
}
.omv-tax-hero-grid.has-featured {
  grid-template-columns: minmax(0,1fr) 56px;
}
.omv-tax-hero-media {
  justify-content: flex-end;
  align-items: flex-start;
}
.omv-tax-hero-media img,
.omv-tax-featured-image {
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  object-fit: cover;
  border-radius: 10px;
}
.omv-inline-filters .omv-mobile-only,
.omv-category-tree .omv-mobile-only {
  display: none !important;
}
.omv-tax-filter-form-inline {
  display: flex !important;
  flex-wrap: nowrap;
  align-items: end;
  gap: 14px;
}
.omv-filter-inline-group {
  flex: 1 1 0;
  min-width: 0;
}
.omv-filter-actions-inline {
  flex: 0 0 auto;
  margin-left: 0;
  display: flex;
  gap: 10px;
}
@media (max-width: 900px) {
  .omv-tax-hero-grid.has-featured {
    grid-template-columns: 1fr;
  }
  .omv-tax-hero-media {
    justify-content: flex-start;
  }
  .omv-tax-hero-media img,
  .omv-tax-featured-image {
    width: 56px !important;
    min-width: 56px !important;
    max-width: 56px !important;
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
  }
  .omv-inline-filters .omv-mobile-only,
  .omv-category-tree .omv-mobile-only {
    display: flex !important;
  }
  .omv-tax-filter-form-inline {
    flex-wrap: wrap;
  }
  .omv-filter-inline-group {
    flex: 1 1 100%;
  }
}

/* v1.7.4 archive redesign */
.omv-listings-archive {
  padding-top: 24px;
}

.omv-archive-breadcrumbs {
  margin-bottom: 18px;
}

.omv-archive-hero-card {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
  padding: 28px 30px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 24px;
  box-shadow: var(--shadow);
}

.omv-archive-hero-copy h1 {
  margin: 0 0 10px;
  font-size: 42px;
  line-height: 1.05;
  color: #0f172a;
}

.omv-archive-hero-copy p {
  margin: 0;
  max-width: 760px;
  color: #64748b;
  font-size: 16px;
  line-height: 1.7;
}

.omv-archive-hero-stats {
  min-width: 150px;
  padding: 18px 20px;
  border-radius: 20px;
  background: linear-gradient(180deg, #eff6ff 0%, #f8fbff 100%);
  border: 1px solid #bfdbfe;
  text-align: center;
}

.omv-archive-stat-label {
  display: block;
  margin-bottom: 6px;
  color: #64748b;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.omv-archive-hero-stats strong {
  display: block;
  font-size: 34px;
  line-height: 1;
  color: var(--primary);
}

.omv-listings-archive-layout {
  grid-template-columns: 290px minmax(0, 1fr);
  gap: 24px;
  margin-top: 0;
}

.omv-listings-sidebar {
  display: grid;
  gap: 18px;
}

.omv-sidebar-card {
  padding: 22px;
}

.omv-sidebar-card h2 {
  margin: 0 0 14px;
  font-size: 20px;
  color: #0f172a;
}

.omv-archive-catlist .children {
  list-style: none;
  margin: 8px 0 0 0;
  padding-left: 14px;
  border-left: 2px solid #e2e8f0;
}

.omv-archive-category-list,
.omv-archive-category-list .children {
  list-style: none;
}

.omv-archive-category-list {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.omv-archive-category-list li {
  margin: 0;
}

.omv-archive-category-list > li > a,
.omv-archive-category-list .children a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: #334155;
  font-weight: 600;
}

.omv-archive-category-list a:hover {
  color: var(--primary);
}

.omv-archive-category-list .count {
  color: #64748b;
  font-size: 13px;
  font-weight: 600;
}

.omv-archive-filter-form {
  display: grid;
  gap: 14px;
}

.omv-archive-filter-field label {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 700;
  color: #334155;
}

.omv-archive-filter-field input,
.omv-archive-filter-field select {
  width: 100%;
  box-sizing: border-box;
  min-height: 46px;
  padding: 10px 14px;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  background: #fff;
}

.omv-archive-filter-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  padding-top: 4px;
}

.omv-listings-toolbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.omv-listings-toolbar h2 {
  margin: 0 0 6px;
  font-size: 24px;
  color: #0f172a;
}

.omv-listings-toolbar p {
  margin: 0;
  color: #64748b;
}

.omv-archive-grid {
  margin-bottom: 24px;
}

.omv-archive-empty h3 {
  margin-top: 0;
  margin-bottom: 8px;
  color: #0f172a;
}

.omv-listings-archive .navigation.pagination {
  margin-top: 12px;
}

.omv-listings-archive .nav-links {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.omv-listings-archive .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 12px;
  text-decoration: none;
  background: #fff;
  color: #334155;
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
}

.omv-listings-archive .page-numbers.current,
.omv-listings-archive .page-numbers:hover {
  color: #fff;
  background: var(--primary);
  border-color: var(--primary);
}

@media (max-width: 1100px) {
  .omv-listings-archive-layout {
    grid-template-columns: 260px minmax(0, 1fr);
  }

  .omv-archive-hero-card {
    flex-direction: column;
  }
}

@media (max-width: 900px) {
  .omv-listings-archive-layout {
    grid-template-columns: 1fr;
  }

  .omv-archive-hero-card {
    padding: 22px;
    border-radius: 20px;
  }

  .omv-archive-hero-copy h1 {
    font-size: 34px;
  }

  .omv-listings-toolbar {
    flex-direction: column;
    align-items: flex-start;
  }
}
