/* =============================================
   THE COST OF WAITING
   ============================================= */

/* ---------- the headline finding ---------- */
.pi-finding {
  max-width: 54rem;
  margin: 0 auto;
  text-align: center;
  padding: 2.6rem 2rem;
  border-radius: 20px;
  border: 1px solid transparent;
  background:
    linear-gradient(155deg, rgba(255,250,235,0.97), rgba(252,238,205,0.94)) padding-box,
    linear-gradient(135deg, rgba(212,165,0,0.6), rgba(255,209,0,0.28)) border-box;
  box-shadow: 0 14px 40px rgba(60,30,5,0.10);
}
.pi-finding-kicker {
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #8A6A2A;
  margin-bottom: 1rem;
}
.pi-finding-line {
  font-family: var(--serif);
  font-size: clamp(1.35rem, 3.2vw, 2.1rem);
  font-weight: 700;
  line-height: 1.35;
  color: #1B0E03;
  letter-spacing: -0.01em;
}
.pi-finding-line strong { color: #8A5A0A; }
.pi-finding-line em { font-style: italic; color: #A5320E; }
.pi-finding-sub {
  margin-top: 1.05rem;
  font-size: 0.95rem;
  line-height: 1.75;
  color: #4A3212;
}

/* ---------- the chart ---------- */
.pi-chart { display: flex; flex-direction: column; gap: 0.55rem; }

.pi-bar-row {
  display: grid;
  grid-template-columns: 190px 1fr 170px;
  align-items: center;
  gap: 1.1rem;
  padding: 0.85rem 1rem;
  border-radius: 12px;
  transition: background 0.35s ease;
}
.pi-bar-row:hover { background: rgba(255,209,0,0.09); }

.pi-bar-label {
  font-family: var(--serif);
  font-size: 1rem;
  font-weight: 700;
  color: #1B0E03;
  line-height: 1.25;
}
.pi-bar-label em {
  display: block;
  font-family: var(--sans);
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 600;
  color: #8A6A2A;
  margin-top: 0.14rem;
}

.pi-bar-track {
  height: 30px;
  border-radius: 8px;
  background: rgba(120,70,0,0.09);
  overflow: hidden;
}
.pi-bar-fill {
  display: block;
  height: 100%;
  width: 0;
  border-radius: 8px;
  background: linear-gradient(90deg, #F7CE2A, #D4A500);
  transition: width 1.1s cubic-bezier(.2,.8,.3,1);
}
.pi-bar-row.visible .pi-bar-fill { width: var(--w); }
.pi-bar-fill.pi-bar-worst { background: linear-gradient(90deg, #E08A3C, #C2521C); }
.pi-bar-fill.pi-bar-na    { background: rgba(120,70,0,0.22); }

.pi-bar-val {
  text-align: right;
  font-size: 1rem;
  font-weight: 700;
  color: #1B0E03;
  line-height: 1.25;
}
.pi-bar-val em {
  display: block;
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 600;
  color: #8A6A2A;
  margin-top: 0.14rem;
}
.pi-bar-val-na {
  font-size: 0.76rem;
  font-weight: 600;
  color: #8A6A2A;
  line-height: 1.45;
}

.pi-chart-note {
  max-width: 46rem;
  margin: 2rem auto 0;
  text-align: center;
  font-size: 0.86rem;
  line-height: 1.8;
  color: #4A3212;
}

/* ---------- calculator on the dark panel ---------- */
.pi-panel, .pi-out { border-color: rgba(212,165,0,0.42); }

.pi-range {
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
  height: 6px;
  border-radius: 100px;
  background: rgba(120,70,0,0.22);
  outline: none;
}
.pi-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 24px; height: 24px;
  border-radius: 50%;
  background: linear-gradient(150deg, #F7CE2A, #D4A500);
  border: 2px solid #FFFDF7;
  box-shadow: 0 3px 10px rgba(120,70,0,0.35);
  cursor: pointer;
}
.pi-range::-moz-range-thumb {
  width: 22px; height: 22px;
  border-radius: 50%;
  background: linear-gradient(150deg, #F7CE2A, #D4A500);
  border: 2px solid #FFFDF7;
  box-shadow: 0 3px 10px rgba(120,70,0,0.35);
  cursor: pointer;
}
.pi-range:focus-visible { box-shadow: 0 0 0 3px rgba(255,209,0,0.35); }
.pi-range-out {
  display: block;
  margin-top: 0.5rem;
  font-family: var(--serif);
  font-size: 1.3rem;
  font-weight: 700;
  color: #1B0E03;
}

.pi-verdict {
  margin-top: 1.3rem;
  padding: 1rem 1.15rem;
  border-radius: 12px;
  background: rgba(165,50,14,0.09);
  border: 1px solid rgba(165,50,14,0.28);
  font-size: 0.9rem;
  line-height: 1.65;
  color: #7A2A14;
}
.pi-verdict[hidden] { display: none; }
.pi-verdict strong { color: #5C1C0A; }

/* ---------- responsive ---------- */
@media (max-width: 820px) {
  .pi-finding { padding: 1.9rem 1.3rem; }
  .pi-bar-row {
    grid-template-columns: 1fr auto;
    grid-template-areas: 'label val' 'track track';
    gap: 0.5rem 0.9rem;
    padding: 0.9rem 0.75rem;
  }
  .pi-bar-label { grid-area: label; font-size: 0.94rem; }
  .pi-bar-val   { grid-area: val; font-size: 0.94rem; }
  .pi-bar-track { grid-area: track; height: 22px; }
}

@media (prefers-reduced-motion: reduce) {
  .pi-bar-fill { transition: none; }
  .pi-bar-row .pi-bar-fill { width: var(--w); }
}
