/* ===== Hero ===== */
.hero-dollqexvani {
  background: linear-gradient(180deg, var(--color-bg-alt) 0%, var(--color-bg) 70%);
  border-bottom: 1px solid var(--color-border);
  padding: 3.6rem 0 2.4rem;
}
.hero-dollqexvani__inner { display: flex; flex-wrap: wrap; gap: 2.5rem; align-items: center; }
.hero-dollqexvani__copy { flex: 1 1 460px; min-width: 0; }
.hero-dollqexvani__lede { font-size: 1.05rem; max-width: 520px; }
.hero-dollqexvani__actions { display: flex; gap: 1rem; flex-wrap: wrap; margin-top: 1.6rem; }
.hero-dollqexvani__art { flex: 1 1 280px; min-width: 0; display: flex; justify-content: center; }

.ribbon-deco { width: 100%; max-width: 260px; }
.ribbon-deco svg { width: 100%; height: auto; }

/* ===== D-Score / E-Score balance widget ===== */
.score-widget {
  background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius);
  padding: 2rem; display: flex; flex-wrap: wrap; gap: 2.2rem;
}
.score-widget__controls { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 1.6rem; }
.score-slider__head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 0.4rem; }
.score-slider__name { font-family: var(--ff-head); font-weight: 600; font-size: 0.98rem; letter-spacing: 0.01em; }
.score-slider__value { font-family: var(--ff-head); font-weight: 600; color: var(--color-rose-dark); font-size: 1.1rem; }
.score-slider__hint { font-size: 0.86rem; margin: 0.4rem 0 0; }
input[type="range"] {
  -webkit-appearance: none; appearance: none; width: 100%; height: 6px; border-radius: 3px;
  background: var(--color-border); padding: 0; cursor: pointer;
}
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none; width: 20px; height: 20px; border-radius: 50%;
  background: var(--color-rose); border: 3px solid #ffffff; box-shadow: 0 0 0 1px var(--color-rose-dark);
  cursor: pointer;
}
input[type="range"]::-moz-range-thumb {
  width: 20px; height: 20px; border-radius: 50%; background: var(--color-rose);
  border: 3px solid #ffffff; box-shadow: 0 0 0 1px var(--color-rose-dark); cursor: pointer;
}

.score-widget__display { flex: 1 1 280px; min-width: 0; display: flex; flex-direction: column; gap: 1.2rem; align-items: center; }
.balance-wrap { background: var(--color-bg-alt); border-radius: var(--radius); padding: 0.8rem; display: flex; align-items: center; justify-content: center; width: 100%; }
.balance-wrap svg.balance-beam { flex: 0 0 auto; height: 180px; width: auto; display: block; max-width: 100%; }
.balance-beam__post { fill: var(--color-muted); }
.balance-beam__base { fill: var(--color-muted); }
.balance-beam__bar { fill: var(--color-rose); transition: transform 0.1s ease; }
.balance-beam__gymnast { fill: var(--color-gold); stroke: var(--color-ink); stroke-width: 1.5; }

.score-readout { display: flex; gap: 1.6rem; flex-wrap: wrap; width: 100%; justify-content: center; }
.score-readout__item { flex: 1 1 100px; min-width: 0; text-align: center; }
.score-readout__num { display: block; font-family: var(--ff-head); font-weight: 600; font-size: 1.7rem; color: var(--color-rose-dark); }
.score-readout__label { display: block; font-size: 0.74rem; color: var(--color-muted); text-transform: uppercase; letter-spacing: 0.06em; margin-top: 0.2rem; }
.score-category {
  display: inline-block; background: var(--color-rose-dark); color: #ffffff;
  font-family: var(--ff-head); font-weight: 600; letter-spacing: 0.01em;
  font-size: 0.94rem; padding: 0.5em 1.1em; border-radius: var(--radius);
}
