/* ============================================
   Review Verdict – Block Component
   Final verdict box for reviews with score
   circle, star rating, and badge decoration
   ============================================ */

.review-verdict {
    background-color: var(--color-wash-yellow);
    padding: var(--space-8);
    border-radius: var(--radius-xl);
    border: 2px solid var(--color-ink-10);
    position: relative;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.06);
    max-width: 48rem;
}

@media (min-width: 768px) {
    .review-verdict {
        padding: var(--space-10);
    }
}

/* Badge / stamp in top-right corner */
.review-verdict__badge {
    position: absolute;
    top: -1.5rem;
    right: -1.5rem;
    background-color: var(--color-sun-yellow);
    color: var(--color-ink);
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: var(--text-xl);
    padding: var(--space-3) var(--space-4);
    transform: rotate(12deg);
    box-shadow: var(--shadow-md);
    border: 3px solid var(--color-white);
    border-radius: var(--radius-lg);
    z-index: 10;
    transition: transform var(--transition-slow);
}

.review-verdict__badge:hover {
    transform: rotate(12deg) scale(1.1);
}

/* Content layout */
.review-verdict__content {
    display: flex;
    flex-direction: column;
    gap: var(--space-8);
    align-items: center;
}

@media (min-width: 768px) {
    .review-verdict__content {
        flex-direction: row;
    }
}

/* Info section (left side) */
.review-verdict__info {
    flex: 1;
    text-align: center;
}

@media (min-width: 768px) {
    .review-verdict__info {
        text-align: left;
    }
}

/* Title */
.review-verdict__title {
    font-family: var(--font-heading);
    font-size: var(--text-3xl);
    font-weight: 700;
    color: var(--color-ink);
    margin-bottom: var(--space-3);
}

/* Description */
.review-verdict__desc {
    font-family: var(--font-body);
    font-size: var(--text-lg);
    color: var(--color-ink-70);
    margin-bottom: var(--space-4);
    line-height: 1.6;
}

/* Star/tent rating row */
.review-verdict__rating {
    display: flex;
    gap: var(--space-2);
    justify-content: center;
    margin-bottom: var(--space-2);
}

@media (min-width: 768px) {
    .review-verdict__rating {
        justify-content: flex-start;
    }
}

/* Filled tent icon */
.review-verdict__rating i {
    width: 24px;
    height: 24px;
}

.review-verdict__rating .review-verdict__star--filled {
    color: var(--color-otto-dark);
    fill: var(--color-otto-dark);
}

/* Empty tent icon */
.review-verdict__rating .review-verdict__star--empty {
    color: var(--color-ink-20);
    fill: none;
}

/* Rating text */
.review-verdict__rating-text {
    font-size: var(--text-sm);
    font-family: monospace;
    color: var(--color-ink-50);
    text-align: center;
}

@media (min-width: 768px) {
    .review-verdict__rating-text {
        text-align: left;
    }
}

/* Score circle */
.review-verdict__score {
    width: 8rem;
    height: 8rem;
    min-width: 8rem;
    border-radius: var(--radius-full);
    border: 4px solid var(--color-white);
    box-shadow: var(--shadow-lg);
    background-color: var(--color-otto-green);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-heading);
    font-size: var(--text-4xl);
    font-weight: 700;
    color: var(--color-white);
    transform: rotate(3deg);
    transition: transform var(--transition-slow);
}

.review-verdict__score:hover {
    transform: rotate(-3deg) scale(1.05);
}
