/* ============================================================
   rechner.css — Styles nur für die Rechner-Unterseite
   baut auf den Variablen aus style.css auf
   ============================================================ */

/* Intro */
.calc-intro{padding:72px 0 32px}
.calc-intro h1{
  font-family:var(--serif);font-weight:400;
  font-size:clamp(30px,5vw,50px);line-height:1.12;letter-spacing:-.012em;
  max-width:16em;
}
.calc-intro h1 em{font-style:italic;color:var(--gold)}
.calc-intro p{color:rgba(242,232,216,.72);max-width:34em;margin-top:16px;font-size:17px}

/* Layout: Eingabe links, Ergebnisse rechts (gestapelt auf mobil) */
.calc-wrap{padding:8px 0 104px}
.calc-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
@media(max-width:900px){.calc-grid{grid-template-columns:1fr;gap:40px}}

/* ---------- Eingabe-Panel ---------- */
.calc-card{
  background:var(--card);border:1px solid var(--line);
  padding:32px 28px;position:relative;
}
.calc-card::before{
  content:"";position:absolute;top:-2px;left:-2px;width:14px;height:14px;background:var(--terracotta);
}
.calc-card .field{margin-bottom:30px}
.calc-card .field:last-child{margin-bottom:0}
.calc-label{
  font-family:var(--px);font-size:9px;letter-spacing:.08em;color:rgba(242,232,216,.7);
  text-transform:uppercase;display:block;margin-bottom:16px;
}

/* großer Tageswert-Readout */
.readout{
  font-family:var(--mono);font-weight:700;color:var(--gold);
  font-size:clamp(34px,6vw,46px);line-height:1;margin-bottom:18px;
}
.readout small{font-size:14px;color:rgba(242,232,216,.5);font-weight:400;margin-left:8px}

/* Range-Slider (pixelig, themenkonform) */
input[type=range].slider{
  -webkit-appearance:none;appearance:none;width:100%;height:10px;
  background:#2A1E14;outline:none;cursor:pointer;
}
input[type=range].slider::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;width:20px;height:24px;
  background:var(--terracotta);border:2px solid var(--ember);
  box-shadow:3px 3px 0 0 var(--terracotta-deep);cursor:pointer;
}
input[type=range].slider::-moz-range-thumb{
  width:20px;height:24px;border-radius:0;
  background:var(--terracotta);border:2px solid var(--ember);
  box-shadow:3px 3px 0 0 var(--terracotta-deep);cursor:pointer;
}
.slider-scale{
  display:flex;justify-content:space-between;
  font-family:var(--mono);font-size:11px;color:var(--oak);margin-top:10px;
}

/* Schnell-Voreinstellungen */
.presets{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.preset{
  font-family:var(--mono);font-size:12px;color:rgba(242,232,216,.75);
  background:transparent;border:1px solid var(--line);padding:8px 12px;cursor:pointer;
  transition:border-color .15s,color .15s;
}
.preset:hover{border-color:var(--gold);color:var(--gold)}
.calc-note{font-family:var(--mono);font-size:11px;color:var(--oak);margin-top:12px;line-height:1.6}
.calc-note a{color:var(--oak)}
.calc-note a:hover{color:var(--gold)}

/* Alter-Eingabe */
.age-row{display:flex;align-items:center;gap:14px}
.age-row input[type=number]{
  width:84px;font-family:var(--mono);font-size:18px;font-weight:700;color:var(--parchment);
  background:var(--ember);border:1px solid var(--line);padding:10px 12px;
}
.age-row input[type=number]:focus{outline:2px solid var(--gold);outline-offset:2px}
.age-row .age-hint{font-size:13px;color:rgba(242,232,216,.5)}

/* ---------- Ergebnisse ---------- */
.result-group{margin-bottom:34px}
.result-group:last-child{margin-bottom:0}
.result-head{
  font-family:var(--px);font-size:10px;letter-spacing:.08em;text-transform:uppercase;
  margin-bottom:18px;display:flex;align-items:center;gap:10px;
}
.result-head .swatch{width:12px;height:12px;display:inline-block}
.result-head.cost{color:var(--rose)}
.result-head.cost .swatch{background:var(--rose)}
.result-head.gain{color:var(--sage)}
.result-head.gain .swatch{background:var(--sage)}

.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media(max-width:480px){.result-grid{grid-template-columns:1fr}}
.result-card{
  background:var(--card);border:1px solid var(--line);padding:20px 20px 18px;
}
.result-card .num{font-family:var(--mono);font-size:30px;font-weight:700;line-height:1}
.result-card.cost .num{color:var(--terracotta)}
.result-card.gain .num{color:var(--sage)}
.result-card .num .u{font-size:14px;color:rgba(242,232,216,.55);font-weight:400;margin-left:5px}
.result-card .label{font-size:13px;color:rgba(242,232,216,.6);margin-top:8px}
.result-card .sub{font-family:var(--mono);font-size:11.5px;color:var(--oak);margin-top:4px}

/* Hervorgehobene Lifetime-Karte */
.result-card.hero-card{grid-column:1 / -1;border-color:rgba(232,192,96,.3);background:#1A140C}
.result-card.hero-card .num{font-size:clamp(34px,6vw,44px)}

.gain-note{
  margin-top:16px;padding:14px 16px;background:var(--ember);border-left:3px solid var(--sage);
  font-family:var(--mono);font-size:13px;color:rgba(242,232,216,.82);
}
.gain-note.hide{display:none}

/* CTA unten */
.calc-cta{
  text-align:center;border-top:1px solid var(--line);
  background:radial-gradient(ellipse 60% 50% at 50% 100%,rgba(168,200,120,.10),transparent 70%),var(--ember);
  padding:90px 0 96px;
}
.calc-cta h2{
  font-family:var(--serif);font-weight:400;font-size:clamp(28px,4.5vw,42px);
  line-height:1.15;max-width:16em;margin:0 auto;
}
.calc-cta h2 em{font-style:italic;color:var(--gold)}
.calc-cta p{color:rgba(242,232,216,.65);margin:18px auto 0;max-width:30em;font-size:16px}
.calc-cta .hero-ctas{justify-content:center;margin-top:32px}
