/**
 * Casino Responsive — Breakpoint styles.
 *
 * Desktop: > 900px  — Full 5-column grid (default styles)
 * Tablet:  500-900px — 3-column layout, hidden header
 * Mobile:  < 500px   — Stacked optimized layout
 *
 * @package Casino_Manager
 */

/* ==============================================
   Tablet: 500px - 900px
   ============================================== */
@media (max-width: 900px) {

    /* Hide table header on tablet/mobile */
    .casino-table__header {
        display: none;
    }

    .casino-table__body {
        border-top: 1px solid #e0e0e0;
        border-radius: 8px;
    }

    /* 3-column card layout */
    .casino-card {
        grid-template-columns: auto 1fr auto;
        grid-template-rows: auto;
        gap: 10px;
        padding: 15px;
    }

    /* Position + Logo grouped together */
    .casino-card__position {
        grid-row: 1 / 3;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .casino-card__logo {
        grid-column: 1 / 2;
        grid-row: 1;
    }

    /* Bonus + Features in middle */
    .casino-card__bonus {
        grid-column: 2;
        grid-row: 1;
        padding: 0 10px;
    }

    .casino-card__features {
        grid-column: 2;
        grid-row: 2;
        padding: 0 10px;
    }

    /* CTA on the right */
    .casino-card__cta {
        grid-column: 3;
        grid-row: 1 / 3;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .casino-card__logo img.casino-logo {
        max-width: 100px;
    }

    .casino-card__bonus-headline {
        font-size: 14px;
    }

    .casino-cta-button {
        padding: 10px 18px;
        font-size: 12px;
    }

    /* Restriction notice spans full row on tablet */
    .casino-card__restriction {
        grid-column: 1 / -1;
    }

    /* Compact/mini single cards */
    .casino-card-single--compact .casino-card {
        grid-template-columns: auto 1fr auto;
    }

    .casino-card-single--mini .casino-card {
        grid-template-columns: auto 1fr;
    }
}

/* ==============================================
   Mobile: < 500px
   ============================================== */
@media (max-width: 500px) {

    .casino-table-wrapper {
        margin: 0 auto 20px;
    }

    /* Stack everything vertically */
    .casino-card {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
        padding: 20px 15px;
        gap: 12px;
    }

    .casino-card__position {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        order: -1;
    }

    .casino-card__position-number {
        width: 30px;
        height: 30px;
        font-size: 14px;
    }

    .casino-card__logo {
        padding: 0;
    }

    .casino-card__logo img.casino-logo {
        max-width: 160px;
    }

    .casino-card__bonus {
        padding: 0;
        width: 100%;
    }

    .casino-card__bonus-headline {
        font-size: 16px;
    }

    .casino-card__bonus-details {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .casino-card__features {
        padding: 0;
        width: 100%;
    }

    .casino-card__features-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 4px 12px;
    }

    .casino-card__feature {
        font-size: 12px;
    }

    .casino-card__cta {
        padding: 0;
        width: 100%;
    }

    .casino-cta-button {
        display: block;
        width: 100%;
        padding: 14px 24px;
        font-size: 14px;
        text-align: center;
    }

    /* Badge smaller on mobile */
    .casino-badge {
        width: 80px;
        height: 80px;
    }

    .casino-badge span {
        width: 120px;
        font-size: 9px;
        padding: 5px 0;
        top: 16px;
        left: -30px;
    }

    /* Restriction notice full-width on mobile */
    .casino-card__restriction {
        width: 100%;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: center;
    }

    /* Load more full width */
    .casino-table__load-more-btn {
        width: 100%;
        padding: 14px 20px;
    }

    /* Single card styles */
    .casino-card-single--compact .casino-card,
    .casino-card-single--mini .casino-card {
        grid-template-columns: 1fr;
    }
}
