:root {
    --sidebar-width: 260px;
    --topbar-height: 72px;
    --admin-border: #e6ebf2;
    --admin-bg: #f5f7fb;
    --admin-main: #1d2939;
    --admin-primary-soft: #eef4ff;
}

body {
    background: #f6f7fb;
    color: #20242c;
    font-family: "Roboto Condensed", Arial, sans-serif;
}

body a,
.sidebar a,
.sidebar-link,
.nav-link,
.dropdown-item {
    text-decoration: none;
}

.classifieds-page {
    font-family: "Roboto Condensed", Arial, sans-serif;
}

.classifieds-page button,
.classifieds-page input,
.classifieds-page select,
.classifieds-page textarea {
    font-family: "Roboto Condensed", Arial, sans-serif;
}

.app-role-admin {
    --sidebar-width: 280px;
    --topbar-height: 72px;
    --admin-bg: #f5f7fb;
    --admin-panel: #fff;
    --admin-border: #e6ebf2;
    --admin-muted: #667085;
    --admin-main: #1d2939;
    --admin-primary-soft: #eef4ff;
    background: var(--admin-bg);
    color: var(--admin-main);
    text-transform: lowercase;
}

.app-shell {
    min-height: 100vh;
}

.sidebar {
    width: var(--sidebar-width);
    min-height: 100vh;
    position: sticky;
    top: 0;
}

.sidebar .nav-link {
    border-radius: .45rem;
    color: rgba(255, 255, 255, .72);
    margin-bottom: .25rem;
}

.sidebar .nav-link:hover,
.sidebar .nav-link.active {
    background: rgba(255, 255, 255, .12);
    color: #fff;
}

.sidebar-user {
    margin-top: auto;
}

.content {
    min-width: 0;
}

.topbar {
    min-height: 64px;
    display: flex;
    align-items: center;
    padding: 0 1.25rem;
    position: sticky;
    top: 0;
    z-index: 10;
}

.app-role-admin .app-shell {
    background: var(--admin-bg);
    display: block !important;
    min-height: 100vh;
}

.app-role-admin .app-sidebar {
    background: #fff !important;
    border-right: 1px solid var(--admin-border);
    color: var(--admin-main);
    display: flex;
    flex-direction: column;
    inset: 0 auto 0 0;
    min-height: 100vh;
    padding: 0;
    position: fixed;
    top: 0;
    transform: translateX(0);
    transition: transform .2s ease, width .2s ease;
    width: var(--sidebar-width);
    z-index: 1040;
}

.app-role-admin .sidebar-brand {
    align-items: center;
    border-bottom: 1px solid var(--admin-border);
    display: flex;
    min-height: var(--topbar-height);
    padding: 1rem 1.25rem;
}

.app-role-admin .sidebar-brand a {
    color: var(--admin-main) !important;
}

.app-role-admin .brand-icon {
    align-items: center;
    background: #0d6efd;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 42px;
    font-weight: 900;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.brand-icon.brand-logo-box {
    background: transparent;
    border: 1px solid var(--admin-border);
    overflow: hidden;
}

.sidebar-app-logo{min-width:0;}.sidebar-app-logo .brand-icon{flex-shrink:0;}
.sidebar-brand .sidebar-top-brand{font-size:1.35rem;font-weight:800;text-transform:none;}.sidebar-brand .sidebar-top-brand .brand-icon{flex-shrink:0;}
.brand-icon.brand-logo-box img {
    height: 100%;
    object-fit: contain;
    padding: 5px;
    width: 100%;
}

.app-role-admin .brand-copy {
    color: var(--admin-main);
    line-height: 1.1;
}

.app-role-admin .sidebar-scroll {
    flex: 1;
    overflow-y: auto;
    padding: 1rem;
}

.app-role-admin .sidebar-section-title {
    color: #98a2b3;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .06em;
    margin: 1rem .75rem .45rem;
    text-transform: uppercase;
}

.app-role-admin .sidebar-link {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: #475467;
    display: flex;
    font-weight: 700;
    gap: .75rem;
    margin-bottom: .18rem;
    min-height: 42px;
    padding: .62rem .75rem;
    text-align: left;
    width: 100%;
    text-decoration: none;
}

.app-role-admin .sidebar-link:hover {
    background: #f2f4f7;
    color: #0d6efd;
}

.app-role-admin .sidebar-link.active {
    background: var(--admin-primary-soft);
    color: #0d6efd;
}

.app-role-admin .sidebar-icon {
    text-align: center;
    width: 1.25rem;
}

.app-role-admin .sidebar-footer {
    border-top: 1px solid var(--admin-border);
    padding: 1rem;
}

.app-role-admin .logout-link {
    color: #dc2626;
}

.app-role-admin .logout-link:hover {
    background: #fff1f2;
    color: #b91c1c;
}

.app-role-admin .content {
    background: var(--admin-bg);
    display: flex;
    flex-direction: column;
    margin-left: var(--sidebar-width);
    min-height: 100vh;
    min-width: 0;
    transition: margin-left .2s ease, width .2s ease;
    width: calc(100% - var(--sidebar-width));
}

.app-role-admin .topbar {
    align-items: center;
    background: rgba(255,255,255,.92) !important;
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--admin-border) !important;
    box-shadow: none;
    display: flex;
    min-height: var(--topbar-height);
    padding: 0;
    position: sticky;
    top: 0;
    z-index: 1020;
}

.app-role-admin .content > .container-fluid {
    flex: 1;
    padding: 1.25rem !important;
}

.company-header-brand {
    align-items: center;
    display: flex;
    gap: 10px;
    min-width: 0;
}

.company-header-title {
    color: #1d2939;
    font-size: 16px;
    font-weight: 900;
}

.icon-btn {
    align-items: center;
    border-radius: 8px;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.company-language-btn {
    align-items: center;
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: 12px;
    color: #344054;
    display: flex;
    font-weight: 900;
    gap: 8px;
    min-height: 42px;
    padding: .45rem .75rem;
}

.company-language-btn:hover {
    background: #f8fbff;
    color: #0d6efd;
}

.company-language-btn .fi,
.company-language-item .fi {
    border-radius: 3px;
    box-shadow: 0 0 0 1px rgba(15,23,42,.08);
}

.company-language-menu {
    border: 0;
    border-radius: 14px;
    box-shadow: 0 18px 42px rgba(15,23,42,.14);
    min-width: 190px;
    padding: 8px;
}

.company-language-item {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 10px;
    color: #344054;
    display: flex;
    font-weight: 900;
    gap: 9px;
    padding: 9px 10px;
    text-align: left;
    width: 100%;
}

.company-language-item:hover,
.company-language-item.active {
    background: #eef4ff;
    color: #0d6efd;
}

.admin-profile-btn {
    align-items: center;
    border: 0;
    display: flex;
    gap: .5rem;
    min-height: 42px;
}

.admin-profile-avatar-only {
    padding: .2rem .35rem;
}

.avatar.avatar-image {
    background: #f8fafc;
    overflow: hidden;
}

.avatar.avatar-image img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.app-role-admin .avatar {
    align-items: center;
    background: #e7f0ff;
    border-radius: 50%;
    color: #0d6efd;
    display: inline-flex;
    font-weight: 900;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.sidebar-backdrop {
    background: rgba(15,23,42,.45);
    display: none;
    inset: 0;
    position: fixed;
    z-index: 1030;
}

.sidebar-backdrop.show {
    display: block;
}

.app-role-admin .sidebar.collapsed {
    width: 76px;
}

.app-role-admin .sidebar.collapsed .brand-copy,
.app-role-admin .sidebar.collapsed .sidebar-link span,
.app-role-admin .sidebar.collapsed .sidebar-section-title,
.app-role-admin .sidebar.collapsed .sidebar-footer span {
    display: none;
}

.app-role-admin .sidebar.collapsed .sidebar-link {
    justify-content: center;
}

.app-role-admin:has(.sidebar.collapsed) .content {
    margin-left: 76px;
    width: calc(100% - 76px);
}

@media (max-width: 991.98px) {
    .app-role-admin .app-sidebar {
        transform: translateX(-100%);
    }

    .app-role-admin .app-sidebar.is-open,
    .app-role-admin .app-sidebar.mobile-open {
        transform: translateX(0);
    }

    .app-role-admin .content,
    .app-role-admin:has(.sidebar.collapsed) .content {
        margin-left: 0;
        width: 100%;
    }

    .app-role-admin .content > .container-fluid {
        padding: 1rem !important;
    }
}

.stat-card strong {
    display: block;
    font-size: 2rem;
    line-height: 1.1;
}

.stat-card span {
    color: #697386;
    text-transform: lowercase;
}

.app-role-user, .app-role-customer {
    --sidebar-width: 280px;
    --topbar-height: 72px;
    --admin-bg: #f5f7fb;
    --admin-border: #e6ebf2;
    --admin-main: #1d2939;
    --admin-primary-soft: #eef4ff;
    background: var(--admin-bg);
    color: var(--admin-main);
    font-size: .92rem;
    text-transform: lowercase;
}

.app-role-user .app-shell,
.app-role-customer .app-shell {
    background: var(--admin-bg);
    display: block !important;
    min-height: 100vh;
}

.app-role-user .app-sidebar,
.app-role-customer .app-sidebar {
    background: #fff !important;
    border-right: 1px solid var(--admin-border);
    box-shadow: none;
    color: var(--admin-main);
    display: flex;
    flex-direction: column;
    inset: 0 auto 0 0;
    min-height: 100vh;
    padding: 0;
    position: fixed;
    top: 0;
    transform: translateX(0);
    transition: transform .2s ease, width .2s ease;
    width: var(--sidebar-width);
    z-index: 1040;
}

.app-role-user .sidebar-brand,
.app-role-customer .sidebar-brand {
    align-items: center;
    border-bottom: 1px solid var(--admin-border);
    display: flex;
    min-height: var(--topbar-height);
    padding: 1rem 1.25rem;
}

.app-role-user .sidebar-brand a,
.app-role-customer .sidebar-brand a {
    align-items: center;
    color: var(--admin-main) !important;
    display: inline-flex;
    gap: .65rem;
    font-size: 1.05rem;
    font-weight: 800 !important;
    text-transform: lowercase;
}

.sidebar-logo-mark {
    align-items: center;
    background: #556ee6;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.app-role-user .brand-icon,
.app-role-customer .brand-icon {
    align-items: center;
    background: #0d6efd;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 42px;
    font-weight: 900;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.app-role-user .brand-icon.brand-logo-box,
.app-role-customer .brand-icon.brand-logo-box {
    background: transparent;
    border: 1px solid var(--admin-border);
}

.app-role-user .brand-copy,
.app-role-customer .brand-copy {
    color: var(--admin-main);
    line-height: 1.1;
}

.app-role-user .sidebar-scroll,
.app-role-customer .sidebar-scroll {
    flex: 1;
    overflow-y: auto;
    padding: 1rem;
}

.app-role-user .sidebar-section-title,
.app-role-customer .sidebar-section-title {
    color: #98a2b3;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .06em;
    margin: 1rem .75rem .45rem;
    text-transform: uppercase;
}

.app-role-user .sidebar .nav,
.app-role-customer .sidebar .nav {
    padding-top: 1rem;
}

.app-role-user .sidebar .nav-link,
.app-role-customer .sidebar .nav-link,
.app-role-user .sidebar-link,
.app-role-customer .sidebar-link,
.app-role-vendor .sidebar-link {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: #475467;
    display: flex;
    font-weight: 700;
    gap: .75rem;
    margin-bottom: .18rem;
    min-height: 42px;
    padding: .62rem .75rem;
    text-align: left;
    text-decoration: none;
    width: 100%;
}

.app-role-user .sidebar .nav-link i,
.app-role-customer .sidebar .nav-link i,
.app-role-user .sidebar-link i,
.app-role-customer .sidebar-link i,
.app-role-vendor .sidebar-link i {
    color: inherit;
    font-size: 1rem;
    text-align: center;
    width: 1.25rem;
}

.app-role-user .sidebar .nav-link:hover,
.app-role-user .sidebar .nav-link.active,
.app-role-customer .sidebar .nav-link:hover,
.app-role-customer .sidebar .nav-link.active,
.app-role-user .sidebar-link:hover,
.app-role-user .sidebar-link.active,
.app-role-customer .sidebar-link:hover,
.app-role-customer .sidebar-link.active,
.app-role-vendor .sidebar-link:hover,
.app-role-vendor .sidebar-link.active {
    background: #f2f4f7;
    color: #0d6efd;
}

.app-role-user .sidebar-link.active,
.app-role-customer .sidebar-link.active {
    background: var(--admin-primary-soft);
    color: #0d6efd;
}

.app-role-user .sidebar .nav-link:hover i,
.app-role-user .sidebar .nav-link.active i,
.app-role-customer .sidebar .nav-link:hover i,
.app-role-customer .sidebar .nav-link.active i,
.app-role-user .sidebar-link:hover i,
.app-role-user .sidebar-link.active i,
.app-role-customer .sidebar-link:hover i,
.app-role-customer .sidebar-link.active i,
.app-role-vendor .sidebar-link:hover i,
.app-role-vendor .sidebar-link.active i {
    color: inherit;
}

.app-role-vendor .sidebar-link {
    color: #545a6d;
    font-weight: inherit;
    margin-bottom: .25rem;
    padding: .62rem .85rem;
}

.app-role-vendor .sidebar-link i {
    color: #74788d;
    text-align: left;
    width: 1.1rem;
}

.app-role-vendor .sidebar-link:hover,
.app-role-vendor .sidebar-link.active {
    background: #f3f5ff;
    color: #556ee6;
}

.app-role-vendor .sidebar-link:hover i,
.app-role-vendor .sidebar-link.active i {
    color: #556ee6;
}

.app-role-user .sidebar-footer,
.app-role-customer .sidebar-footer {
    border-top: 1px solid var(--admin-border);
    padding: 1rem;
}

.app-role-user .logout-link,
.app-role-customer .logout-link {
    color: #dc2626;
}

.app-role-user .logout-link:hover,
.app-role-customer .logout-link:hover {
    background: #fff1f2;
    color: #b91c1c;
}

.app-role-user .content,
.app-role-customer .content {
    background: var(--admin-bg);
    display: flex;
    flex-direction: column;
    margin-left: var(--sidebar-width);
    min-height: 100vh;
    min-width: 0;
    transition: margin-left .2s ease, width .2s ease;
    width: calc(100% - var(--sidebar-width));
}

.app-role-user .topbar,
.app-role-customer .topbar {
    align-items: center;
    background: rgba(255,255,255,.92) !important;
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--admin-border) !important;
    box-shadow: none;
    display: flex;
    min-height: var(--topbar-height);
    padding: 0;
    position: sticky;
    top: 0;
    z-index: 1020;
}

.user-topbar-title {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
    margin-left: .75rem;
}

.user-topbar-title strong {
    color: #1f2937;
    font-size: .98rem;
    font-weight: 800;
    text-transform: lowercase;
}

.user-topbar-title small {
    color: #74788d;
    font-size: .75rem;
}

@media (min-width: 992px) {
    body.app-role-user.sidebar-is-hidden .app-sidebar,
    body.app-role-customer.sidebar-is-hidden .app-sidebar {
        transform: translateX(-100%);
    }

    body.app-role-user.sidebar-is-hidden .content,
    body.app-role-customer.sidebar-is-hidden .content {
        margin-left: 0;
        width: 100%;
    }
}
.app-role-user .content > .container-fluid,
.app-role-customer .content > .container-fluid {
    flex: 1;
    padding: 1.25rem !important;
}

@media (max-width: 991.98px) {
    .app-role-user .app-sidebar,
    .app-role-customer .app-sidebar {
        transform: translateX(-100%);
    }

    .app-role-user .app-sidebar.is-open,
    .app-role-user .app-sidebar.mobile-open,
    .app-role-customer .app-sidebar.is-open,
    .app-role-customer .app-sidebar.mobile-open {
        transform: translateX(0);
    }

    .app-role-user .content,
    .app-role-customer .content {
        margin-left: 0;
        width: 100%;
    }

    .app-role-user .content > .container-fluid,
    .app-role-customer .content > .container-fluid {
        padding: 1rem !important;
    }
}

.user-welcome-card {
    align-items: center;
    background: linear-gradient(135deg, #eef3ff 0%, #ffffff 62%);
    border: 1px solid #e1e8ff;
    border-radius: 8px;
    box-shadow: 0 10px 28px rgba(85, 110, 230, .08);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 1.35rem 1.5rem;
}

.user-welcome-card span {
    color: #556ee6;
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.user-welcome-card h1 {
    color: #1f2937;
    font-size: 1.45rem;
    font-weight: 800;
    margin: .2rem 0;
}

.user-welcome-card p {
    color: #74788d;
    margin: 0;
}

.user-stat-card,
.user-panel {
    background: #fff;
    border: 1px solid #e8edf5;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .04);
}

.user-stat-card {
    align-items: center;
    display: flex;
    justify-content: space-between;
    min-height: 116px;
    padding: 1.15rem;
}

.user-stat-card span {
    color: #74788d;
    display: block;
    font-size: .78rem;
    font-weight: 700;
    text-transform: lowercase;
}

.user-stat-card strong {
    color: #1f2937;
    display: block;
    font-size: 1.65rem;
    line-height: 1.1;
    margin-top: .45rem;
}

.user-stat-card i {
    align-items: center;
    background: #f3f5ff;
    border-radius: 50%;
    display: inline-flex;
    font-size: 1.25rem;
    height: 46px;
    justify-content: center;
    width: 46px;
}

.user-panel {
    overflow: hidden;
}

.user-panel-header {
    align-items: center;
    border-bottom: 1px solid #eef2f7;
    display: flex;
    justify-content: space-between;
    padding: 1rem 1.15rem;
}

.user-panel-header h2 {
    color: #1f2937;
    font-size: .98rem;
    font-weight: 800;
    margin: 0;
    text-transform: lowercase;
}

.user-panel-header a {
    color: #556ee6;
    font-size: .8rem;
    font-weight: 800;
    text-decoration: none;
}

.user-table td {
    border-color: #eef2f7;
    padding: .85rem 1.15rem;
}

.user-vehicle-thumb {
    aspect-ratio: 4 / 3;
    border-radius: 8px;
    height: 52px;
    object-fit: cover;
    width: 68px;
}

.user-notification-list {
    display: grid;
    gap: .75rem;
    padding: 1rem 1.15rem;
}

.user-notification-item {
    border-left: 3px solid #d8deea;
    padding-left: .85rem;
}

.user-notification-item.is-unread {
    border-left-color: #556ee6;
}

.user-notification-item strong {
    color: #1f2937;
    display: block;
    font-size: .9rem;
}

.user-notification-item p {
    color: #74788d;
    font-size: .82rem;
    margin: .15rem 0;
}

.user-notification-item small {
    color: #9aa3b2;
}

.app-role-user .card,
.app-role-customer .card {
    border: 1px solid #e8edf5;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .04);
}

.login-page {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 1rem;
}

.login-panel {
    width: min(100%, 420px);
}

.taxonomy-thumb {
    width: 58px;
    height: 42px;
    display: inline-block;
    border-radius: 6px;
    object-fit: cover;
    background: #edf1f6;
}

.taxonomy-thumb.empty {
    border: 1px dashed #c8d0da;
}

.drag-handle {
    color: #7b8493;
    cursor: grab;
    text-align: center;
}

.sortable-taxonomy tr.ui-sortable-helper {
    display: table;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .15);
}

.listing-map {
    height: 260px;
    border-radius: 8px;
    border: 1px solid #dce3ec;
    overflow: hidden;
}

.listing-gallery-sort {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.listing-gallery-sort .gallery-item {
    width: 96px;
    height: 78px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #dce3ec;
    cursor: grab;
}

.listing-gallery-sort img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 991.98px) {
    .sidebar {
        position: fixed;
        left: calc(var(--sidebar-width) * -1);
        z-index: 30;
        transition: left .2s ease;
    }

    .sidebar.is-open {
        left: 0;
    }
}

.site-home {
    background: #f5f6f8;
    color: #222;
}

.classifieds-page {
    background: #fff;
    color: #202832;
}

.classifieds-header {
    min-height: 72px;
    border-bottom: 1px solid #e6ebf2;
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(12px);
    position: sticky;
    top: 0;
    z-index: 1020;
}

.classifieds-header .container-fluid {
    align-items: center;
    display: flex;
    gap: 1rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    min-height: 72px;
}

.classifieds-brand {
    display: inline-flex;
    align-items: center;
    gap: .65rem;
    color: #1d2939;
    font-size: 1.35rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.classifieds-brand .brand-icon {
    align-items: center;
    background: #0d6efd;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.classifieds-brand .brand-logo-box {
    background: transparent;
    border: 0;
    border-radius: 0;
    height: 54px;
    overflow: visible;
    width: 54px;
}

.classifieds-brand .brand-logo-box img {
    height: 100%;
    object-fit: contain;
    padding: 0;
    width: 100%;
}

.classifieds-top-search {
    display: flex;
    gap: .5rem;
    margin-left: auto;
    width: min(42vw, 460px);
}

.classifieds-top-search .form-control {
    border-radius: 999px;
    min-height: 42px;
}

.classifieds-top-search .btn {
    border-radius: 999px;
    min-height: 42px;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}

.header-add-listing {
    align-items: center;
    background: #198754;
    border: 1px solid #198754;
    border-radius: 12px;
    box-shadow: 0 10px 22px rgba(25, 135, 84, .16);
    color: #fff;
    display: inline-flex;
    flex: 0 0 auto;
    font-weight: 800;
    gap: .45rem;
    min-height: 42px;
    padding: .45rem .8rem;
    text-decoration: none;
    text-transform: lowercase;
    white-space: nowrap;
}

.header-add-listing:hover {
    background: #157347;
    border-color: #157347;
    color: #fff;
}

.header-language-switcher {
    margin-left: .25rem;
}

.header-language-btn {
    align-items: center;
    background: #fff;
    border: 1px solid #e6ebf2;
    border-radius: 12px;
    color: #344054;
    display: flex;
    gap: .5rem;
    min-height: 42px;
    padding: .45rem .75rem;
    text-transform: lowercase;
    font-weight: 800;
}

.header-language-btn .fi,
.header-language-item .fi {
    border-radius: 3px;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, .08);
    flex: 0 0 auto;
}

.header-language-btn:hover {
    background: #f8fbff;
    color: #0d6efd;
}

.header-language-menu {
    border: 0;
    border-radius: 14px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .14);
    min-width: 190px;
    padding: .5rem;
}

.header-language-item {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 10px;
    color: #344054;
    display: flex;
    gap: .65rem;
    padding: .6rem .7rem;
    text-align: left;
    text-transform: lowercase;
    width: 100%;
}

.header-language-item strong {
    font-weight: 800;
}

.header-language-item:hover,
.header-language-item.active {
    background: #eef4ff;
    color: #0d6efd;
}

.account-dropdown {
    margin-left: .25rem;
}

.account-menu-button {
    align-items: center;
    background: #fff;
    border: 1px solid #e6ebf2;
    border-radius: 999px;
    color: #344054;
    display: flex;
    gap: .65rem;
    min-height: 46px;
    padding: .25rem .75rem .25rem .25rem;
}

.account-menu-button:hover {
    background: #f8fbff;
    border-color: #d5e3f7;
}

.avatar {
    align-items: center;
    background: #e7f0ff;
    border-radius: 50%;
    color: #0d6efd;
    display: inline-flex;
    font-weight: 800;
    height: 38px;
    justify-content: center;
    text-transform: uppercase;
    width: 38px;
}

.account-menu-copy {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
    max-width: 160px;
    min-width: 0;
    text-align: left;
}

.account-menu-copy strong,
.account-menu-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.account-menu-copy strong {
    color: #1d2939;
    font-size: .9rem;
    font-weight: 800;
    text-transform: capitalize;
}

.account-menu-copy small {
    color: #667085;
    font-size: .72rem;
}

.account-menu {
    border: 0;
    border-radius: 14px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .14);
    min-width: 260px;
    padding: .5rem;
}

.account-menu .dropdown-item {
    align-items: center;
    border-radius: 10px;
    display: flex;
    gap: .65rem;
    min-height: 40px;
    text-transform: lowercase;
}

.account-menu .dropdown-item:hover {
    background: #eef4ff;
    color: #0d6efd;
}

.classifieds-shell {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    min-height: calc(100vh - 68px);
}

.classifieds-sidebar {
    background:
        linear-gradient(180deg, rgba(248, 251, 255, .98), rgba(255, 255, 255, .96)),
        radial-gradient(circle at 18% 0%, rgba(13, 110, 253, .08), transparent 30%);
    border-right: 1px solid #e6edf7;
    padding: 1.1rem .85rem 2rem;
}

.filter-block {
    background: rgba(255, 255, 255, .86);
    border: 1px solid #e8eef7;
    border-radius: 16px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .055);
    margin-bottom: 1rem;
    padding: .95rem;
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.filter-block.has-active-filter {
    background: linear-gradient(135deg, rgba(240, 253, 244, .9), rgba(255, 255, 255, .92));
    border-color: #bbf7d0;
    box-shadow: 0 14px 32px rgba(22, 163, 74, .08);
}

.filter-block h2 {
    align-items: center;
    color: #152033;
    display: flex;
    gap: .5rem;
    font-size: .9rem;
    font-weight: 900;
    letter-spacing: .01em;
    margin: 0;
}

.filter-block.has-active-filter .filter-block-reset {
    align-items: center;
    background-color: #ffe7e7 !important;
    border: 1px solid #efadad !important;
    border-radius: 50%;
    color: #b42318 !important;
    display: inline-flex;
    font-size: .68rem;
    height: 1.45rem;
    justify-content: center;
    margin-left: auto;
    padding: 0;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
    width: 1.45rem;
}
.filter-block.has-active-filter .filter-block-reset:hover,
.filter-block.has-active-filter .filter-block-reset:focus-visible { background-color:#ffd6d6 !important; border-color:#dd8585 !important; color:#8f1d14 !important; transform:translateY(-1px); }
.filter-block.has-active-filter .filter-block-reset i {
    background: transparent !important;
    border-radius: 0;
    color: inherit !important;
    display: block;
    height: auto;
    width: auto;
}

.filter-block h2 i {
    align-items: center;
    background: #eef4ff;
    border-radius: 10px;
    color: #0d6efd;
    display: inline-flex;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.filter-block hr {
    border-color: #e8eef7;
    margin: .75rem 0 .85rem;
    opacity: 1;
}

.filter-block h3 {
    font-size: 1.1rem;
    margin-bottom: .5rem;
}

.classifieds-sidebar .form-select,
.classifieds-sidebar .form-control {
    background-color: #f8fbff;
    border: 1px solid #dfe8f5;
    border-radius: 13px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
    color: #1f2937;
    font-size: .92rem;
    font-weight: 800;
    min-height: 46px;
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease, transform .18s ease;
}

.classifieds-sidebar .form-select {
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 19px) 50%,
        calc(100% - 13px) 50%;
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    padding-right: 2.4rem;
}

.classifieds-sidebar .form-select:hover,
.classifieds-sidebar .form-control:hover {
    background-color: #fff;
    border-color: #c9d9ee;
}

.classifieds-sidebar .form-select:focus,
.classifieds-sidebar .form-control:focus {
    background-color: #fff;
    border-color: #86b7fe;
    box-shadow: 0 0 0 .22rem rgba(13, 110, 253, .12), 0 12px 26px rgba(13, 110, 253, .08);
}

.classifieds-sidebar .form-select.is-active-filter,
.classifieds-sidebar .form-control.is-active-filter {
    background-color: #f0fdf4;
    border-color: #86efac;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 8px 20px rgba(22, 163, 74, .08);
    color: #14532d;
}

.classifieds-sidebar .form-select.is-active-filter:focus,
.classifieds-sidebar .form-control.is-active-filter:focus {
    border-color: #22c55e;
    box-shadow: 0 0 0 .22rem rgba(34, 197, 94, .14), 0 12px 26px rgba(22, 163, 74, .1);
}

.classifieds-sidebar .form-select:disabled {
    background-color: #eef2f7;
    color: #94a3b8;
}

.classifieds-sidebar .form-select option {
    text-transform: none;
}

.classifieds-sidebar .ad-input-icon {
    position: relative;
}

.classifieds-sidebar .ad-input-icon > i {
    align-items: center;
    background: #eef4ff;
    border-radius: 9px;
    color: #0d6efd;
    display: inline-flex;
    font-size: 16px;
    height: 28px;
    justify-content: center;
    left: 10px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    z-index: 2;
}

.classifieds-sidebar .ad-input-icon.is-active-filter > i {
    background: #dcfce7;
    color: #16a34a;
}

.classifieds-sidebar .ad-input-icon .form-select {
    padding-left: 48px;
}

.classifieds-sidebar .ad-input-icon:has(.home-brand-logo-preview) .form-select {
    padding-left: 78px;
}

.classifieds-sidebar .home-native-logo-select {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    inset: 0;
    z-index: -1;
}

.classifieds-sidebar .ad-select-icon .form-select {
    padding-right: 42px;
}

.home-native-location-select {
    display: none !important;
}

.home-location-select {
    position: relative;
    width: 100%;
}

#home_region_select + .home-location-select {
    margin-bottom: .5rem;
}

.home-location-select-btn {
    align-items: center;
    background: #f8fbff;
    border: 1px solid #dfe8f5;
    border-radius: 10px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
    color: #1f2937;
    display: flex;
    gap: .55rem;
    font-weight: 800;
    min-height: 46px;
    padding: .5rem .75rem;
    text-align: left;
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
    width: 100%;
}

.home-location-select-btn:hover {
    background: #fff;
    border-color: #c9d9ee;
}

.home-location-select-btn:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .22rem rgba(13, 110, 253, .12), 0 12px 26px rgba(13, 110, 253, .08);
    outline: 0;
}

.home-location-select.is-active-filter .home-location-select-btn {
    background: #f0fdf4;
    border-color: #86efac;
    color: #14532d;
}

.home-location-select.is-disabled .home-location-select-btn {
    background: #e9ecef;
    cursor: not-allowed;
}

.home-location-select-menu {
    background: #fff;
    border: 1px solid #d6e6ff;
    border-radius: 10px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
    display: none;
    margin-top: 6px;
    max-height: 300px;
    overflow-y: auto;
    padding: 6px;
    position: relative;
}

.home-location-select.open .home-location-select-menu {
    display: block;
}

.home-location-option {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: #344054;
    display: flex;
    font-size: .92rem;
    font-weight: 800;
    gap: .55rem;
    padding: .55rem .6rem;
    text-align: left;
    width: 100%;
}

.home-location-option:hover,
.home-location-option.is-selected {
    background: #eef4ff;
    color: #0d6efd;
}

.home-location-option-text,
.home-location-select-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-location-count-badge {
    align-items: center;
    background: #dcfce7;
    border: 1px solid #86efac;
    border-radius: 999px;
    color: #15803d;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 900;
    justify-content: center;
    line-height: 1;
    margin-left: auto;
    min-width: 26px;
    padding: .24rem .42rem;
}

.home-location-count-badge.is-zero {
    background: #fff1f2;
    border-color: #fecdd3;
    color: #be123c;
}
.home-location-select-btn > .bi:first-child {
    color: #198754;
    font-size: 1rem;
}
.home-logo-select {
    position: relative;
    width: 100%;
}

.home-logo-select-btn {
    align-items: center;
    background: #f8fbff;
    border: 1px solid #dfe8f5;
    border-radius: 13px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
    color: #1f2937;
    display: flex;
    gap: .55rem;
    font-weight: 800;
    min-height: 46px;
    padding: .5rem 2.25rem .5rem 3rem;
    text-align: left;
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
    width: 100%;
}

.home-model-count-select .home-logo-select-btn {
    padding-left: .75rem;
}

.home-model-count-select .home-logo-option {
    gap: .5rem;
}
.home-logo-select-btn:hover {
    background: #fff;
    border-color: #c9d9ee;
}

.home-logo-select-btn:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 .22rem rgba(13, 110, 253, .12), 0 12px 26px rgba(13, 110, 253, .08);
    outline: 0;
}

.home-logo-select.is-active-filter .home-logo-select-btn {
    background: #f0fdf4;
    border-color: #86efac;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 8px 20px rgba(22, 163, 74, .08);
    color: #14532d;
}

.home-logo-select.is-active-filter .home-brand-logo-mark {
    background: #dcfce7;
    border-color: #86efac;
    color: #16a34a;
}

.home-logo-select.is-disabled .home-logo-select-btn {
    background: #e9ecef;
    opacity: 1;
}

.home-logo-select-menu {
    background: #fff;
    border: 1px solid #d6e6ff;
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
    display: none;
    left: 0;
    max-height: 300px;
    overflow-y: auto;
    padding: 6px;
    position: absolute;
    right: 0;
    top: calc(100% + 6px);
    z-index: 50;
}

.home-logo-select.open .home-logo-select-menu {
    display: block;
}

.home-logo-option {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 9px;
    color: #344054;
    display: flex;
    gap: .55rem;
    font-size: .92rem;
    font-weight: 800;
    padding: .55rem .6rem;
    text-align: left;
    width: 100%;
}

.home-logo-option:hover,
.home-logo-option.is-selected {
    background: #eef4ff;
    color: #0d6efd;
}

.home-logo-select-text {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-brand-logo-mark {
    align-items: center;
    background: linear-gradient(135deg, #eef4ff, #ffffff);
    border: 1px solid #d6e6ff;
    border-radius: 8px;
    color: #0d6efd;
    display: inline-flex;
    flex: 0 0 26px;
    font-size: 10px;
    font-weight: 950;
    height: 26px;
    justify-content: center;
    letter-spacing: .02em;
    width: 26px;
}

.home-brand-logo-mark img {
    display: block;
    max-height: 18px;
    max-width: 18px;
    object-fit: contain;
}

.home-brand-logo-preview {
    align-items: center;
    background: linear-gradient(135deg, #eef4ff, #ffffff);
    border: 1px solid #d6e6ff;
    border-radius: 8px;
    color: #0d6efd;
    display: inline-flex;
    font-size: 10px;
    font-weight: 950;
    height: 26px;
    justify-content: center;
    left: 42px;
    letter-spacing: .02em;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 26px;
    z-index: 3;
}

.home-brand-logo-preview img {
    display: block;
    max-height: 18px;
    max-width: 18px;
    object-fit: contain;
}

.category-list {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: .96rem;
}

.category-list li {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 14px;
    line-height: 1.45;
    margin-bottom: .5rem;
    padding: .42rem;
    transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.category-list .active {
    background: linear-gradient(135deg, #f0fdf4, #ffffff);
    border-color: #86efac;
    box-shadow: 0 14px 30px rgba(22, 163, 74, .12);
    transform: translateY(-1px);
}

.category-trigger {
    appearance: none;
    background: transparent;
    border: 0;
    color: inherit;
    display: flex;
    font: inherit;
    font-weight: 850;
    justify-content: space-between;
    line-height: 1.2;
    padding: .32rem .36rem;
    text-align: left;
    width: 100%;
}

.category-trigger span {
    align-items: center;
    display: flex;
    gap: .55rem;
}

.category-trigger i {
    align-items: center;
    background: #f1f5f9;
    border-radius: 10px;
    color: #64748b;
    display: inline-flex;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.category-list .active .category-trigger {
    color: #15803d;
    font-weight: 950;
}

.category-list .active .category-trigger i {
    background: #16a34a;
    color: #fff;
}

.category-list .active .category-trigger::after {
    content: "\F282";
    font-family: "bootstrap-icons";
    font-size: .9rem;
}

.category-filter-group {
    margin-top: .55rem;
}

.filter-block:has(.home-logo-select.open) {
    position: relative;
    z-index: 60;
}

.category-list li:has(.home-logo-select.open) {
    position: relative;
    z-index: 1;
}

.filter-input {
    position: relative;
}

.filter-input i {
    position: absolute;
    right: 1rem;
    top: 50%;
    color: #c8ced6;
    transform: translateY(-50%);
}

.filter-check {
    display: flex;
    align-items: center;
    gap: .55rem;
    font-size: 1.05rem;
    margin-bottom: .45rem;
}

.filter-check .form-check-input {
    margin: 0;
}

.classifieds-results {
    padding: 1.6rem 2.4rem 4rem;
}

.results-toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
    margin-bottom: 1.35rem;
}

.results-actions {
    display: flex;
    align-items: center;
    background: #fff;
    border: 1px solid #e6edf7;
    border-radius: 16px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .055);
    gap: .5rem;
    padding: .45rem;
}

.results-actions .form-select,
.results-actions .btn {
    border-color: #e1e9f5;
    border-radius: 12px;
    font-weight: 850;
    min-height: 42px;
}

.results-actions .btn {
    align-items: center;
    background: #f8fbff;
    color: #334155;
    display: inline-flex;
    gap: .35rem;
}

.results-actions .btn:hover,
.results-actions .form-select:hover {
    background: #eef4ff;
    border-color: #cfe0f5;
    color: #0d6efd;
}


.classifieds-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1.1rem;
}

.classified-card {
    background: #fff;
    grid-column: span 2;
    border: 1px solid #e8edf5;
    border-radius: 8px;
    box-shadow: 0 12px 32px rgba(15, 23, 42, .07);
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.classified-card.is-highlighted { border-color:#eee2b9; box-shadow:0 12px 32px rgba(149,112,21,.09); }.classified-card.is-highlighted .classified-card-content { background:#fffbee; }.classified-card.is-highlighted:hover { border-color:#dfca80; box-shadow:0 20px 46px rgba(149,112,21,.14); }
.classified-card.is-premium { grid-column: span 3; justify-self:start; width:calc(100% - .55rem); }
.classified-card.is-vip { grid-column: span 4; justify-self:start; width:calc(100% - 1.1rem); }

.classified-card:hover {
    border-color: #cfdef2;
    box-shadow: 0 20px 46px rgba(15, 23, 42, .12);
    transform: translateY(-3px);
}

.classified-image {
    position: relative;
    aspect-ratio: 4 / 3;
    height: auto;
    overflow: hidden;
    border-radius: 0;
    background: #eef2f7;
}

.classified-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .28s ease;
}

.classified-card-slider,
.classified-card-slides,
.classified-card-slide {
    height: 100%;
    width: 100%;
}

.classified-card-slider { position: relative; }
.classified-card-slides { position: relative; }
.classified-card-slide {
    display: block;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transform: translateX(100%) scale(1.02);
    transition: opacity .58s ease, transform .58s cubic-bezier(.22,.61,.36,1);
    will-change: opacity, transform;
}
.classified-card-slide.is-active { opacity: 1; transform: translateX(0) scale(1); z-index: 1; }
.classified-card-slide.is-leaving { opacity: 1; transform: translateX(-100%) scale(1); z-index: 2; }
.classified-slider-control {
    align-items: center;
    background: rgba(255,255,255,.9);
    border: 1px solid rgba(255,255,255,.94);
    border-radius: 50%;
    color: #27364a;
    display: flex;
    height: 1.8rem;
    justify-content: center;
    opacity: 0;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity .16s ease, background .16s ease;
    width: 1.8rem;
    z-index: 3;
}
.classified-slider-control:hover { background: #fff; }
.classified-slider-control.is-previous { left: .45rem; }
.classified-slider-control.is-next { right: .45rem; }
.classified-image:hover .classified-slider-control,
.classified-slider-control:focus-visible { opacity: 1; }
.classified-slider-count {
    background: rgba(15,23,42,.66);
    border-radius: 999px;
    bottom: .55rem;
    color: #fff;
    font-size: .62rem;
    font-weight: 800;
    line-height: 1;
    padding: .28rem .4rem;
    position: absolute;
    right: .55rem;
    z-index: 2;
}

.classified-image.is-empty {
    background: #f5f7fa;
}

.classified-image.is-empty::after {
    display: none;
}

.classified-no-photo {
    align-items: center;
    color: #7b8794;
    display: flex;
    flex-direction: column;
    font-size: .78rem;
    font-weight: 800;
    gap: .45rem;
    height: 100%;
    justify-content: center;
    text-transform: lowercase;
}

.classified-no-photo i {
    color: #a0aec0;
    font-size: 1.6rem;
}

.classified-card:hover .classified-image img:not(.classified-card-slide) {
    transform: scale(1.045);
}
.classified-card:hover .classified-card-slide.is-active { transform: translateX(0) scale(1.035); }

.classified-card-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

.classified-image::after {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0) 45%, rgba(15, 23, 42, .48) 100%);
    content: "";
    inset: 0;
    position: absolute;
}

.classified-brand-model,.classified-image-document,.classified-upgrade-badge,.classified-highlighted-badge { backdrop-filter:blur(8px); border-radius:7px; font-size:.68rem; font-weight:800; line-height:1; padding:.38rem .55rem; position:absolute; z-index:4; }
.classified-brand-model { background:rgba(231,241,255,.92); border:1px solid rgba(117,166,224,.7); color:#185b9d; left:.65rem; max-width:calc(100% - 1.3rem); overflow:hidden; text-overflow:ellipsis; top:.65rem; white-space:nowrap; }
.classified-upgrade-badge,.classified-highlighted-badge { align-items:center; background:rgba(245,241,255,.96); border:1px solid rgba(188,167,232,.82); color:#7047a3; display:flex; font-size:.78rem; height:29px; justify-content:center; padding:0; right:.65rem; top:.65rem; width:29px; }
.classified-upgrade-badge.upgrade-featured,.classified-upgrade-badge.upgrade-premium,.classified-upgrade-badge.upgrade-vip { left:auto; right:.65rem; }
.classified-image-document { bottom:.65rem; }
.classified-image-document i { margin-right:3px; }
.classified-image-document.road-tax { background:rgba(234,248,238,.94); border:1px solid rgba(137,196,153,.72); bottom:2.45rem; color:#18794e; left:.65rem; }
.classified-image-document.mot { background:rgba(255,247,227,.94); border:1px solid rgba(231,193,111,.75); bottom:.65rem; color:#956b10; left:.65rem; right:auto; }

.classified-card h2 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    margin: .85rem .85rem .25rem;
    min-height: 2.35rem;
    overflow: hidden;
    color: #17202a;
    font-size: .98rem;
    line-height: 1.18;
    font-weight: 800;
}

.classified-card h2 a {
    color: inherit;
    text-decoration: none;
}

.classified-mileage { align-items:center; color:#5d6b7c; display:flex; font-size:.74rem; font-weight:800; gap:.3rem; margin:.5rem .85rem .18rem; }.classified-model-year { align-items:center; color:#0d6efd; display:flex; font-size:.74rem; font-weight:800; gap:.3rem; margin:0 .85rem .35rem; }

.classified-card h2 em {
    display: inline-block;
    border: 1px solid rgba(25, 135, 84, .35);
    border-radius: 999px;
    background: #ecfdf3;
    color: #198754;
    font-size: .58rem;
    font-style: normal;
    font-weight: 800;
    padding: .08rem .3rem;
    vertical-align: middle;
}


.classified-city {
    margin: 0 .85rem;
    color: #667085;
    font-size: .78rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


.classified-specs {
    color: #475467;
    display: grid;
    gap: .35rem;
    font-size: .74rem;
    margin: 0 .85rem;
}

.classified-specs i {
    color: #0d6efd;
    font-size: .85rem;
}

.classified-specs span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.classified-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-top: auto;
    padding: .85rem;
}

.classified-price { align-items:center; display:flex; flex-wrap:wrap; gap:.35rem; min-width:0; }
.classified-footer strong { color:#101828; font-size:1.02rem; font-weight:900; }
.classified-negotiable-badge { background:#eef8f1; border:1px solid #c9e8d2; border-radius:999px; color:#18794e; font-size:.65rem; font-weight:800; line-height:1; padding:.28rem .4rem; text-transform:lowercase; }

.classified-actions {
    display: flex;
    align-items: center;
    gap: .65rem;
}

.icon-action {
    width: 34px;
    height: 34px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #f8fafc;
    color: #17202a;
    font-size: .95rem;
    line-height: 1;
}

.icon-action:hover {
    border-color: #bfd5f4;
    background: #eef4ff;
    color: #0d6efd;
}

@media (max-width: 1599.98px) {
    .classifieds-grid {
        grid-template-columns: repeat(10, minmax(0, 1fr));
    }
}

@media (max-width: 1399.98px) {
    .classifieds-grid {
        grid-template-columns: repeat(8, minmax(0, 1fr));
    }
}

@media (max-width: 1199.98px) {
    .classifieds-shell {
        grid-template-columns: 270px minmax(0, 1fr);
    }

    .classifieds-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .classifieds-shell {
        display: block;
    }

    .classifieds-sidebar {
        display: none;
        border-right: 0;
        border-bottom: 1px solid #e3e6ea;
    }

    .classifieds-sidebar.is-open {
        display: block;
    }

    .classifieds-results {
        padding: 1.25rem;
    }

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

    .results-actions {
        flex-wrap: wrap;
        width: 100%;
    }

    .results-actions .form-select {
        flex: 1 1 160px;
    }

    .classifieds-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: .9rem;
    }

    .classified-card.is-premium {
        width: calc(100% - .45rem);
    }

    .classified-card.is-vip {
        width: calc(100% - .9rem);
    }
}

@media (max-width: 575.98px) {
    .classifieds-grid {
        grid-template-columns: 1fr;
    }

    .classified-card,
    .classified-card.is-premium,
    .classified-card.is-vip {
        grid-column: span 1;
        width: 100%;
    }
}

.home-topbar {
    background: #2b3036;
    color: rgba(255, 255, 255, .8);
    font-size: .875rem;
    padding: .45rem 0;
}

.home-topbar a {
    color: rgba(255, 255, 255, .85);
    text-decoration: none;
}

.home-nav {
    background: #fff;
    border-bottom: 1px solid #e7e9ee;
    box-shadow: 0 1px 8px rgba(20, 25, 35, .05);
}

.home-nav .navbar-brand {
    color: #1f2937;
}

.home-nav .nav-link {
    color: #4b5563;
}

.home-nav .nav-link:hover {
    color: #0d6efd;
}

.home-hero {
    padding: 3.25rem 0 2.75rem;
    color: #1f2937;
    background:
        linear-gradient(rgba(245, 247, 251, .92), rgba(245, 247, 251, .92)),
        url("https://images.unsplash.com/photo-1492144534655-ae79c964c9d7?auto=format&fit=crop&w=1800&q=80") center/cover no-repeat;
    border-bottom: 1px solid #e1e5ec;
}

.hero-content h1 {
    max-width: 820px;
    margin: .75rem auto 1rem;
    font-size: clamp(2rem, 4.6vw, 3.6rem);
    line-height: 1.05;
}

.hero-content p {
    max-width: 680px;
    margin: 0 auto;
    color: #5b6472;
    font-size: 1.1rem;
}

.hero-kicker,
.section-heading span,
.newsletter-panel span {
    display: inline-block;
    color: #0d6efd;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.hero-search {
    max-width: 1120px;
    margin: 1.75rem auto 0;
    background: #fff;
    color: #111827;
    border-radius: 8px;
    padding: 1.1rem;
    border: 1px solid #e2e8f0;
    box-shadow: 0 18px 45px rgba(20, 25, 35, .12);
}

.hero-quick-cats {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: 1rem;
}

.hero-quick-cats a {
    color: #495160;
    background: rgba(255, 255, 255, .86);
    border: 1px solid #dce2ea;
    border-radius: 999px;
    padding: .45rem .9rem;
    text-decoration: none;
    font-size: .9rem;
}

.home-section {
    padding: 3rem 0;
}

.section-muted {
    background: #fff;
}

.section-dark {
    background: #101827;
    color: #fff;
}

.section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.section-heading h2 {
    margin: .25rem 0 0;
    font-size: clamp(1.45rem, 3vw, 2.2rem);
}

.section-heading.light span {
    color: #93c5fd;
}

.car-card,
.dealer-card,
.blog-card,
.testimonial-card {
    border: 1px solid #e6eaf0;
    border-radius: 8px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .05);
    overflow: hidden;
}

.listing-thumb {
    position: relative;
    height: 190px;
    background: #eef2f7;
}

.listing-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.listing-thumb span {
    position: absolute;
    top: .75rem;
    left: .75rem;
    background: #f59e0b;
    color: #fff;
    border-radius: 4px;
    padding: .25rem .5rem;
    font-size: .75rem;
    font-weight: 700;
}

.car-card a {
    color: #111827;
    text-decoration: none;
}

.listing-category {
    color: #6b7280;
    font-size: .8rem;
    margin-bottom: .35rem;
}

.listing-meta {
    display: flex;
    gap: .75rem;
    color: #6b7280;
    font-size: .85rem;
    margin-bottom: .75rem;
}

.listing-price {
    color: #198754;
    font-size: 1.1rem;
}

.dealer-mark {
    width: 52px;
    height: 52px;
    display: inline-grid;
    place-items: center;
    border-radius: 8px;
    background: #0d6efd;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
}

.category-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1rem;
}

.category-tile {
    min-height: 132px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 1rem;
    background: #fff;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
    color: #222;
    text-decoration: none;
}

.category-icon {
    color: #0d6efd;
    font-weight: 700;
    display: block;
    margin-bottom: .75rem;
}

.category-tile strong {
    font-size: .96rem;
}

.category-tile small {
    color: #6b7280;
    margin-top: .25rem;
}

.home-category-strip {
    padding: 2rem 0;
    background: #fff;
    border-bottom: 1px solid #e7e9ee;
}

.brand-grid {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 1rem;
}

.brand-pill {
    border-radius: 8px;
    background: #fff;
    padding: 1.25rem;
    text-align: center;
    font-weight: 700;
    border: 1px solid #e6eaf0;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .04);
}

.stats-band {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border-radius: 8px;
    background: #dbe3ef;
}

.stats-band div {
    background: #111827;
    color: #fff;
    padding: 2rem;
}

.stats-band strong {
    display: block;
    font-size: 2.4rem;
    line-height: 1;
}

.stats-band span {
    color: rgba(255, 255, 255, .7);
}

.testimonial-card p {
    color: #4b5563;
}

.newsletter-section {
    padding: 5rem 0;
    background: #0f172a;
}

.newsletter-panel {
    display: grid;
    grid-template-columns: 1fr minmax(280px, 460px);
    gap: 2rem;
    align-items: center;
    color: #fff;
}

.newsletter-panel h2 {
    font-size: clamp(2rem, 5vw, 4rem);
}

.newsletter-panel p {
    color: rgba(255, 255, 255, .72);
}

.newsletter-form {
    display: flex;
    gap: .75rem;
}

.home-footer {
    background: #fff;
    border-top: 1px solid #e6ebf2;
    color: #667085;
    font-size: .9rem;
}

.home-footer-inner {
    align-items: center;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: .55rem 1.25rem;
}

.home-footer-rows {
    min-width: 0;
}

.home-footer-row {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 42px;
    padding: .35rem .5rem;
}

.home-footer-copyright {
    font-weight: 600;
    text-align: center;
}

.home-footer-links {
    border-top: 1px solid #edf1f5;
}

.home-footer-promo {
    display: block;
    height: 24px;
    object-fit: contain;
    width: 95px;
}

.home-footer a {
    color: #1f6fc5;
    font-weight: 700;
    text-decoration: none;
}

.home-footer a:hover {
    color: #135ca8;
    text-decoration: underline;
}

@media (max-width: 575.98px) {
    .home-footer-inner {
        gap: .7rem;
        padding: .5rem .8rem;
    }

    .home-footer-promo {
        height: 17px;
        width: 66px;
    }
}

.section-loading {
    height: 180px;
    border-radius: 8px;
    background: linear-gradient(90deg, #e5e7eb, #f8fafc, #e5e7eb);
    background-size: 200% 100%;
    animation: loading-shimmer 1.2s ease-in-out infinite;
}

@keyframes loading-shimmer {
    0% {
        background-position: 100% 0;
    }

    100% {
        background-position: -100% 0;
    }
}

@media (max-width: 991.98px) {
    .classifieds-header .container-fluid {
        flex-wrap: wrap;
        gap: .75rem;
        padding-bottom: .75rem;
        padding-top: .75rem;
    }

    .classifieds-top-search {
        order: 3;
        width: calc(100% - 4.25rem);
    }

    .header-language-switcher {
        order: 4;
    }

    .header-add-listing {
        order: 4;
    }

    .account-menu-copy {
        display: none;
    }

    .home-hero {
        min-height: auto;
        padding-top: 7rem;
    }

    .section-heading,
    .newsletter-panel,
    .newsletter-form {
        display: block;
    }

    .newsletter-form .form-control {
        margin-bottom: .75rem;
    }

    .brand-grid,
    .stats-band,
    .category-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .brand-grid,
    .stats-band,
    .category-grid {
        grid-template-columns: 1fr;
    }
}

.dealer-logo-preview,
.dealer-logo-xl {
    display: grid;
    place-items: center;
    overflow: hidden;
    background: #eef2f7;
    color: #334155;
    font-weight: 800;
    text-transform: uppercase;
}

.dealer-logo-preview {
    width: 82px;
    height: 82px;
    border-radius: 8px;
}

.dealer-logo-preview img,
.dealer-logo-xl img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.inventory-thumb {
    width: 74px;
    height: 54px;
    flex: 0 0 74px;
    border-radius: 6px;
    object-fit: cover;
    background: #eef2f7;
}

.dealer-showroom-page {
    background: #f6f7fb;
}

.dealer-showroom-hero {
    min-height: 460px;
    background:
        linear-gradient(rgba(9, 15, 25, .68), rgba(9, 15, 25, .68)),
        url("https://images.unsplash.com/photo-1542362567-b07e54358753?auto=format&fit=crop&w=1800&q=80") center/cover no-repeat;
    color: #fff;
}

.dealer-hero-content {
    padding-top: 4rem;
    padding-bottom: 5rem;
}

.dealer-logo-xl {
    width: 112px;
    height: 112px;
    margin-bottom: 1.25rem;
    border: 4px solid rgba(255, 255, 255, .9);
    border-radius: 12px;
    font-size: 3rem;
}

.dealer-hero-content h1 {
    max-width: 820px;
    font-size: clamp(2.2rem, 6vw, 4.8rem);
    line-height: 1;
}

.dealer-hero-content p {
    max-width: 720px;
    color: rgba(255, 255, 255, .78);
    font-size: 1.05rem;
}

.dealer-contact-line {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: 1.25rem;
}

.dealer-contact-line span,
.dealer-contact-line a {
    color: #fff;
    text-decoration: none;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 999px;
    padding: .45rem .85rem;
}

.favorite-count-badge,
.compare-count-badge {
    display: inline-grid;
    place-items: center;
    min-width: 1.5rem;
    height: 1.5rem;
    margin-left: .25rem;
    border-radius: 999px;
    background: #e8eef8;
    color: #0d6efd;
    font-size: .78rem;
    font-weight: 700;
}

.compare-drawer {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    width: min(420px, calc(100vw - 2rem));
    border-radius: 12px;
    border: 1px solid #dce3ec;
    background: #fff;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .18);
    overflow: hidden;
    opacity: 0;
    transform: translateY(12px);
    pointer-events: none;
    transition: all .2s ease;
    z-index: 40;
}

.compare-drawer.is-open {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.compare-drawer-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .9rem 1rem;
    border-bottom: 1px solid #e5eaf0;
}

.compare-drawer-body {
    max-height: 280px;
    overflow-y: auto;
    padding: .75rem 1rem;
}

.compare-drawer-item {
    display: grid;
    grid-template-columns: 68px minmax(0, 1fr) auto;
    gap: .75rem;
    align-items: center;
    padding: .55rem 0;
    border-bottom: 1px solid #eef2f7;
}

.compare-drawer-item img,
.compare-thumb {
    width: 68px;
    height: 52px;
    border-radius: 6px;
    object-fit: cover;
    background: #eef2f7;
}

.compare-drawer-item small {
    display: block;
    color: #64748b;
}

.compare-table th,
.compare-table td {
    min-width: 180px;
}

.review-reply-box {
    border-top: 1px solid #e5eaf0;
    margin-top: .9rem;
    padding-top: .9rem;
}

.lead-thread-list,
.message-thread-list {
    overflow: hidden;
}

.lead-thread-button,
.message-thread-button {
    width: 100%;
    display: block;
    border: 0;
    border-bottom: 1px solid #e5eaf0;
    background: #fff;
    padding: 1rem;
    text-align: left;
}

.lead-thread-button:hover,
.lead-thread-button.active,
.message-thread-button:hover,
.message-thread-button.active {
    background: #f1f5f9;
}

.lead-thread-button.is-unread span::after,
.message-thread-button.is-unread span::after {
    content: "";
    width: .55rem;
    height: .55rem;
    display: inline-block;
    margin-left: .45rem;
    border-radius: 50%;
    background: #0d6efd;
}

.lead-thread-button small,
.lead-thread-button em,
.message-thread-button small,
.message-thread-button em {
    display: block;
    color: #64748b;
    font-style: normal;
}

.lead-chat-panel,
.message-chat-panel {
    min-height: 620px;
}

.lead-chat-messages,
.message-chat-messages {
    height: 500px;
    overflow-y: auto;
    padding: 1rem;
    background: #f8fafc;
}

.lead-message {
    max-width: 78%;
    margin-bottom: .85rem;
}

.lead-message div {
    border-radius: 8px;
    padding: .75rem .9rem;
}

.lead-message small {
    display: block;
    margin-top: .2rem;
    color: #64748b;
}

.lead-message-buyer div {
    background: #fff;
    border: 1px solid #e2e8f0;
}

.lead-message-seller {
    margin-left: auto;
}

.lead-message-seller div {
    background: #0d6efd;
    color: #fff;
}

.lead-message-seller small {
    text-align: right;
}

.notification-unread {
    background: #f8fbff;
}

.stat-card.compact {
    border: 1px solid #e5eaf0;
    border-radius: 8px;
    padding: 1rem;
    height: 100%;
}

.stat-card.compact strong,
.stat-card.compact span {
    display: block;
}

.admin-module-link {
    display: flex;
    min-height: 86px;
    align-items: center;
    padding: 1rem;
    border: 1px solid #e5eaf0;
    border-radius: 8px;
    background: #fff;
    color: #172033;
    font-weight: 600;
    text-decoration: none;
}

.admin-module-link:hover {
    border-color: #0d6efd;
    color: #0d6efd;
}

.coupon-shell {
    display: grid;
    gap: 1.25rem;
}

.coupon-hero {
    background: linear-gradient(135deg, #f8fbff 0%, #eef4ff 48%, #ecfdf3 100%);
    border: 1px solid #dce8ff;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .06);
    padding: 1.35rem;
}

.coupon-kicker {
    color: #188754;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.coupon-hero h1 {
    color: #111827;
    font-size: clamp(1.55rem, 3vw, 2.45rem);
    font-weight: 900;
    line-height: 1.05;
    margin: .15rem 0 .55rem;
}

.coupon-hero p {
    color: #667085;
    font-weight: 800;
    margin: 0;
}

.blog-card {
    border-radius: 8px;
    overflow: hidden;
}

.blog-card .card-img-top {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.blog-featured-image {
    max-height: 560px;
    border-radius: 8px;
    object-fit: cover;
}

.blog-content {
    color: #263244;
    font-size: 1.05rem;
    line-height: 1.8;
}

.offline-panel {
    max-width: 460px;
}

.valuation-value-panel,
.finance-result-panel,
.vehicle-score-panel {
    border-radius: 8px;
    background: #172033;
    color: #fff;
    padding: 1.5rem;
}

.valuation-value-panel span,
.valuation-value-panel small,
.finance-result-panel span,
.finance-result-panel small,
.vehicle-score-panel span,
.vehicle-score-panel small {
    display: block;
    color: #cbd5e1;
}

.valuation-value-panel strong,
.finance-result-panel strong,
.vehicle-score-panel strong {
    display: block;
    font-size: clamp(2rem, 5vw, 3.5rem);
    line-height: 1.1;
    margin: .5rem 0;
}

.finance-result-panel b {
    display: block;
    font-size: 1.15rem;
}

.history-event {
    display: grid;
    gap: .15rem;
    padding: .8rem 0;
    border-bottom: 1px solid #e5eaf0;
}

.history-event:last-child {
    border-bottom: 0;
}

.history-event span,
.history-event small {
    color: #64748b;
}

body.is-offline::before {
    content: "offline";
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    z-index: 1080;
    padding: .45rem .75rem;
    border-radius: 6px;
    background: #172033;
    color: #fff;
    font-size: .8rem;
}

@media (max-width: 767.98px) {
    .lead-chat-panel,
    .message-chat-panel {
        min-height: auto;
    }

    .lead-chat-messages,
    .message-chat-messages {
        height: 360px;
    }

    .lead-message {
        max-width: 92%;
    }
}



.classified-sold-ribbon{left:10px;pointer-events:none;position:absolute;right:10px;top:50%;transform:translateY(-50%);z-index:8;}.classified-sold-ribbon-front{background-color:#cc3333;color:#f8f8f8;display:block;font:900 .9rem/38px Roboto Condensed,Arial,sans-serif;height:38px;left:-10px;position:relative;text-align:center;text-shadow:0 1px 2px #cc6666;text-transform:lowercase;width:calc(100% + 20px);z-index:2;}.classified-sold-ribbon-front{box-shadow:0 0 4px rgba(0,0,0,.55);}.classified-sold-edge-topleft,.classified-sold-edge-topright,.classified-sold-edge-bottomleft,.classified-sold-edge-bottomright{border-style:solid;height:0;position:absolute;width:0;z-index:1;}.classified-sold-edge-bottomleft,.classified-sold-edge-bottomright{top:38px;}.classified-sold-edge-topleft,.classified-sold-edge-bottomleft{border-color:transparent #9b1724 transparent transparent;left:-10px;}.classified-sold-edge-topleft{border-width:5px 10px 0 0;top:-5px;}.classified-sold-edge-bottomleft{border-width:0 10px 0 0;}.classified-sold-edge-topright,.classified-sold-edge-bottomright{border-color:transparent transparent transparent #9b1724;left:100%;}.classified-sold-edge-topright{border-width:0 0 0 10px;top:0;}.classified-sold-edge-bottomright{border-width:0 0 5px 10px;}.classified-sold-glow{animation:classified-sold-flow 1.5s linear infinite;background:linear-gradient(to right,rgba(255,255,255,0) 0%,rgba(255,255,255,0) 1%,rgba(255,255,255,1) 100%);border-left:1px solid #fff;height:38px;left:-20px;opacity:0;position:absolute;top:0;transform:skew(20deg);width:40px;z-index:3;}@keyframes classified-sold-flow{0%{left:-20px;opacity:0}50%{left:50%;opacity:.3}100%{left:calc(100% - 20px);opacity:0}}
.classified-payment-icon{align-items:center;border-radius:999px;display:inline-flex;font-size:.77rem;height:24px;justify-content:center;margin-left:.28rem;width:24px}.classified-payment-icon.is-trade-in{background:#eaf5ff;color:#1976b9}.classified-payment-icon.is-installments{background:#ebf8ed;color:#278443}.classified-sold-from,.classified-sold-by{align-items:center;color:#456379;display:flex;font-size:.72rem;font-weight:800;gap:.3rem;margin:0 .85rem .45rem}.classified-sold-from{text-decoration:none}.classified-sold-from:hover{color:#0d6efd;text-decoration:underline}.classified-sold-from strong{font-weight:900}.classified-sold-by{color:#547494}.classified-sold-by a{color:#2e78b7;font-weight:900;text-decoration:none}.classified-sold-by a:hover{color:#0d6efd;text-decoration:underline}

.classified-empty-image{height:auto;max-width:min(180px,55vw);object-fit:contain;}

.notification-topbar-button{position:relative}.notification-topbar-count{align-items:center;background:#dc3545;border:2px solid #fff;border-radius:999px;color:#fff;display:flex;font-size:.61rem;font-weight:900;height:18px;justify-content:center;line-height:1;min-width:18px;padding:0 4px;position:absolute;right:-5px;top:-5px}

/* Vendors use the same application shell as the administration area. */
.app-role-vendor{--sidebar-width:280px;--topbar-height:72px;--admin-bg:#f5f7fb;--admin-panel:#fff;--admin-border:#e6ebf2;--admin-muted:#667085;--admin-main:#1d2939;--admin-primary-soft:#eef4ff;background:var(--admin-bg);color:var(--admin-main);text-transform:lowercase;}
.app-role-vendor .app-shell{background:var(--admin-bg);display:block!important;min-height:100vh;}.app-role-vendor .app-sidebar{background:#fff!important;border-right:1px solid var(--admin-border);color:var(--admin-main);display:flex;flex-direction:column;inset:0 auto 0 0;min-height:100vh;padding:0;position:fixed;top:0;transform:translateX(0);transition:transform .2s ease,width .2s ease;width:var(--sidebar-width);z-index:1040;}.app-role-vendor .sidebar-brand{align-items:center;border-bottom:1px solid var(--admin-border);display:flex;min-height:var(--topbar-height);padding:1rem 1.25rem;}.app-role-vendor .sidebar-brand a{align-items:center;color:var(--admin-main)!important;display:inline-flex;gap:.65rem;font-size:1.05rem;font-weight:800!important;text-transform:lowercase;}.app-role-vendor .brand-icon{align-items:center;background:#0d6efd;border-radius:8px;color:#fff;display:inline-flex;flex:0 0 42px;font-weight:900;height:42px;justify-content:center;width:42px;}.app-role-vendor .brand-icon.brand-logo-box{background:transparent;border:1px solid var(--admin-border);}.app-role-vendor .sidebar-scroll{flex:1;overflow-y:auto;padding:1rem;}.app-role-vendor .sidebar-section-title{color:#98a2b3;font-size:.72rem;font-weight:800;letter-spacing:.06em;margin:1rem .75rem .45rem;text-transform:uppercase;}
.app-role-vendor .sidebar-link{align-items:center;background:transparent;border:0;border-radius:8px;color:#475467;display:flex;font-weight:700;gap:.75rem;margin-bottom:.18rem;min-height:42px;padding:.62rem .75rem;text-align:left;width:100%;}.app-role-vendor .sidebar-link:hover{background:#f2f4f7;color:#0d6efd;}.app-role-vendor .sidebar-link.active{background:var(--admin-primary-soft);color:#0d6efd;}.app-role-vendor .sidebar-link i,.app-role-vendor .sidebar-icon{color:inherit!important;text-align:center!important;width:1.25rem!important;}.app-role-vendor .sidebar-footer{border-top:1px solid var(--admin-border);padding:1rem;}.app-role-vendor .logout-link{color:#dc2626;}.app-role-vendor .logout-link:hover{background:#fff1f2;color:#b91c1c;}
.app-role-vendor .content{background:var(--admin-bg);display:flex;flex-direction:column;margin-left:var(--sidebar-width);min-height:100vh;min-width:0;transition:margin-left .2s ease,width .2s ease;width:calc(100% - var(--sidebar-width));}.app-role-vendor .topbar{align-items:center;background:rgba(255,255,255,.92)!important;backdrop-filter:blur(12px);border-bottom:1px solid var(--admin-border)!important;box-shadow:none;display:flex;min-height:var(--topbar-height);padding:0;position:sticky;top:0;z-index:1020;}.app-role-vendor .content>.container-fluid{flex:1;padding:1.25rem!important;}.app-role-vendor .avatar{align-items:center;background:#e7f0ff;border-radius:50%;color:#0d6efd;display:inline-flex;font-weight:900;height:40px;justify-content:center;width:40px;}
.app-role-vendor .sidebar.collapsed{width:76px;}.app-role-vendor .sidebar.collapsed .brand-copy,.app-role-vendor .sidebar.collapsed .sidebar-link span,.app-role-vendor .sidebar.collapsed .sidebar-section-title,.app-role-vendor .sidebar.collapsed .sidebar-footer span{display:none;}.app-role-vendor .sidebar.collapsed .sidebar-link{justify-content:center;}.app-role-vendor:has(.sidebar.collapsed) .content{margin-left:76px;width:calc(100% - 76px);}
@media(max-width:991.98px){.app-role-vendor .app-sidebar{transform:translateX(-100%);}.app-role-vendor .app-sidebar.is-open,.app-role-vendor .app-sidebar.mobile-open{transform:translateX(0);}.app-role-vendor .content,.app-role-vendor:has(.sidebar.collapsed) .content{margin-left:0;width:100%;}.app-role-vendor .content>.container-fluid{padding:1rem!important;}}
