/* ==== bus-ticket-list-loop.css ==== */

/* Card */
.bus-ticket-grid-item {
    background: #fff;
    border-radius: 17px;
    box-shadow: 0 3px 18px #30B2B01A;
    width: calc(33.333% - 16px);
    min-width: 320px;
    max-width: 100%;
    text-decoration: none;
    margin-bottom: 26px;
    display: flex;
    flex-direction: column;
    transition: box-shadow .15s, transform .12s;
    overflow: hidden;
    border: 1.5px solid #f4f7f6;
}
.bus-ticket-grid-thumb {
    width: 100%;
    aspect-ratio: 16/9;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    border-radius: 17px 17px 0 0;
    background-color: #f6f9f8;
    min-height: 180px;
}

.bus-ticket-grid-content {
    padding: 19px 20px 13px 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.bus-ticket-grid-title {
    font-weight: 700;
    font-size: 18px;
    color: #30B2B0;
    margin-bottom: 7px;
    min-height: 32px;
    text-align: center;
}

/* Row info - center and balance in card */
.bt-grid-row.bt-grid-center {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 38px; /* Cân bố cục đều theo chiều ngang card */
    font-size: 17px;
    margin-top: 5px;
    margin-bottom: 0;
}

.bt-info-icon-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
}

.bt-info-icon-circle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px; height: 30px;
    border-radius: 50%;
    border: 1.8px solid #30B2B0;
    background: #fff;
    margin-right: 7px;
}
.bt-info-icon-circle i {
    color: #35A13C;
    font-size: 16px;
    /* Không cho icon sát viền */
}

/* Text next to icon */
.bt-grid-value {
    font-weight: 600;
    color: #30B2B0;
    font-size: 16px;
    margin-right: 0;
}

/* Price - full width background */
.bt-grid-row-price-full {
    background: #eaf7f5;
    padding: 14px 0 14px 0;
    border-radius: 0 0 17px 17px;
    text-align: center;
    margin-top: 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
}
.bt-grid-row-price-full .bt-grid-label {
    color: #35A13C;
    font-size: 16px;
    font-weight: 700;
    margin-right: 7px;
}
.bt-grid-row-price-full .bt-grid-price {
    color: #e53935;
    font-weight: 700;
    font-size: 19px;
    background: none;
    padding: 0;
    border-radius: 0;
    margin: 0;
    text-align: center;
}

/* Responsive */
@media (max-width:900px) {
    .bus-ticket-grid-item { width: 100%; min-width: 0; }
    .bus-ticket-grid-title { font-size: 16px; }
    .bus-ticket-grid-content { padding: 13px 8px 9px 8px; }
    .bt-grid-row.bt-grid-center { gap: 24px; font-size: 15px; }
    .bt-info-icon-circle { width: 25px; height: 25px; }
    .bt-info-icon-circle i { font-size: 14px; }
    .bt-grid-value { font-size: 15px; }
}
@media (max-width:600px) {
    .bus-ticket-grid-content { padding: 10px 2px 6px 2px; }
    .bus-ticket-grid-title { font-size: 14px; }
    .bt-grid-row-price-full { font-size: 15px; padding: 9px 0 9px 0; }
    .bt-grid-row-price-full .bt-grid-label { font-size: 14px; }
    .bt-grid-row-price-full .bt-grid-price { font-size: 16px; }
    .bt-grid-row.bt-grid-center { gap: 13px; }
    .bt-info-icon-circle { width: 22px; height: 22px; }
    .bt-info-icon-circle i { font-size: 12px; }
}

/* List grid wrap nếu có */
.bus-ticket-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

/* Pagination style giữ nguyên, thêm lề nếu cần */
.bus-ticket-pagination { text-align: center; margin: 28px 0 16px; }
.bus-ticket-pagination ul { display: inline-flex; gap: 5px; list-style: none; padding: 0; margin: 0; }
.bus-ticket-pagination li { display: inline-block; }
.bus-ticket-pagination a, .bus-ticket-pagination span {
    display: inline-block;
    width: 36px; height: 36px; line-height: 36px;
    border-radius: 50%; background: #fff;
    color: #30B2B0; font-size: 18px; font-weight: 600;
    box-shadow: 0 2px 7px #30B2B020;
    border: 1.2px solid #30B2B0;
    text-align: center; text-decoration: none;
    transition: background .14s, color .14s;
}
.bus-ticket-pagination .current { background: #35A13C; color: #fff; border-color: #35A13C; }
.bus-ticket-pagination a:hover { background: #30B2B0; color: #fff; }
