/* ── Global font ─────────────────────────────────────────────────────────── */
.pr-badge, .pr-scores, .pr-reviews, .pr-sort,
#pr-form-app, .pr-booking-card, .pr-form__group,
.pr-star-input, .pr-btn, #pr-comment, .pr-no-reviews {
    font-family: 'Rokh', 'Vazirmatn', sans-serif;
}

/* ── Liquid glass badge ──────────────────────────────────────────────────── */
.pr-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 11px 5px 8px;
    border-radius: 999px;
    font-family: 'Rokh', 'Vazirmatn', sans-serif;
    font-size: 13px;
    font-weight: 700;
    cursor: default;
    white-space: nowrap;
    /* Refined amber glass */
    background: linear-gradient(
        145deg,
        rgba(251, 191, 36, 0.95) 0%,
        rgba(217, 119, 6,  0.90) 100%
    );
    backdrop-filter: blur(12px) saturate(180%);
    -webkit-backdrop-filter: blur(12px) saturate(180%);
    border: 1px solid rgba(253, 224, 130, 0.5);
    box-shadow:
        0 1px 3px  rgba(0,   0,   0, 0.18),
        0 4px 12px rgba(180, 100, 0, 0.25),
        inset 0 1px 0 rgba(255, 248, 200, 0.55);
    color: #431407;
    letter-spacing: 0.1px;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.pr-badge:hover {
    transform: translateY(-1px);
    box-shadow:
        0 2px 6px  rgba(0,   0,   0, 0.22),
        0 6px 18px rgba(180, 100, 0, 0.32),
        inset 0 1px 0 rgba(255, 248, 200, 0.65);
}

.pr-badge__star  {
    font-size: 11px;
    line-height: 1;
    filter: drop-shadow(0 1px 1px rgba(0,0,0,0.2));
    margin-bottom: 1px;
}
.pr-badge__score { font-size: 14px; font-weight: 800; letter-spacing: -0.2px; }
.pr-badge__count { font-size: 11px; color: rgba(67, 20, 7, 0.65); font-weight: 500; }

/* ── Empty / no reviews badge ────────────────────────────────────────────── */
.pr-badge--empty {
    background: rgba(255, 255, 255, 0.22);
    backdrop-filter: blur(12px) saturate(130%);
    -webkit-backdrop-filter: blur(12px) saturate(130%);
    border: 1px solid rgba(255, 255, 255, 0.38);
    box-shadow:
        0 1px 3px  rgba(0,0,0,0.15),
        inset 0 1px 0 rgba(255,255,255,0.4);
    color: rgba(255, 255, 255, 0.92);
}
.pr-badge--empty .pr-badge__star  { font-size: 10px; opacity: 0.7; }
.pr-badge--empty .pr-badge__score { font-size: 11px; font-weight: 600; letter-spacing: 0; opacity: 0.9; }

/* ── Scores — inline tag layout ──────────────────────────────────────────── */
.pr-scores {
    display: flex;
    flex-direction: column;
    gap: 14px;
    direction: rtl;
    font-family: 'Rokh', 'Vazirmatn', sans-serif;
}

/* Header row: big score + count */
.pr-scores__header {
    display: flex;
    align-items: baseline;
    gap: 6px;
}

.pr-scores__overall-val {
    font-size: 38px;
    font-weight: 900;
    line-height: 1;
    color: #1a1a1a;
    letter-spacing: -1px;
}

.pr-scores__overall-sub { font-size: 15px; color: #666; font-weight: 500; }

.pr-scores__divider { color: #ccc; font-size: 16px; margin: 0 2px; }

.pr-scores__count {
    font-size: 13px;
    color: #888;
    font-weight: 400;
}

/* Tag row */
.pr-scores__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.pr-score-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 13px 7px 10px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    font-family: 'Rokh', 'Vazirmatn', sans-serif;
    white-space: nowrap;
    border: 1px solid transparent;
    transition: transform 0.15s ease;
}

.pr-score-tag:hover { transform: translateY(-1px); }

/* Gold tier: 4.5+ */
.pr-score-tag--gold {
    background: linear-gradient(135deg, rgba(251,191,36,0.18) 0%, rgba(217,119,6,0.12) 100%);
    border-color: rgba(217, 119, 6, 0.25);
    color: #78350f;
}

/* Silver tier: 3.5–4.4 */
.pr-score-tag--silver {
    background: linear-gradient(135deg, rgba(148,163,184,0.15) 0%, rgba(100,116,139,0.10) 100%);
    border-color: rgba(100,116,139,0.22);
    color: #334155;
}

/* Bronze tier: < 3.5 */
.pr-score-tag--bronze {
    background: linear-gradient(135deg, rgba(180,120,60,0.14) 0%, rgba(140,90,40,0.09) 100%);
    border-color: rgba(140,90,40,0.2);
    color: #6b3a1f;
}

.pr-score-tag__icon  { font-size: 14px; line-height: 1; }
.pr-score-tag__label { font-size: 12px; font-weight: 500; opacity: 0.85; }
.pr-score-tag__val   { font-size: 14px; font-weight: 800; letter-spacing: -0.3px; }

/* ── Reviews list ────────────────────────────────────────────────────────── */
.pr-reviews          { display: flex; flex-direction: column; gap: 14px; direction: rtl; }
.pr-review-item      {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 12px;
    padding: 16px 18px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}
.pr-review-item__header {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
.pr-review-item__name   { font-weight: 700; font-size: 14px; color: #1a1a1a; }
.pr-review-item__agent  { font-size: 12px; color: #888; }
.pr-review-item__stars  { margin-right: auto; color: #f59e0b; font-size: 13px; }
.pr-review-item__date   { font-size: 11px; color: #bbb; }
.pr-review-item__comment {
    font-size: 14px;
    color: #444;
    margin: 0;
    line-height: 1.7;
}

.pr-no-reviews {
    color: #aaa;
    font-size: 14px;
    text-align: center;
    padding: 28px 0;
}

/* ── Archive sort ────────────────────────────────────────────────────────── */
.pr-sort {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
    direction: rtl;
}

.pr-sort__btn {
    display: inline-flex;
    align-items: center;
    padding: 8px 18px 9px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 500;
    font-family: 'Rokh', 'Vazirmatn', sans-serif;
    text-decoration: none;
    background: rgba(255,255,255,0.65);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(0,0,0,0.09);
    color: #333;
    transition: all 0.15s ease;
    box-shadow: 0 1px 3px rgba(0,0,0,0.07);
}

.pr-sort__btn:hover {
    background: rgba(0,0,0,0.05);
    transform: translateY(-1px);
}

.pr-sort__btn--active {
    background: #1c1c1e;
    color: #fff;
    border-color: transparent;
    box-shadow: 0 2px 8px rgba(0,0,0,0.22);
}

/* ── Dashboard review form ───────────────────────────────────────────────── */
#pr-form-app    { direction: rtl; font-family: 'Rokh', 'Vazirmatn', sans-serif; }
.pr-loading     { color: #aaa; text-align: center; padding: 24px; font-size: 14px; }

.pr-booking-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #fafafa;
    border: 1px solid #ebebeb;
    border-radius: 12px;
    padding: 14px 18px;
    margin-bottom: 10px;
}

.pr-booking-card__info { font-size: 14px; line-height: 1.7; color: #333; }
.pr-card__shop  { display: block; font-size: 15px; font-weight: 700; color: #1a1a1a; margin-bottom: 3px; }
.pr-card__agent { font-size: 12px; }
.pr-card__meta  { font-size: 12px; color: #888; margin-top: 2px; }
.pr-booking-card__btn  {
    padding: 7px 18px 8px;
    background: #1c1c1e;
    color: #fff;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-size: 13px;
    font-family: 'Rokh', 'Vazirmatn', sans-serif;
    font-weight: 600;
    transition: opacity 0.15s;
}
.pr-booking-card__btn:hover { opacity: 0.82; }

.pr-form__title  { font-size: 17px; font-weight: 700; margin-bottom: 18px; color: #1a1a1a; }
.pr-form__group  { margin-bottom: 20px; }
.pr-form__group label {
    display: block;
    font-size: 14px;
    color: #444;
    margin-bottom: 8px;
    font-weight: 500;
}

.pr-star-input       { display: flex; gap: 8px; }
.pr-star-input__star {
    font-size: 30px;
    cursor: pointer;
    color: #e5e7eb;
    transition: color 0.1s, transform 0.12s;
    line-height: 1;
}
.pr-star-input__star.active,
.pr-star-input__star:hover {
    color: #f59e0b;
    transform: scale(1.18);
}

#pr-comment {
    width: 100%;
    padding: 11px 13px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    font-size: 14px;
    font-family: 'Rokh', 'Vazirmatn', sans-serif;
    box-sizing: border-box;
    resize: vertical;
    color: #333;
    line-height: 1.6;
    transition: border-color 0.15s;
}
#pr-comment:focus {
    outline: none;
    border-color: #f59e0b;
    box-shadow: 0 0 0 3px rgba(245,158,11,0.12);
}

.pr-btn {
    display: inline-flex;
    align-items: center;
    padding: 10px 24px 11px;
    border-radius: 9px;
    border: none;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    font-family: 'Rokh', 'Vazirmatn', sans-serif;
    margin-left: 8px;
    background: #1c1c1e;
    color: #fff;
    transition: opacity 0.15s, transform 0.12s;
}
.pr-btn:hover              { opacity: 0.84; transform: translateY(-1px); }
.pr-btn--secondary         { background: #f1f1f1; color: #444; }
.pr-btn:disabled           { opacity: 0.45; cursor: not-allowed; transform: none; }

#pr-result { margin-top: 14px; font-size: 14px; font-weight: 600; }
