/**
 * Casino Single — Review page styles.
 *
 * @package Casino_Manager
 */

/* -----------------------------------------------
   Page Container
   ----------------------------------------------- */
.casino-single {
    max-width: 900px;
    margin: 0 auto 40px;
    padding: 0 20px;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #333333;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* -----------------------------------------------
   Breadcrumbs
   ----------------------------------------------- */
.casino-single__breadcrumbs {
    font-size: 13px;
    color: #666666;
    margin-bottom: 24px;
    padding: 12px 0;
    border-bottom: 1px solid #e0e0e0;
}

.casino-single__breadcrumbs a {
    color: #1a6b47;
    text-decoration: none;
    -webkit-transition: color 0.2s ease;
    transition: color 0.2s ease;
}

.casino-single__breadcrumbs a:hover {
    color: #0d4a32;
    text-decoration: underline;
}

.casino-single__breadcrumb-sep {
    margin: 0 8px;
    color: #cccccc;
}

/* -----------------------------------------------
   Hero Section
   ----------------------------------------------- */
.casino-single__hero {
    display: -ms-grid;
    display: grid;
    grid-template-columns: 200px 1fr auto;
    gap: 24px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fef4f5;
    border: 1px solid #e0e0e0;
    border-left: 4px solid #aa151b;
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 30px;
}

.casino-single__hero-logo img {
    max-width: 180px;
    height: auto;
    border-radius: 6px;
}

.casino-single__logo-placeholder {
    display: block;
    padding: 20px;
    background: #e0e0e0;
    border-radius: 6px;
    text-align: center;
    font-weight: 600;
    color: #555555;
}

.casino-single__title {
    font-size: 24px;
    font-weight: 700;
    color: #333333;
    margin: 0 0 8px;
    line-height: 1.3;
}

.casino-single__title-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    vertical-align: middle;
    margin-left: 8px;
    color: #ffffff;
}

.casino-single__title-badge--exclusive {
    background: #1a6b47;
}

.casino-single__title-badge--new {
    background: #ff0000;
}

.casino-single__rating {
    margin-bottom: 8px;
}

.casino-single__rating .casino-stars {
    font-size: 18px;
}

.casino-single__rating-number {
    font-size: 14px;
    font-weight: 600;
    color: #555555;
    margin-left: 6px;
}

.casino-single__bonus-headline {
    font-size: 18px;
    font-weight: 700;
    color: #1a6b47;
    margin-bottom: 4px;
}

.casino-single__terms-short {
    font-size: 12px;
    color: #999999;
}

.casino-single__hero-cta {
    text-align: center;
}

.casino-cta-button--large {
    padding: 16px 32px;
    font-size: 16px;
    letter-spacing: 0.5px;
}

/* -----------------------------------------------
   Quick Info Grid
   ----------------------------------------------- */
.casino-single__info-grid {
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: #e0e0e0;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 30px;
}

.casino-single__info-item {
    background: #ffffff;
    padding: 16px;
    text-align: center;
}

.casino-single__info-label {
    display: block;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #888888;
    margin-bottom: 6px;
}

.casino-single__info-value {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #333333;
    line-height: 1.3;
}

.casino-single__info-value--code {
    color: #1a6b47;
    background: #f0f0f0;
    display: inline-block;
    padding: 2px 8px;
    border-radius: 4px;
    border: 1px dashed #ccc;
    font-size: 13px;
}

/* -----------------------------------------------
   Content Sections
   ----------------------------------------------- */
.casino-single__section {
    margin-bottom: 30px;
}

.casino-single__section-title {
    font-size: 20px;
    font-weight: 700;
    color: #333333;
    margin: 0 0 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid #1a6b47;
    line-height: 1.4;
}

.casino-single__content {
    font-size: 16px;
    line-height: 1.7;
    color: #444444;
}

.casino-single__content p {
    margin-bottom: 16px;
}

.casino-single__content h2,
.casino-single__content h3 {
    color: #333333;
    margin-top: 24px;
    margin-bottom: 12px;
}

/* -----------------------------------------------
   Features
   ----------------------------------------------- */
.casino-single__features {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.casino-single__feature {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: #f9f9f9;
    border-radius: 6px;
    font-size: 14px;
    color: #333333;
    -webkit-transition: background 0.2s ease;
    transition: background 0.2s ease;
}

.casino-single__feature:hover {
    background: #f0f0f0;
}

.casino-single__feature-icon {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    color: #1a6b47;
    font-size: 14px;
    width: 20px;
    text-align: center;
}

/* -----------------------------------------------
   Withdrawal Detail Grid
   ----------------------------------------------- */
.casino-single__detail-grid {
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.casino-single__detail-item {
    background: #f9f9f9;
    border-radius: 6px;
    padding: 16px;
    text-align: center;
}

.casino-single__detail-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    color: #888888;
    margin-bottom: 6px;
}

.casino-single__detail-value {
    font-size: 16px;
    font-weight: 700;
    color: #333333;
}

/* -----------------------------------------------
   Taxonomy Grid
   ----------------------------------------------- */
.casino-single__taxonomy-grid {
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.casino-single__taxonomy-item {
    padding: 0;
}

.casino-single__taxonomy-label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #888888;
    margin-bottom: 8px;
}

.casino-single__taxonomy-tags {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 6px;
}

.casino-single__tag {
    display: inline-block;
    padding: 4px 12px;
    background: #f0f0f0;
    color: #1a6b47;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

.casino-single__tag:hover {
    background: #1a6b47;
    color: #ffffff;
}

/* -----------------------------------------------
   Restricted Countries
   ----------------------------------------------- */
.casino-single__restricted {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 6px;
}

.casino-single__restricted-tag {
    display: inline-block;
    padding: 4px 12px;
    background: #fff3cd;
    color: #856404;
    border: 1px solid #ffc107;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 500;
}

/* -----------------------------------------------
   Terms & Conditions Section
   ----------------------------------------------- */
.casino-single__section--terms {
    background: #f9f9f9;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px;
}

.casino-single__section--terms .casino-single__section-title {
    border-bottom-color: #cccccc;
    font-size: 16px;
}

.casino-single__terms-content {
    font-size: 13px;
    color: #666666;
    line-height: 1.6;
}

/* -----------------------------------------------
   Bottom CTA
   ----------------------------------------------- */
.casino-single__bottom-cta {
    text-align: center;
    padding: 30px 0;
    margin-bottom: 30px;
}

.casino-single__bottom-terms {
    margin-top: 10px;
    font-size: 12px;
    color: #999999;
}

/* -----------------------------------------------
   Related Casinos
   ----------------------------------------------- */
.casino-single__related {
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.casino-single__related-card {
    background: #fef4f5;
    border: 1px solid #e0e0e0;
    border-left: 3px solid #aa151b;
    border-radius: 8px;
    padding: 16px;
    text-align: center;
    -webkit-transition: box-shadow 0.3s ease;
    transition: box-shadow 0.3s ease;
}

.casino-single__related-card:hover {
    -webkit-box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.casino-single__related-logo img {
    max-width: 120px;
    height: auto;
    border-radius: 6px;
    margin-bottom: 10px;
}

.casino-single__related-name {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #333333;
    text-decoration: none;
    margin-bottom: 6px;
}

.casino-single__related-name:hover {
    color: #1a6b47;
}

.casino-single__related-rating {
    margin-bottom: 6px;
    font-size: 12px;
    color: #666666;
}

.casino-single__related-rating .casino-stars {
    font-size: 13px;
}

.casino-single__related-bonus {
    font-size: 13px;
    font-weight: 600;
    color: #1a6b47;
    margin-bottom: 12px;
}

.casino-single__related-cta .casino-cta-button {
    display: block;
    padding: 10px 16px;
    font-size: 12px;
}

/* -----------------------------------------------
   Mobile Responsive: Tablet (< 900px)
   ----------------------------------------------- */
@media (max-width: 900px) {

    .casino-single__hero {
        grid-template-columns: 150px 1fr;
        gap: 16px;
    }

    .casino-single__hero-cta {
        grid-column: 1 / -1;
    }

    .casino-single__info-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .casino-single__taxonomy-grid {
        grid-template-columns: 1fr;
    }

    .casino-single__related {
        grid-template-columns: repeat(2, 1fr);
    }
}

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

    .casino-single {
        padding: 0 15px;
    }

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

    .casino-single__hero {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .casino-single__hero-logo img {
        max-width: 160px;
        margin: 0 auto;
    }

    .casino-single__title {
        font-size: 20px;
    }

    .casino-single__title-badge {
        display: block;
        margin: 8px auto 0;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
    }

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

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

    .casino-single__info-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .casino-single__features {
        grid-template-columns: 1fr;
    }

    .casino-single__detail-grid {
        grid-template-columns: 1fr;
    }

    .casino-single__related {
        grid-template-columns: 1fr;
    }
}
