/* Progressive enhancement: the complete original card remains without JS. */
.cl-review-toggle { display: none; }

@media (max-width: 600px) {
    .single-post .cl-review-compact { margin-bottom: 24px; }
    .single-post .cl-review-compact .cl-card-image { display: none; }
    .single-post .cl-review-compact .cl-card-details { padding: 18px 16px 14px; min-width: 0; }
    .single-post .cl-review-compact .cl-card-title { margin-bottom: 14px; }
    /* wpautop inserts empty paragraphs and breaks into some shortcode cards. */
    .single-post .cl-review-compact .cl-card-inner > p,
    .single-post .cl-review-compact .cl-card-details > p:empty,
    .single-post .cl-review-compact .cl-card-meta-grid > p:empty,
    .single-post .cl-review-compact .cl-card-aggregate > p:empty,
    .single-post .cl-review-compact .cl-card-actions > p:empty,
    .single-post .cl-review-compact .cl-card-actions > a > br,
    .single-post .cl-review-compact .cl-card-title > br,
    .single-post .cl-review-compact .cl-card-meta-item > br,
    .single-post .cl-review-compact .cl-card-meta-value > br,
    .single-post .cl-review-compact .cl-card-aggregate-body > br { display: none; }
    .single-post .cl-review-compact .cl-card-aggregate {
        padding: 10px 12px; margin-bottom: 12px; gap: 5px;
    }
    .single-post .cl-review-compact .cl-card-aggregate-label { color: #bfc0ca; }
    .single-post .cl-review-compact .cl-card-aggregate-body { gap: 10px; }
    .single-post .cl-review-compact .cl-card-meta-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 0;
    }
    .single-post .cl-review-compact .cl-card-meta-item {
        min-width: 0; padding: 9px 10px; overflow-wrap: anywhere;
    }
    .single-post .cl-review-compact:not(.cl-review-expanded) .cl-review-secondary { display: none; }
    .single-post .cl-review-compact .cl-card-actions:empty { display: none; }
    .single-post .cl-review-compact .cl-card-actions:not(:empty) { margin-top: 12px; }
    .single-post .cl-review-compact .cl-card-review-link { margin-bottom: 12px; }
    .single-post .cl-review-compact .cl-review-toggle {
        display: flex; align-items: center; justify-content: space-between; gap: 12px;
        width: 100%; min-height: 44px; margin: 2px 0 0; padding: 10px 2px;
        border: 0; border-radius: 2px; background: transparent; box-shadow: none;
        color: #e4e4eb; font: 600 13px/1.5 'Poppins', sans-serif;
        text-align: left; text-transform: none; letter-spacing: 0; cursor: pointer;
    }
    .single-post .cl-review-compact .cl-review-toggle::after {
        content: '+'; font: 400 22px/1 sans-serif;
    }
    .single-post .cl-review-compact .cl-review-toggle[aria-expanded="true"]::after { content: '−'; }
    .single-post .cl-review-compact .cl-review-toggle:focus-visible {
        outline: 2px solid var(--cl-card-accent, #ff3c3c); outline-offset: 2px;
    }
}
