/* ============================================================
   Mediateca – recensioni
   library-reviews.css
   ============================================================ */

.reviews-list{
  display: grid;
  gap: 0.6rem;
}

.review-censored-notice{
  font-size: 1rem;
  line-height: 1.35;
  font-weight: 600;
}

.review-card{
  border: 2px solid rgba(0, 0, 0, 0.45);
  position: relative;
  border-radius: 0.75rem;
  padding: 0.75rem 0.85rem;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.05);
}

/* pari/dispari */
.review-card.review-even{
  background: #fff;
}
.review-card.review-even .review-quote{
  background: rgba(0, 0, 0, 0.04);
  border-left-color: rgba(0, 0, 0, 0.18);
}

.review-card.review-odd{
  background: rgba(0, 0, 0, 0.04);
}
.review-card.review-odd .review-quote{
  background: #fff;
  border-left-color: rgba(0, 0, 0, 0.22);
}

/* mia recensione */
.review-card.review-mine{
  background: rgba(13, 110, 253, 0.12);
  border-color: rgba(13, 110, 253, 0.45);
}
.review-card.review-mine.review-odd{
  background: rgba(13, 110, 253, 0.12);
}
.review-card.review-mine .review-quote{
  background: #fff;
  border-left-color: rgba(13, 110, 253, 0.45);
}

.review-card.review-mine.review-mine-censored{
  background: rgba(220, 53, 69, 0.14);
  border-color: rgba(220, 53, 69, 0.45);
}

.review-card.review-mine.review-mine-censored.review-odd{
  background: rgba(220, 53, 69, 0.14);
}

.review-card.review-mine.review-mine-censored .review-quote{
  background: #fff5f6;
  border-left-color: rgba(220, 53, 69, 0.5);
}

/* header */
.review-head{
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  justify-content: space-between;
}

.review-title{
  display: block;
  line-height: 1.2;
}
.review-title > *{
  display: inline;
}

.review-name{
  font-style: normal !important;
  font-weight: 700;
  opacity: 1;
}

.review-nick{
  font-style: italic !important;
  font-weight: 700;
  opacity: 1;
}

.review-date{
  font-style: italic;
  opacity: 0.85;
}

.review-said{
  font-style: normal;
  font-weight: 400;
  opacity: 0.85;
}

/* body */
.review-body{
  margin-top: 0.5rem;
}

/* quote */
.review-quote{
  margin: 0.4rem 0 0 0;
  padding: 0.6rem 0.8rem;

  border-left: 4px solid rgba(0, 0, 0, 0.18);
  background: rgba(0, 0, 0, 0.03);
  border-radius: 0.35rem;

  font-style: normal;
  text-align: left;
  quotes: none;

  font-size: 1rem;
  line-height: 1.45;

  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.review-quote::before,
.review-quote::after{
  content: none !important;
}

.review-empty{
  opacity: 0.65;
}

/* voto badge */
.voto-badge{
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  min-width: 3.25rem;
  padding: 0.35rem 0.6rem;
  border-radius: 999px;
  font-weight: 800;
  border: 1px solid rgba(0, 0, 0, 0.18);
}

.voto-max{
  font-size: 0.85em;
  font-weight: 700;
  opacity: 0.75;
  margin-left: 0.1rem;
}

.voto-0{ background: #b71c1c; color: #fff; }
.voto-1{ background: #c62828; color: #fff; }
.voto-2{ background: #d32f2f; color: #fff; }
.voto-3{ background: #ef6c00; color: #000; }
.voto-4{ background: #f9a825; color: #000; }
.voto-5{ background: #fdd835; color: #000; }
.voto-6{ background: #d4e157; color: #000; }
.voto-7{ background: #aed581; color: #000; }
.voto-8{ background: #81c784; color: #000; }
.voto-9{ background: #43a047; color: #fff; }
.voto-10{ background: #2e7d32; color: #fff; }
.voto-null{ background: #e0e0e0; color: #000; }
