/**
 * Review Post Styles - Figma Design
 * Strategic Club - استراتژیک کلاب
 * Exact implementation from Figma design
 *
 * @package Strategic_Club
 * @since 1.0.0
 */

/* ==========================================================================
   Review Post Article
   ========================================================================== */

.review-post-article {
    width: 100%;
    direction: rtl;
}

/* Main Container - Figma: width 1224px */
.review-post-main {
    background: #101114;
}

.review-post-container {
    width: 1640px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
}

/* Grey Container for Text Blocks - Figma Design */
.grey-container {
    background: #25272D;
    border: 1px solid #30343B;
    border-radius: 4px;
    padding: 16px 24px;
    width: 100%;
    box-sizing: border-box;
}

.grey-container--compact {
    padding: 12px 16px;
}

.grey-container--large {
    padding: 24px 32px;
    border-radius: 8px;
}

/* Text Block Container - Figma: bg #25272D, border #30343B, border-radius 4px */
.text-block-container {
    background: #25272D;
    border: 1px solid #30343B;
    border-radius: 4px;
    padding: 16px;
    margin: 16px 0;
    width: 100%;
    box-sizing: border-box;
}

.text-block-container p {
    margin: 0;
    color: #FFFFFF;
    font-size: 16px;
    line-height: 1.5;
    font-family: 'Vazir', sans-serif;
}

/* Info Box - Figma: bg #25272D, border #30343B, border-radius 4px */
.info-box {
    background: #25272D;
    border: 1px solid #30343B;
    border-radius: 4px;
    padding: 16px 24px;
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    box-sizing: border-box;
}

.info-box__icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.info-box__icon svg {
    width: 100%;
    height: 100%;
}

.info-box__text {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
}

/* Header Section - Figma Node: 6002:21163 */
.review-header-section {
    display: flex;
    flex-direction: column;
    gap: 24px;
    align-items: flex-start;
    width: 100%;
}

/* Inner meta wrapper - Figma: flex-col gap-12px items-end w-full shrink-0 */
.review-header-meta-wrapper {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-end;
    width: 100%;
    flex-shrink: 0;
}

/* Breadcrumb row - Figma: flex items-center justify-between (breadcrumb left, title right) */
.review-breadcrumb-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 16px;
}

/* Breadcrumb - Figma: gap 4px, font 16px, line-height 1.2 */
.review-breadcrumb {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-direction: row-reverse;
    justify-content: flex-end;
    min-width: 0;
}

.breadcrumb-links-wrapper {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.breadcrumb-links-wrapper > li {
    min-width: 0;
    overflow: hidden;
}

.breadcrumb-link {
    color: #C4C8CF;
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.2;
    text-decoration: none;
    transition: color 0.15s ease;
}

.breadcrumb-link:hover {
    color: #1081DF;
}

.breadcrumb-separator {
    width: 18px;
    height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.breadcrumb-separator svg {
    width: 100%;
    height: 100%;
}

.breadcrumb-current {
    display: inline-block;
    color: #C4C8CF;
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.2;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex-shrink: 1;
    vertical-align: middle;
}

/* Post Title - Figma: 24px, line-height 32px, weight 400 */
.review-post-title {
    font-family: 'Vazir', sans-serif;
    font-size: 26px;
    font-weight: 400;
    line-height: 32px;
    color: #FFFFFF;
    margin: 0;
    text-align: right;
    flex-shrink: 0;
}

/* Post Subtitle - Figma: 18px, line-height 1.5, weight 400 */
.review-post-subtitle {
    font-family: 'Vazir', sans-serif;
    font-size: 19px;
    font-weight: 400;
    line-height: 1.5;
    color: #8F96A3;
    margin: 0;
    text-align: right;
    direction: rtl;
    align-self: flex-start;
}

/* Post Meta - Figma: gap 16px */
.review-post-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
}

.review-meta-left {
    display: flex;
    align-items: center;
    gap: 16px;
}

.review-meta-stats {
    display: flex;
    align-items: center;
    gap: 8px;
}

.meta-stat {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-direction: row-reverse;
}

.meta-icon {
    width: 14px;
    height: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.meta-icon svg {
    width: 100%;
    height: 100%;
    fill: #8F96A3;
}

.meta-value {
    font-family: 'Vazir', sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.2;
    color: #8F96A3;
}

.review-meta-author-date {
    display: flex;
    align-items: center;
    gap: 8px;
}

.meta-author a {
    font-family: 'Vazir', sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 2.1;
    color: #8F96A3;
    text-decoration: none;
    transition: color 0.15s ease;
}

.meta-author a:hover {
    color: #1081DF;
}

.meta-separator {
    width: 4px;
    height: 4px;
    background: #8F96A3;
    border-radius: 50%;
}

.meta-date {
    font-family: 'Vazir', sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.2;
    color: #8F96A3;
}

.review-meta-right {
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: flex-end;
}

/* Category Badge - Figma: bg #25272D, padding 8px 12px, border-radius 4px */
.review-category-badge {
    background: #25272D;
    color: #FFFFFF;
    font-family: 'Vazir', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;
    padding: 8px 12px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 32px;
    text-decoration: none;
    transition: background 0.15s ease;
}

.review-category-badge:hover {
    background: #30343B;
    color: #FFFFFF;
}

/* Featured Image - Figma: height 688px, border-radius 8px, width 1224px */
.review-featured-image {
    width: 100%;
    height: 688px;
    border-radius: 8px;
    overflow: hidden;
}

.review-featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
}

/* ==========================================================================
   About Game Section - Figma Node: 6002:21164
   bg: #1C1E22, border-radius: 8px, padding: 24px, gap: 32px (flex-col)
   Aligned with Post Header: same max-width (1224px) and same horizontal padding
   ========================================================================== */

.review-about-game {
    margin-top: 16px;
    padding: 24px;
    width: 100%;
    max-width: 1640px;
    margin-left: auto;
    margin-right: auto;
    background: #1C1E22;
    border-radius: 8px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 32px;
    align-items: center;
    direction: rtl;
}

/* Inner content wrapper - gap: 24px between all content blocks */
.review-content-wrapper {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
    align-items: flex-end;
}

/* ==========================================================================
   Info Toast - Figma Node: 6002:21175
   bg: #25272D, border: 1px solid #30343B, border-radius: 4px,
   padding: 16px, gap: 8px, items-start, justify-end (RTL: icon on left)
   ========================================================================== */

.review-info-toast {
    background: #25272D;
    border: 1px solid #30343B;
    border-radius: 4px;
    padding: 16px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 8px;
    width: 100%;
    box-sizing: border-box;
    direction: rtl;
}

.info-toast-content {
    flex: 1 0 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 1px;
    min-height: 1px;
}

.info-toast-title {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    color: #FFFFFF;
    display: block;
    text-align: right;
}

.info-toast-text {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    display: block;
    text-align: right;
    white-space: pre-wrap;
}

.info-toast-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

.info-toast-icon img,
.info-toast-icon svg {
    width: 24px;
    height: 24px;
    display: block;
}

/* ==========================================================================
   Post Content - Figma: font 16px, line-height 1.5, color #FFFFFF
   ========================================================================== */

.review-post-content {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    width: 100%;
    text-align: right;
    direction: rtl;
}

.review-post-content p {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    text-align: right;
    white-space: pre-wrap;
    margin-bottom: 16px;
    margin-top: 0;
}

.review-post-content p:last-child {
    margin-bottom: 0;
}

/* ==========================================================================
   Article Content — Uniform 24px vertical gap between content blocks
   Applies to: H1–H6, blockquotes (WP + custom), shortcode wrappers,
   paragraphs, and images/figures inside .review-post-content.
   Uses the adjacent-sibling combinator so only gaps *between* elements
   are affected; no extra space is added before the first child or after
   the last child.
   ========================================================================== */

/* Targets every listed element that immediately follows another listed element */
.review-post-content h1 + h1,
.review-post-content h1 + h2,
.review-post-content h1 + h3,
.review-post-content h1 + h4,
.review-post-content h1 + h5,
.review-post-content h1 + h6,
.review-post-content h1 + p,
.review-post-content h1 + blockquote,
.review-post-content h1 + figure,
.review-post-content h1 + .wp-block-image,
.review-post-content h1 + .wp-block-shortcode,
.review-post-content h1 + [class*="wp-block-"],
.review-post-content h2 + h1,
.review-post-content h2 + h2,
.review-post-content h2 + h3,
.review-post-content h2 + h4,
.review-post-content h2 + h5,
.review-post-content h2 + h6,
.review-post-content h2 + p,
.review-post-content h2 + blockquote,
.review-post-content h2 + figure,
.review-post-content h2 + .wp-block-image,
.review-post-content h2 + .wp-block-shortcode,
.review-post-content h2 + [class*="wp-block-"],
.review-post-content h3 + h1,
.review-post-content h3 + h2,
.review-post-content h3 + h3,
.review-post-content h3 + h4,
.review-post-content h3 + h5,
.review-post-content h3 + h6,
.review-post-content h3 + p,
.review-post-content h3 + blockquote,
.review-post-content h3 + figure,
.review-post-content h3 + .wp-block-image,
.review-post-content h3 + .wp-block-shortcode,
.review-post-content h3 + [class*="wp-block-"],
.review-post-content h4 + h1,
.review-post-content h4 + h2,
.review-post-content h4 + h3,
.review-post-content h4 + h4,
.review-post-content h4 + h5,
.review-post-content h4 + h6,
.review-post-content h4 + p,
.review-post-content h4 + blockquote,
.review-post-content h4 + figure,
.review-post-content h4 + .wp-block-image,
.review-post-content h4 + .wp-block-shortcode,
.review-post-content h4 + [class*="wp-block-"],
.review-post-content h5 + h1,
.review-post-content h5 + h2,
.review-post-content h5 + h3,
.review-post-content h5 + h4,
.review-post-content h5 + h5,
.review-post-content h5 + h6,
.review-post-content h5 + p,
.review-post-content h5 + blockquote,
.review-post-content h5 + figure,
.review-post-content h5 + .wp-block-image,
.review-post-content h5 + .wp-block-shortcode,
.review-post-content h5 + [class*="wp-block-"],
.review-post-content h6 + h1,
.review-post-content h6 + h2,
.review-post-content h6 + h3,
.review-post-content h6 + h4,
.review-post-content h6 + h5,
.review-post-content h6 + h6,
.review-post-content h6 + p,
.review-post-content h6 + blockquote,
.review-post-content h6 + figure,
.review-post-content h6 + .wp-block-image,
.review-post-content h6 + .wp-block-shortcode,
.review-post-content h6 + [class*="wp-block-"],
.review-post-content p + h1,
.review-post-content p + h2,
.review-post-content p + h3,
.review-post-content p + h4,
.review-post-content p + h5,
.review-post-content p + h6,
.review-post-content p + p,
.review-post-content p + blockquote,
.review-post-content p + figure,
.review-post-content p + .wp-block-image,
.review-post-content p + .wp-block-shortcode,
.review-post-content p + [class*="wp-block-"],
.review-post-content blockquote + h1,
.review-post-content blockquote + h2,
.review-post-content blockquote + h3,
.review-post-content blockquote + h4,
.review-post-content blockquote + h5,
.review-post-content blockquote + h6,
.review-post-content blockquote + p,
.review-post-content blockquote + blockquote,
.review-post-content blockquote + figure,
.review-post-content blockquote + .wp-block-image,
.review-post-content blockquote + .wp-block-shortcode,
.review-post-content blockquote + [class*="wp-block-"],
.review-post-content figure + h1,
.review-post-content figure + h2,
.review-post-content figure + h3,
.review-post-content figure + h4,
.review-post-content figure + h5,
.review-post-content figure + h6,
.review-post-content figure + p,
.review-post-content figure + blockquote,
.review-post-content figure + figure,
.review-post-content figure + .wp-block-image,
.review-post-content figure + .wp-block-shortcode,
.review-post-content figure + [class*="wp-block-"],
.review-post-content .wp-block-image + h1,
.review-post-content .wp-block-image + h2,
.review-post-content .wp-block-image + h3,
.review-post-content .wp-block-image + h4,
.review-post-content .wp-block-image + h5,
.review-post-content .wp-block-image + h6,
.review-post-content .wp-block-image + p,
.review-post-content .wp-block-image + blockquote,
.review-post-content .wp-block-image + figure,
.review-post-content .wp-block-image + .wp-block-image,
.review-post-content .wp-block-image + .wp-block-shortcode,
.review-post-content .wp-block-image + [class*="wp-block-"],
.review-post-content .wp-block-shortcode + h1,
.review-post-content .wp-block-shortcode + h2,
.review-post-content .wp-block-shortcode + h3,
.review-post-content .wp-block-shortcode + h4,
.review-post-content .wp-block-shortcode + h5,
.review-post-content .wp-block-shortcode + h6,
.review-post-content .wp-block-shortcode + p,
.review-post-content .wp-block-shortcode + blockquote,
.review-post-content .wp-block-shortcode + figure,
.review-post-content .wp-block-shortcode + .wp-block-image,
.review-post-content .wp-block-shortcode + .wp-block-shortcode,
.review-post-content .wp-block-shortcode + [class*="wp-block-"],
.review-post-content [class*="wp-block-"] + h1,
.review-post-content [class*="wp-block-"] + h2,
.review-post-content [class*="wp-block-"] + h3,
.review-post-content [class*="wp-block-"] + h4,
.review-post-content [class*="wp-block-"] + h5,
.review-post-content [class*="wp-block-"] + h6,
.review-post-content [class*="wp-block-"] + p,
.review-post-content [class*="wp-block-"] + blockquote,
.review-post-content [class*="wp-block-"] + figure,
.review-post-content [class*="wp-block-"] + .wp-block-image,
.review-post-content [class*="wp-block-"] + .wp-block-shortcode,
.review-post-content [class*="wp-block-"] + [class*="wp-block-"] {
    margin-top: 24px;
}

/* Override the default paragraph bottom-margin so spacing is driven
   entirely by the 24px margin-top above — prevents double-spacing. */
.review-post-content p {
    margin-bottom: 0;
}

/* Headings - Enhanced for visual prominence */
.review-post-content h1,
.review-post-content h2 {
    font-family: 'Vazir', sans-serif;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.4;
    color: #FFFFFF;
    margin-top: 0;
    margin-bottom: 0;
    text-align: right;
    width: 100%;
    letter-spacing: -0.01em;
}

.review-post-content h3 {
    font-family: 'Vazir', sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
    color: #FFFFFF;
    margin-top: 0;
    margin-bottom: 0;
    text-align: right;
    width: 100%;
    letter-spacing: -0.005em;
}

.review-post-content h4,
.review-post-content h5,
.review-post-content h6 {
    font-family: 'Vazir', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    color: #FFFFFF;
    margin-top: 0;
    margin-bottom: 0;
    text-align: right;
    width: 100%;
    letter-spacing: 0.005em;
}

.review-post-content a {
    color: #1081DF;
    text-decoration: none;
    transition: color 0.15s ease;
}

.review-post-content a:hover {
    color: #0D6CB8;
}

/* HR - subtle divider with gradient fade edges */
.review-post-content hr {
    border: none;
    height: 1px;
    background: linear-gradient(to left, transparent, #30343B 20%, #30343B 80%, transparent);
    margin: 48px 0;
}

/* Images - Figma: border-radius 8px, width 1160px (8px margin each side),
   with gradient overlay at bottom and caption with blue right border (RTL) */
.review-post-content figure,
.review-post-content .wp-block-image {
    margin: 0;
    padding: 0;
    width: 100%;
    position: relative;
}

.review-post-content img {
    border-radius: 8px;
    max-width: 100%;
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

.review-post-content figure figcaption,
.review-post-content .wp-block-image figcaption {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    text-align: right;
    padding: 8px;
    border-right: 2px solid #1081DF;
    margin-top: 0;
    background: linear-gradient(to bottom, rgba(16, 17, 20, 0), #191A1E);
}

/* Blockquote / Quote & Writer Note
   Figma: bg #25272D, border 1px solid #30343B, border-radius 4px,
   padding 24px, gap 8px, items-start, justify-end
   Has a pen icon in top-right corner that breaks the border line.
   NOTE: .wp-block-quote (default WordPress blockquote block) is intentionally
   excluded here — it is styled separately in wp-blockquote.css. */
.review-post-content blockquote:not(.wp-block-quote),
.review-quote-note {
    background: #25272D;
    border: 1px solid #30343B;
    border-radius: 4px;
    padding: 24px;
    margin: 0 auto;
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    font-style: normal;
    color: #FFFFFF;
    text-align: center;
    width: fit-content;
    max-width: 100%;
    box-sizing: border-box;
    position: relative;
    display: flex;
    gap: 8px;
    align-items: flex-start;
    justify-content: flex-end;
    direction: rtl;
    align-self: center;
}

.review-post-content blockquote:not(.wp-block-quote) p {
    margin: 0;
    color: #FFFFFF;
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    font-style: normal;
    text-align: center;
    min-width: 1px;
}

/* Body wrapper — flex child that holds text + optional author */
.review-quote-note__body {
    min-width: 1px;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.review-quote-note__text {
    margin: 0;
    color: #FFFFFF;
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    font-style: normal;
    text-align: center;
}

/* Icon label strip — covers the top border to create a "floating" icon effect
   Figma: absolute, top -1px, right 11px, h-px, bg #25272D, px 4px */
.review-quote-note__icon-wrap {
    position: absolute;
    top: -1px;
    right: 11px;
    height: 1px;
    background: #25272D;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 4px;
}

/* The SVG icon is 40x40; offset upward by half its height minus the 1px strip */
.review-quote-note__icon-wrap svg,
.review-quote-note__icon-wrap img {
    width: 40px;
    height: 40px;
    display: block;
    position: relative;
    /* top: -20px; */
}

/* Writer attribution footer */
.review-quote-note__author {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #30343B;
    width: 100%;
}

.review-quote-note__name {
    font-family: 'Vazir', sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    color: #FFFFFF;
    font-style: normal;
    text-align: right;
}

.review-quote-note__role {
    font-family: 'Vazir', sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.4;
    color: #8F96A3;
    text-align: right;
}

/* Quote icon in top corner (native blockquote fallback — no custom markup)
   Only applies to non-wp-block-quote blockquotes (the custom Quote & Writer Note). */
.review-post-content blockquote:not(.wp-block-quote)::before {
    content: '';
    position: absolute;
    right: 11px;
    top: -1px;
    width: 40px;
    height: 1px;
    background: #25272D;
}

/* ==========================================================================
   Review Score Section - Figma Node: 6002:21190 / 4259:34908
   ========================================================================== */

.review-score-section {
    background: #25272D;
    border: 1px solid #30343B;
    border-radius: 4px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 0;
    width: 100%;
    align-items: flex-end;
    box-sizing: border-box;
}

/* Score Header - Figma: gap 16px, items-start */
.review-score-header {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    justify-content: flex-end;
    width: 100%;
    flex-direction: row-reverse;
}

.review-score-summary {
    flex: 1 0 0;
}

/* Summary Text - Figma: font 16px, line-height 1.5 */
.summary-text {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    margin: 0;
    text-align: right;
}

.review-score-display {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Score Circle - Figma: 72px x 72px
   Color rules:
     0–4  → red    (#F03333)
     5–7  → yellow (#E8A020)
     8–10 → green  (#1C7D45)
   The ring is drawn via a conic-gradient on ::before;
   the inner disc is drawn via ::after so the number sits on top.
*/
.score-circle {
    width: 72px;
    height: 72px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* Outer ring track (unfilled portion) */
.score-circle::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50%;
    /* Default: green ring, overridden by modifier classes below */
    background: conic-gradient(
        var(--score-color, #1C7D45) 0deg,
        var(--score-color, #1C7D45) calc(var(--score-deg, 288deg)),
        #30343B calc(var(--score-deg, 288deg)),
        #30343B 360deg
    );
}

/* Inner disc — sits on top of the ring, reveals only the ring border */
.score-circle::after {
    content: '';
    position: absolute;
    inset: 6px;
    border-radius: 50%;
    background: #25272D;
}

/* ── Color modifier classes (applied via PHP based on score) ── */

/* 0–4: red */
.score-circle--red {
    --score-color: #F03333;
}

/* 5–7: yellow */
.score-circle--yellow {
    --score-color: #E8A020;
}

/* 8–10: green */
.score-circle--green {
    --score-color: #1C7D45;
}

/* Score Value - Figma: font 24px, line-height 0 (centered) */
.score-value {
    position: relative;
    z-index: 1;
    font-family: 'Vazir', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1;
    color: #FFFFFF;
    text-align: center;
    white-space: nowrap;
}

/* Pros Section - Figma: gap 16px */
.review-pros-section {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    align-items: flex-end;
}

/* Pros Header - Figma: gap 16px, line separator */
.pros-header {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-direction: row-reverse;
    width: 100%;
    justify-content: flex-end;
}

.pros-icon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
}

.pros-icon svg {
    width: 100%;
    height: 100%;
    fill: #1C7D45;
}

/* Pros Title - Figma: font 18px, line-height 1.5, color #C4C8CF */
.pros-title {
    font-family: 'Vazir', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    color: #C4C8CF;
    text-align: right;
}

.pros-line {
    flex: 1 0 0;
    height: 4px;
    background: var(--neutral-07-boarder-dark-hover, #30343B);
}

/* Pros List - Figma: gap 8px between items */
.pros-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

/* Pros Item - Figma: gap 8px, icon 28px */
.pros-item {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.pros-item .item-icon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Plus Icon - Figma: color #1C7D45 (green) */
.pros-item .item-icon svg,
.item-icon--plus svg {
    width: 100%;
    height: 100%;
    fill: #1C7D45;
}

/* Pros Item Text - Figma: font 18px, line-height 1.5 */
.pros-item .item-text {
    font-family: 'Vazir', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    text-align: right;
}

/* Cons Section - Figma: gap 16px */
.review-cons-section {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    align-items: flex-end;
}

.cons-header {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-direction: row-reverse;
    width: 100%;
    justify-content: flex-end;
}

.cons-icon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
}

.cons-icon svg {
    width: 100%;
    height: 100%;
    fill: #F03333;
}

/* Cons Title - Figma: font 18px, line-height 1.5, color #C4C8CF */
.cons-title {
    font-family: 'Vazir', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    color: #C4C8CF;
    text-align: right;
}

.cons-line {
    flex: 1 0 0;
    height: 4px;
    background: var(--neutral-07-boarder-dark-hover, #30343B);
}

.cons-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.cons-item {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.cons-item .item-icon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Minus Icon - Figma: color #F03333 (red) */
.cons-item .item-icon svg,
.item-icon--minus svg {
    width: 100%;
    height: 100%;
    fill: #F03333;
}

.cons-item .item-text {
    font-family: 'Vazir', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    text-align: right;
}

/* ==========================================================================
   Tags Section - Figma Node: 6002:21191
   Tags: bg #25272D, border-radius 4px, padding 8px 12px, height 32px,
   font-size 14px, line-height 1.2, color #FFFFFF, gap 8px
   ========================================================================== */

.review-tags-section {
    width: 100%;
}

.review-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-start;
    direction: rtl;
}

/* Tag Buttons - Figma: height 32px, border-radius 4px, padding 8px 12px */
.review-tags a,
.review-tags .tag-link {
    background: #25272D;
    color: #FFFFFF;
    font-family: 'Vazir', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;
    padding: 8px 12px;
    border-radius: 4px;
    text-decoration: none;
    transition: background 0.15s ease, color 0.15s ease;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    white-space: nowrap;
}

.review-tags a:hover,
.review-tags .tag-link:hover {
    background: #1081DF;
    color: #FFFFFF;
}

/* ==========================================================================
   Share & Rating Row - Figma Node: 6590:23547
   Figma: flex, items-center, justify-between, width 1176px, height 40px
   ========================================================================== */

.review-share-section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    direction: rtl;
    flex-wrap: wrap;
    gap: 16px;
}

/* Left side: social buttons + share label - Figma Node: 6590:23548
   gap: 12px, items-center, justify-end */
.review-share-left {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

/* Social Buttons Group - Figma Node: 6590:23549
   gap: 8px */
.review-social-buttons {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 8px;
}

/* Social Button - Figma: 32px x 32px, bg #25272D, border #30343B,
   border-radius 4px, padding 4px */
.review-social-btn {
    width: 32px;
    height: 32px;
    background: #25272D;
    border: 1px solid #30343B;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    box-sizing: border-box;
    text-decoration: none;
    transition: background 0.15s ease, border-color 0.15s ease;
    flex-shrink: 0;
}

.review-social-btn:hover {
    background: #1081DF;
    border-color: #1081DF;
}

.review-social-btn svg {
    width: 24px;
    height: 24px;
    display: block;
    fill: #C4C8CF;
    transition: fill 0.15s ease;
}

.review-social-btn:hover svg {
    fill: #FFFFFF;
}

/* Share Label - Figma Node: 6590:23554
   gap: 8px, items-center */
.review-share-label {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.review-share-label__text {
    font-family: 'Vazir', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    text-align: right;
    white-space: nowrap;
}

.review-share-label__icon {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.review-share-label__icon svg {
    width: 28px;
    height: 28px;
    display: block;
}

/* Right side: article score + rate label - Figma Node: 6590:23557
   gap: 12px, items-center, justify-end */
.review-share-right {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

/* Article Score - Figma Node: 6590:23558
   gap: 12px, items-center, justify-end */
.review-article-score {
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: flex-end;
    flex-shrink: 0;
}

.review-article-score__votes {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.2;
    color: #8F96A3;
    white-space: nowrap;
}

/* Star buttons group */
.review-article-score__stars {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-direction: row-reverse;
}

/* Individual star button */
.review-star-btn {
    width: 32px;
    height: 32px;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: opacity 0.15s ease;
}

.review-star-btn svg {
    width: 32px;
    height: 32px;
    display: block;
    fill: #25272D;
    transition: fill 0.15s ease;
}

.review-star-btn:hover svg,
.review-star-btn.active svg {
    fill: #1081DF;
}

/* ==========================================================================
   Article Score Rating Widget - Figma Node: 6590:23558
   Matches Figma: flex, gap 12px, items-center, justify-end
   Stars: 32×32 px, gap 8px, RTL order (star 5 on right)
   Badge: bg #1081DF, padding 8px 12px, border-radius 4px, font 16px white
   Votes label: font 16px, color #8F96A3
   ========================================================================== */

/* Outer wrapper */
.sc-article-score {
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: flex-end;
    flex-shrink: 0;
    direction: rtl;
}

/* Stars row — RTL: star 5 is rendered first in DOM and sits on the right */
.sc-article-score__stars {
    display: flex;
    align-items: center;
    gap: 8px;
    /* flex-direction: row keeps DOM order; RTL layout puts star-5 on the right */
    flex-direction: row-reverse;
    color: white;
}

/* ── Interactive stars (before voting) ── */
.sc-article-score__stars--interactive .sc-star-btn {
    width: 32px;
    height: 32px;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #25272D;           /* default: dark fill */
    transition: color 0.15s ease, transform 0.1s ease;
}

.sc-article-score__stars--interactive .sc-star-btn svg {
    width: 32px;
    height: 32px;
    display: block;
    pointer-events: none;
}

/* Hover: highlight hovered star and all stars to its right (higher ratings)
   Achieved via CSS sibling trick — we reverse the visual order with RTL
   and use the general sibling combinator. */
.sc-article-score__stars--interactive .sc-star-btn:hover,
.sc-article-score__stars--interactive .sc-star-btn:hover ~ .sc-star-btn {
    color: #1081DF;
}

/* Selected state (set by JS) */
.sc-article-score__stars--interactive .sc-star-btn.sc-star--selected,
.sc-article-score__stars--interactive .sc-star-btn.sc-star--selected ~ .sc-star-btn {
    color: #1081DF;
}

/* Voted / disabled state */
.sc-article-score__stars--interactive.sc-stars--voted .sc-star-btn {
    cursor: default;
    pointer-events: none;
}

/* ── Read-only stars (after voting) ── */
/* Figma design: each star is a 32×32 square container split into two 16px halves.
   Full star  → both halves #1081DF (blue) + white star outline on top.
   Half star  → right half #1081DF, left half #25272D + white star outline on top.
   Empty star → both halves #25272D (dark) + dark star outline on top. */

.sc-article-score__stars--readonly .sc-star {
    width: 32px;
    height: 32px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 4px;
    overflow: hidden;
}

/* The two background halves */
.sc-article-score__stars--readonly .sc-star::before,
.sc-article-score__stars--readonly .sc-star::after {
    content: '';
    position: absolute;
    top: 0;
    width: 16px;
    height: 32px;
}

/* Right half (in RTL layout this is the "first" half visually) */
.sc-article-score__stars--readonly .sc-star::before {
    right: 0;
    background: #25272D;
    border-radius: 0 4px 4px 0;
}

/* Left half */
.sc-article-score__stars--readonly .sc-star::after {
    left: 0;
    background: #25272D;
    border-radius: 4px 0 0 4px;
}

/* Full star: both halves blue */
.sc-article-score__stars--readonly .sc-star--full::before,
.sc-article-score__stars--readonly .sc-star--full::after {
    background: #1081DF;
}

/* Half star: right half blue, left half dark */
.sc-article-score__stars--readonly .sc-star--half::before {
    background: #1081DF;
}
.sc-article-score__stars--readonly .sc-star--half::after {
    background: #25272D;
}

/* Star SVG sits on top of the background halves */
.sc-article-score__stars--readonly .sc-star svg {
    width: 18px;
    height: 18px;
    display: block;
    position: relative;
    z-index: 1;
    pointer-events: none;
}

/* Empty star: dark outline (matches #25272D background — use neutral color) */
.sc-article-score__stars--readonly .sc-star svg {
    fill: #C4C8CF;
}

/* Full or half star: white outline on blue background */
.sc-article-score__stars--readonly .sc-star--full svg,
.sc-article-score__stars--readonly .sc-star--half svg {
    fill: #FFFFFF;
}

/* ── Meta: badge + vote count ── */
.sc-article-score__meta {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

/* Vote count label - Figma: font 16px, color #8F96A3 */
.sc-article-score__votes {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.2;
    color: #8F96A3;
    white-space: nowrap;
}

/* Score badge - Figma: bg #1081DF, padding 8px 12px, border-radius 4px,
   font 16px white, height 40px */
.sc-article-score__badge {
    background: #1081DF;
    color: #FFFFFF;
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.2;
    padding: 8px 12px;
    border-radius: 4px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    flex-shrink: 0;
    box-sizing: border-box;
}

/* ── Toast notification (shown after submitting a rating) ── */
.sc-rating-toast {
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%) translateY(16px);
    background: #1081DF;
    color: #FFFFFF;
    font-family: 'Vazir', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    padding: 12px 24px;
    border-radius: 4px;
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease, transform 0.25s ease;
    white-space: nowrap;
}

.sc-rating-toast--visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .sc-article-score {
        flex-wrap: wrap;
        gap: 8px;
    }

    .sc-article-score__stars--interactive .sc-star-btn {
        width: 28px;
        height: 28px;
    }

    .sc-article-score__stars--interactive .sc-star-btn svg {
        width: 28px;
        height: 28px;
    }

    .sc-article-score__stars--readonly .sc-star {
        width: 28px;
        height: 28px;
    }

    .sc-article-score__stars--readonly .sc-star::before,
    .sc-article-score__stars--readonly .sc-star::after {
        width: 14px;
        height: 28px;
    }

    .sc-article-score__stars--readonly .sc-star svg {
        width: 16px;
        height: 16px;
    }
}

@media (max-width: 480px) {
    .sc-article-score__stars--interactive .sc-star-btn {
        width: 24px;
        height: 24px;
    }

    .sc-article-score__stars--interactive .sc-star-btn svg {
        width: 24px;
        height: 24px;
    }

    .sc-article-score__stars--readonly .sc-star {
        width: 24px;
        height: 24px;
    }

    .sc-article-score__stars--readonly .sc-star::before,
    .sc-article-score__stars--readonly .sc-star::after {
        width: 12px;
        height: 24px;
    }

    .sc-article-score__stars--readonly .sc-star svg {
        width: 14px;
        height: 14px;
    }

    .sc-article-score__badge {
        font-size: 14px;
        padding: 6px 10px;
        height: 36px;
    }

    .sc-article-score__votes {
        font-size: 14px;
    }
}

/* Rate Label - Figma Node: 6590:23559
   gap: 8px, items-center */
.review-rate-label {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.review-rate-label__text {
    font-family: 'Vazir', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    text-align: right;
    white-space: nowrap;
}

.review-rate-label__icon {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.review-rate-label__icon svg {
    width: 28px;
    height: 28px;
    display: block;
}

/* ==========================================================================
   Comments Section - Figma Node: 6002:21196
   ========================================================================== */

.review-comments-placeholder {
    background: #1C1E22;
    border-radius: 8px;
    padding: 48px 24px;
    margin-top: 54px;
    text-align: center;
    width: 100%;
    max-width: 1640px;
    box-sizing: border-box;
}

.comments-placeholder-content {
    max-width: 400px;
    margin: 0 auto;
}

.placeholder-icon {
    width: 48px;
    height: 48px;
    margin: 0 auto 16px;
}

.placeholder-icon svg {
    width: 100%;
    height: 100%;
    fill: #C4C8CF;
}

.placeholder-title {
    font-family: 'Vazir', sans-serif;
    font-size: 20px;
    font-weight: 500;
    color: #FFFFFF;
    margin: 0 0 12px;
}

.placeholder-message {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #8F96A3;
    margin: 0;
}

/* ==========================================================================
   Similar Reviews Section - Figma Node: 6002:21197
   ========================================================================== */

.similar-reviews-section {
    margin-top: 54px;
    width: 100%;
    max-width: 1640px;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

/* Section Header - Figma: flex gap-16px items-center justify-end
   Line on left (flex-start), title+icon on right (flex-end) */
.section-header {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    direction: rtl;
}

.section-title-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    direction: rtl;
}

.section-icon {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
}

.section-icon svg {
    width: 100%;
    height: 100%;
}

/* Section Title - Figma: font 20px, weight 500 (Medium), color #FFFFFF */
.section-title {
    font-family: 'Vazir', sans-serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.5;
    color: #FFFFFF;
    margin: 0;
    text-align: right;
    white-space: nowrap;
}

/* Section Line - Figma: flex-1, height 1px, solid #30343B */
.section-line {
    flex: 1 0 0;
    height: 4px;
    min-height: 1px;
    background: #30343B;
}

/* Grid Layout - 4 columns, gap 24px */
.similar-reviews-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

/* Similar Review Card - Figma: border-radius 8px, bg #1C1E22 */
.similar-review-card {
    background: #1C1E22;
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.similar-review-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

.card-link {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    height: 100%;
}

/* Card Image - Figma: height 184px, rounded top corners */
.card-image {
    width: 100%;
    height: 184px;
    overflow: hidden;
    border-radius: 8px 8px 0 0;
    flex-shrink: 0;
}

.card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px 8px 0 0;
    transition: transform 0.3s ease;
}

.similar-review-card:hover .card-image img {
    transform: scale(1.05);
}

.placeholder-image {
    width: 100%;
    height: 100%;
    background: #25272D;
}

/* Card Content - Figma: bg #1C1E22, padding 16px, gap 16px, items-end, rounded bottom corners */
.card-content {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: flex-end;
    border-radius: 0 0 8px 8px;
    flex: 1;
}

/* Card Title - Figma: font 18px, line-height 1.5, weight 400, color #FFFFFF */
.card-title {
    font-family: 'Vazir', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
    color: #FFFFFF;
    margin: 0;
    text-align: right;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Card Subtitle - Figma: font 16px, line-height 1.5, color #C4C8CF */
.card-subtitle {
    font-family: 'Vazir', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #C4C8CF;
    margin: 0;
    text-align: right;
    /* width: 100%; */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Card Meta Row - Figma: justify-between, items-center, w-full */
.card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

/* Left side: views + comments (Figma: gap 8px) */
.card-meta-left {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Right side: date + author (Figma: gap 8px) */
.card-meta-right {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Meta item: icon + value, RTL order (icon on right, value on left) */
.card-meta .meta-item {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-direction: row-reverse;
}

.card-meta .meta-icon {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.card-meta .meta-icon svg {
    width: 100%;
    height: 100%;
    fill: #8F96A3;
}

/* Meta value - Figma: font 12px, color #8F96A3, line-height 0 (Numbers/12) */
.card-meta .meta-value {
    font-family: 'Vazir', sans-serif;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    color: #8F96A3;
    white-space: nowrap;
}

/* ==========================================================================
   Responsive Styles
   ========================================================================== */

@media (max-width: 1280px) {
    .review-post-container {
        padding-left: 24px;
        padding-right: 24px;
    }
}

@media (max-width: 1024px) {
    .review-post-container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .similar-reviews-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .similar-reviews-section {
        gap: 24px;
    }

    .review-about-game {
        padding: 16px;
        gap: 24px;
    }

    .review-share-section {
        flex-wrap: wrap;
        gap: 16px;
    }
}

@media (max-width: 767px) {
    .review-post-container {
        padding-left: 35px;
        padding-right: 40px;
    }

    /* Header Section - centered column */
    .review-header-section {
        align-items: center;
        gap: 24px;
    }

    .review-header-meta-wrapper {
        align-items: center;
    }

    /* Breadcrumb + Title row → column, centered */
    .review-breadcrumb-title-row {
        flex-direction: column-reverse;
        align-items: center;
        gap: 16px;
    }

    .review-breadcrumb {
        justify-content: center;
    }

    .review-breadcrumb .breadcrumb-links-wrapper {
        justify-content: center;
    }

    .breadcrumb-link,
    .breadcrumb-current {
        font-size: 14px;
    }

    .breadcrumb-separator svg {
        width: 16px;
        height: 16px;
    }

    /* Title - 18px, centered */
    .review-post-title {
        font-size: 18px;
        line-height: 1.5;
        text-align: center;
        width: 100%;
    }

    /* Subtitle - 16px, centered */
    .review-post-subtitle {
        font-size: 16px;
        line-height: 1.5;
        text-align: center;
        width: 100%;
        align-self: center;
    }

    /* Meta Row - centered */
    .review-post-meta {
        flex-direction: column-reverse;
        /* align-items: center; */
        gap: 12px;
    }

    .review-meta-left {
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 12px;
    }

    .review-meta-right {
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
    }

    .review-category-badge {
        font-size: 14px;
        height: 32px;
        padding: 8px 12px;
    }

    .review-featured-image {
        height: 220px;
        border-radius: 8px;
    }

    .similar-reviews-section {
        gap: 24px;
        margin-top: 32px;
    }

    .similar-reviews-section .section-header {
        justify-content: center;
        margin-bottom: 0;
    }

    .similar-reviews-section .section-line {
        display: none;
    }

    .similar-reviews-section .section-title {
        font-size: 18px;
    }

    .similar-reviews-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .similar-review-card .card-image {
        height: 153px;
    }

    .similar-review-card .card-content {
        padding: 12px;
        gap: 12px;
    }

    .similar-review-card .card-title {
        font-size: 16px;
    }

    /* ===== About Game Section - Mobile ===== */
    .review-about-game {
        padding: 16px;
        gap: 24px;
    }

    .review-content-wrapper {
        gap: 24px;
    }

    /* Info toast: block layout on mobile to prevent overlap */
    .review-info-toast {
        display: block !important;
        padding: 12px !important;
    }

    /* Post content: full width */
    .review-post-content {
        width: 100%;
    }

    .review-post-content p {
        font-size: 16px;
        line-height: 1.5;
    }

    .review-post-content h2 {
        margin-top: 32px;
        margin-bottom: 24px;
    }

    .review-post-content h1,
    .review-post-content h2,
    .review-post-content h3 {
        font-size: 20px;
    }

    .review-post-content h4,
    .review-post-content h5,
    .review-post-content h6 {
        font-size: 18px;
    }

    .review-post-content img {
        margin: 32px 0;
    }

    /* Image with caption: full width, height 210px */
    .review-post-content figure,
    .review-post-content .wp-caption {
        width: 100%;
        height: 210px;
        border-radius: 8px;
    }

    .review-post-content figure figcaption,
    .review-post-content .wp-caption-text {
        padding: 68px 8px 16px 8px;
    }

    .review-post-content figure figcaption p,
    .review-post-content .wp-caption-text {
        font-size: 12px;
    }

    /* Blockquote */
    .review-post-content blockquote {
        margin: 32px auto;
        padding: 12px;
    }

    /* Review Score Section: full width, p-16 */
    .review-score-section {
        width: 100%;
        padding: 16px;
        gap: 24px;
    }

    /* Score Header: column-reverse puts score circle on top, summary below (RTL DOM order) */
    .review-score-header {
        flex-direction: column-reverse;
        align-items: center;
        gap: 16px;
    }

    .review-score-display {
        align-self: center;
    }

    .summary-text {
        text-align: center;
        width: 100%;
    }

    /* Pros/Cons items: full width on mobile */
    .pros-item,
    .cons-item {
        width: 100%;
    }

    .pros-item .item-text,
    .cons-item .item-text {
        flex: 1 0 0;
        min-width: 0;
        font-size: 18px;
    }

    .pros-title,
    .cons-title {
        font-size: 18px;
    }

    .review-article-score {
        flex-wrap: wrap;
        gap: 8px;
    }

    /* Tags: centered */
    .review-tags {
        justify-content: center;
        gap: 8px;
    }

    /* Share section: flex-col, centered, gap 16 */
    .review-share-section {
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }

    .review-share-left,
    .review-share-right {
        width: 100%;
        flex-direction: column;
        gap: 12px;
        align-items: center;
        justify-content: center;
    }

    .review-post-content blockquote:not(.wp-block-quote),
    .review-quote-note {
        padding: 16px;
    }
}

@media (max-width: 480px) {
    .review-post-title {
        font-size: 21px;
        line-height: 1.4;
    }

    .review-post-subtitle {
        font-size: 17px;
    }

    .review-meta-left {
        /* flex-direction: column;
        align-items: flex-start; */
        gap: 8px;
    }

    .card-meta {
        /* flex-direction: column; */
        gap: 8px;
    }

    .review-share-label__text,
    .review-rate-label__text {
        font-size: 16px;
    }

    .review-social-buttons {
        flex-wrap: wrap;
    }

    .review-about-game {
        padding: 12px;
        gap: 16px;
    }
}
