:root {
  --byapp-grad-1: #22141f; /* Gradient1 - sfondo scuro elegante */
  --byapp-grad-2: #7a3f62; /* Gradient2 - rosa cipria */
  --byapp-grad-3: #c68dae; /* Gradient3 - pesca caldo */
  --byapp-grad-4: #fa4479; /* Gradient4 - rosa acceso (accent) */
  --byapp-grad-5: #ffdde8; /* Gradient5 - rosa chiarissimo (bg) */
  --byapp-grad-6: #fdf5f8; /* Gradient6 - verde salvia chiarissimo */

  --byapp-text-dark: #22141f;
  --byapp-text-muted: #6b6b6b;
}

body {
  background: var(--byapp-grad-6);
  color: var(--byapp-text-dark);
}

.container-personal {
  max-width: 960px;
  margin: 0 auto;
}

/* NAVBAR */
.navbar-salon {
  background: var(--byapp-grad-4);
}

.navbar-brand {
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #ffffff !important;
}

.nav-link {
  font-weight: 500;
  color: rgba(255, 255, 255, 0.9) !important;
}

.nav-link:hover {
  color: #ffffff !important;
  opacity: 0.85;
}

/* HERO */
.bg-hero-salon {
  background: var(--byapp-grad-5);
  color: var(--byapp-grad-2);
  position: relative;
  overflow: hidden;
}

.bg-hero-salon::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(
    circle at top right,
    rgba(255, 255, 255, 0.15),
    transparent 60%
  );
  pointer-events: none;
}

.hero-title {
  font-weight: 800;
  letter-spacing: 0.02em;
  color: var(--byapp-grad-2);;
}

.hero-subtitle {
  font-size: 1.1rem;
  color: var(--byapp-grad-2);;
}


/* BUTTONS */
.btn-salon-primary {
  background: var(--byapp-grad-4);
  border: none;
  color: var(--byapp-grad-1);
  font-weight: 700;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18);
}


.btn-salon-primary:hover {
  opacity: 0.95;
  transform: translateY(-1px);
}

.btn-salon-outline {
  border: 1px solid rgba(255, 255, 255, 0.7);
  color: var(--byapp-grad-2);
  font-weight: 500;
}

.btn-salon-outline:hover {
  background-color: rgba(255, 255, 255, 0.18);
}

.bg-hero-salon::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    120deg,
    rgba(255, 255, 255, 0.35),
    transparent 40%
  );
  pointer-events: none;
}

/* FEATURE CARDS */
.card-feature-salon {
  border: none;
  border-radius: 1rem;
  background: var(--byapp-grad-5);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
  border-top: 4px solid var(--byapp-grad-3);
}

.card-feature-salon h3 {
  font-size: 1.15rem;
  font-weight: 600;
}

.card-feature-salon p {
  color: var(--byapp-text-muted);
  font-size: 0.95rem;
}

.pill-tag {
  display: inline-block;
  padding: 0.25rem 0.8rem;
  border-radius: 999px;
  background: var(--byapp-grad-6);
  color: var(--byapp-grad-1);
  font-size: 0.8rem;
  font-weight: 500;
}

/* SECTION TITLE */
.section-title {
  font-weight: 700;
  font-size: 1.6rem;
}

.section-subtitle {
  color: var(--byapp-text-muted);
  font-size: 0.95rem;
}

/* TIMELINE STEPS */
.step-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--byapp-grad-4);
  box-shadow: 0 0 0 4px rgba(250, 68, 121, 0.25);
}

.step-line {
  width: 2px;
  flex: 1;
  background: linear-gradient(
    to bottom,
    rgba(34, 20, 31, 0.2),
    rgba(34, 20, 31, 0.02)
  );
}

/* FOOTER */
.footer-salon {
  background: linear-gradient(90deg, var(--byapp-grad-1), var(--byapp-grad-2));
}

.price-mini-note {
  opacity: .9;
}

.trust-card {
  border-top-color: var(--byapp-grad-6);
}

.price-card {
  border-top-color: var(--byapp-grad-3);
  transition: transform .15s ease, box-shadow .15s ease;
}

.price-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
}

.price-value {
  font-weight: 900;
  letter-spacing: 0.01em;
}

.price-subline {
  color: var(--byapp-text-muted);
  font-size: .95rem;
}

.best-value {
  border-top-color: var(--byapp-grad-4);
  background: linear-gradient(180deg, rgba(250, 68, 121, 0.08), #ffffff 35%);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.10);
}

.best-value-badge {
  background: linear-gradient(135deg, var(--byapp-grad-4), var(--byapp-grad-3));
  color: #22141f;
  font-weight: 700;
}

.price-list {
  margin: 0;
  padding-left: 1.1rem;
}

.price-list li {
  margin-bottom: .35rem;
  color: var(--byapp-text-muted);
}



/* admin dashboard helpers */
.dashboard-card .display-6 { font-size: 1.8rem; }
@media (max-width: 576px) {
  .dashboard-card .display-6 { font-size: 1.6rem; }
}

.chart-wrap {
  position: relative;
  width: 100%;
  height: 220px; /* default desktop */
}

.chart-wrap--sm { height: 180px; }
.chart-wrap--xs { height: 160px; }

@media (max-width: 992px) {
  .chart-wrap { height: 200px; }
}
@media (max-width: 576px) {
  .chart-wrap { height: 170px; }
  .chart-wrap--sm { height: 150px; }
  .chart-wrap--xs { height: 140px; }
}

.nav-pills .nav-link {
  color: #212529 !important;                 /* testo scuro */
  background-color: #e9ecef !important;      /* grigio chiaro */
  border-radius: 0.5rem;
  margin-right: 6px;
  font-weight: 500;
}

.nav-pills .nav-link:hover {
  background-color: #dee2e6 !important;
}

.nav-pills .nav-link.active {
  color: #fff !important;
  background-color: #0d6efd !important;      /* primary */
}