/* --- Automotive Item Card --- */
.item-card {
    border-radius: .6rem;
    overflow: hidden;
    background: #fff;
    border: 1px solid #ececec;
    transition: transform .15s ease, box-shadow .15s ease;
}

.item-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(22, 27, 30, 0.08);
}

/* image */
.item-card .img-wrap {
    position: relative;
    height: 160px;
    overflow: hidden;
    background: #f5f6f8;
}

.item-card .img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* badges */
.item-card .card-badges {
    position: absolute;
    top: 10px;
    left: 10px;
}

.item-card .card-badges .badge {
    font-size: .75rem;
    padding: .35rem .5rem;
    margin-right: .25rem;
}

/* body */
.item-card .card-body {
    padding: .7rem .9rem;
}

.item-title {
    font-size: .95rem;
    font-weight: 600;
    margin-bottom: .25rem;
    color: #000;
}

.item-sub {
    font-size: .82rem;
    color: #6c757d;
    margin-bottom: .6rem;
}

/* price section */
.price-wrap {
    display: flex;
    align-items: baseline;
    gap: .4rem;
    margin-bottom: .3rem;
}

.price-current {
    font-size: 1.05rem;
    font-weight: 700;
    color: #28a745;
}

.price-old {
    font-size: .9rem;
    color: #999;
    text-decoration: line-through;
}

/* stock status */
.stock-status {
    font-size: .82rem;
    font-weight: 500;
    margin-bottom: .4rem;
}

/* footer */
.item-card .card-footer {
    background: #fff;
    border-top: 1px solid #f1f1f1;
    padding: .6rem .9rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.meta-small {
    font-size: .8rem;
    color: #6c757d;
}

.btn-buy {
    min-width: 110px;
}


/* --- VEHICLE CARD (Compact) --- */
.vehicle-card {
    border-radius: .6rem;
    overflow: hidden;
    transition: transform .15s ease, box-shadow .15s ease;
    background: #fff;
    border: 1px solid #ececec;
}

.vehicle-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(22, 27, 30, 0.08);
}

/* image wrapper */
.vehicle-card .img-wrap {
    position: relative;
    height: 140px;
    overflow: hidden;
    background: #f5f6f8;
}

.vehicle-card .img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* price ribbon */
.price-ribbon {
    position: absolute;
    top: 10px;
    right: 10px;
    background: #28a745;
    color: #fff;
    padding: .35rem .6rem;
    font-weight: 700;
    border-radius: .35rem;
    font-size: .9rem;
    box-shadow: 0 3px 8px rgba(0,0,0,0.12);
    white-space: nowrap;
}

/* badge (top-left) */
.card-badges {
    position: absolute;
    left: 10px;
    top: 10px;
}

.card-badges .badge {
    font-size: .75rem;
    padding: .35rem .5rem;
    border-radius: .3rem;
}

/* content */
.vehicle-card .card-body {
    padding: .6rem .8rem;
}

.vehicle-title {
    font-size: .95rem;
    font-weight: 600;
    margin-bottom: .2rem;
    color: #000;
}

.vehicle-sub {
    font-size: .82rem;
    color: #6c757d;
    margin-bottom: .5rem;
}

/* specs row */
.specs {
    display: flex;
    justify-content: space-between;
    font-size: .82rem;
    color: #444;
    margin-bottom: 0;
}

.specs .spec-item {
    flex: 1;
    text-align: center;
    border-right: 1px solid #eee;
}

.specs .spec-item:last-child {
    border-right: none;
}

/* footer */
.vehicle-card .card-footer {
    background: #fff;
    border-top: 1px solid #f1f1f1;
    padding: .6rem .8rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.meta-small {
    font-size: .8rem;
    color: #6c757d;
}

.btn-buy {
    min-width: 100px;
}

/* --- Featured Ad Card (General Items) --- */
.featured-card {
    height: 100%;
    border-radius: .6rem;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e5e5e5;
    transition: transform .15s ease, box-shadow .15s ease;
}

.featured-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(22, 27, 30, 0.1);
}

/* image section */
.featured-card .img-wrap {
    position: relative;
    height: 180px;
    overflow: hidden;
    background: #f5f6f8;
}

.featured-card .img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* badges */
.featured-card .card-badges {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
}

.featured-card .card-badges .badge {
    font-size: .8rem;
    padding: .4rem .6rem;
    border-radius: .3rem;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* body */
.featured-card .card-body {
    padding: .9rem 1rem;
}

.featured-title {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: .25rem;
    color: #000;
}

.featured-sub {
    font-size: .84rem;
    color: #6c757d;
    margin-bottom: .5rem;
}

.price-wrap {
    margin-bottom: .5rem;
}

.price-current {
    font-size: 1.05rem;
    font-weight: 700;
    /*color: #007bff;*/
}

/* description */
.featured-desc {
    font-size: .85rem;
    color: #444;
}

/* meta info */
.meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    font-size: .8rem;
    color: #555;
    border-top: 1px solid #eee;
    padding-top: .6rem;
    margin-top: .5rem;
}

/* footer */
.featured-card .card-footer {
    background: #fff;
    border-top: 1px solid #f1f1f1;
    padding: .7rem 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.meta-small {
    font-size: .8rem;
    color: #6c757d;
}

.btn-outline-primary {
    border-radius: .35rem;
    font-size: .85rem;
    padding: .3rem .8rem;
}
