/* ReviewBoost — app overlay on rv-theme.css. */

.rb-nav-business-logo {
  object-fit: contain;
  vertical-align: -0.2em;
}

/* Auth (login / register / forgot password) */
.auth-page .card {
  max-width: 440px;
  width: 100%;
}

/* Empty states */
.empty-state {
  text-align: center;
  padding: 3rem 1rem;
  color: inherit;
}

.empty-state > i:first-of-type {
  font-size: 3rem;
  margin-bottom: 1rem;
  opacity: 0.5;
}

/* Customer review landing — star picker */
.star-rating {
  display: inline-flex;
  gap: 4px;
}

.star-rating .star {
  font-size: 2rem;
  cursor: pointer;
  color: var(--rv-gray-200);
  transition: color 0.15s ease, transform 0.1s ease;
  user-select: none;
}

.star-rating .star:hover,
.star-rating .star.active {
  color: var(--rv-warning);
  transform: scale(1.1);
}

/* Campaign reward tier editor */
.tier-row {
  background: var(--rv-gray-50);
  border-radius: 8px;
  padding: 1rem;
  margin-bottom: 0.75rem;
}

.stat-card {height: 100%;}
.stat-card-link { text-decoration: none; color: inherit; display: block; height: 100%; }
.stat-card-link .stat-card { transition: transform .15s, box-shadow .15s; }
.stat-card-link:hover .stat-card { transform: translateY(-2px); box-shadow: 0 .5rem 1rem rgba(0,0,0,.1) !important; }

@media (max-width: 768px) {
  .no-border-on-sm {
    border-right: none !important;
  }
}


.kiosk-page {
  min-height: 100vh; 
  display: flex; 
  align-items: center;
  background: linear-gradient(180deg, #ffffff 3rem, color-mix(in srgb, var(--rv-accent), white 90%) 100%)
}

.kiosk-card {
  box-shadow: var(--bs-box-shadow-lg);
  max-width: 480px;
  margin: auto;
}

.bg-accent-extra-subtle {
  background: color-mix(in srgb, var(--rv-accent), white 95%);
}