/* ==========================================================================
   Calculadora "¿Cuánto coche puedes permitirte?" — estilos oscuros,
   aislados bajo .calc-afford-widget para no heredar ni filtrar estilos
   del blog claro, y con namespace --caw- propio para no chocar con las
   variables --cw- de la calculadora de rentabilidad si ambas coincidieran
   alguna vez en la misma página.
   Se enqueue SOLO en páginas que contienen el shortcode [calculadora_asequibilidad].
   ========================================================================== */

.calc-afford-widget{
  --caw-bg: #0F1319;
  --caw-bg-2: #12161D;
  --caw-panel: #1A2029;
  --caw-panel-2: #1F2631;
  --caw-border: #2B3341;
  --caw-text: #ECEFF3;
  --caw-text-dim: #8C95A3;
  --caw-text-faint: #5B6473;
  --caw-teal: #3ECF8E;
  --caw-amber: #E8A23D;
  --caw-red: #E85D4D;
  --caw-blue: #5B8DEF;
  --caw-radius: 14px;

  background:
    radial-gradient(ellipse 900px 500px at 15% -10%, rgba(91,141,239,0.08), transparent),
    radial-gradient(ellipse 700px 500px at 100% 10%, rgba(232,162,61,0.06), transparent),
    var(--caw-bg);
  color: var(--caw-text);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  line-height: 1.5;
  border-radius: 16px;
  padding: clamp(20px, 4vw, 40px) clamp(16px, 3vw, 32px) 40px;
}
.calc-afford-widget *{ box-sizing: border-box; }

.calc-afford-widget .caw-eyebrow{
  font-family:'JetBrains Mono', monospace;
  font-size:12px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--caw-amber); margin-bottom:14px; display:flex; align-items:center; gap:10px;
}
.calc-afford-widget .caw-eyebrow::before{content:''; width:22px; height:1px; background:var(--caw-amber); display:inline-block;}
.calc-afford-widget h2.caw-h1{
  font-family:'Space Grotesk', sans-serif;
  font-size:clamp(24px, 4vw, 38px);
  font-weight:600;
  letter-spacing:-0.02em;
  margin:0 0 14px;
  max-width:820px;
  color: var(--caw-text);
}
.calc-afford-widget .caw-subtitle{ color:var(--caw-text-dim); font-size:16px; max-width:640px; margin:0 0 32px; }

.calc-afford-widget .caw-grid{display:grid; grid-template-columns: 1.15fr 0.85fr; gap:24px; align-items:start;}
@media (max-width: 880px){ .calc-afford-widget .caw-grid{grid-template-columns: 1fr;} }

.calc-afford-widget .caw-card{
  background:var(--caw-panel);
  border:1px solid var(--caw-border);
  border-radius:var(--caw-radius);
  padding:24px;
  margin-bottom:20px;
}
.calc-afford-widget .caw-card-head{display:flex; align-items:baseline; gap:10px; margin-bottom:18px;}
.calc-afford-widget .caw-card-num{
  font-family:'JetBrains Mono', monospace; font-size:12px; color:var(--caw-text-faint); font-weight:700;
}
.calc-afford-widget .caw-card-title{font-family:'Space Grotesk', sans-serif; font-size:17px; font-weight:600;}

.calc-afford-widget .caw-field{margin-bottom:18px;}
.calc-afford-widget .caw-field:last-child{margin-bottom:0;}
.calc-afford-widget .caw-field label{
  display:flex; justify-content:space-between; align-items:baseline;
  font-size:13.5px; color:var(--caw-text-dim); margin-bottom:8px; gap:12px;
}
.calc-afford-widget .caw-field label .caw-val{
  font-family:'JetBrains Mono', monospace; color:var(--caw-text); font-weight:600; font-size:13.5px;
  white-space:nowrap;
}
.calc-afford-widget .caw-help{font-size:12.5px; color:var(--caw-text-faint); margin-top:6px; line-height:1.45;}

.calc-afford-widget input[type=number], .calc-afford-widget select{
  width:100%; background:var(--caw-bg-2); border:1px solid var(--caw-border); color:var(--caw-text);
  padding:11px 12px; border-radius:9px; font-size:15px; font-family:'JetBrains Mono', monospace;
  outline:none; transition:border-color .15s ease;
}
.calc-afford-widget select{font-family:'Inter', sans-serif; font-size:14.5px;}
.calc-afford-widget input[type=number]:focus, .calc-afford-widget select:focus{
  border-color:var(--caw-blue); box-shadow:0 0 0 3px rgba(91,141,239,0.15);
}

.calc-afford-widget input[type=range]{
  -webkit-appearance:none; width:100%; height:4px; border-radius:2px;
  background:var(--caw-border); outline:none;
}
.calc-afford-widget input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none; width:18px; height:18px; border-radius:50%;
  background:var(--caw-amber); border:3px solid var(--caw-bg-2); cursor:pointer;
  box-shadow:0 0 0 1px var(--caw-amber);
}
.calc-afford-widget input[type=range]::-moz-range-thumb{
  width:18px; height:18px; border-radius:50%; background:var(--caw-amber);
  border:3px solid var(--caw-bg-2); cursor:pointer;
}

.calc-afford-widget .caw-row2{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
@media (max-width:520px){.calc-afford-widget .caw-row2{grid-template-columns:1fr;}}

.calc-afford-widget .caw-results{position:sticky; top:24px;}
.calc-afford-widget .caw-result-hero{
  background:linear-gradient(160deg, var(--caw-panel-2), var(--caw-panel));
  border:1px solid var(--caw-border);
  border-radius:var(--caw-radius);
  padding:28px 24px;
  margin-bottom:20px;
}
.calc-afford-widget .caw-result-label{font-size:12.5px; color:var(--caw-text-dim); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:8px;}
.calc-afford-widget .caw-result-figure{
  font-family:'Space Grotesk', sans-serif; font-weight:700; font-size:clamp(30px,4vw,40px);
  color:var(--caw-teal); line-height:1.05; letter-spacing:-0.01em;
}
.calc-afford-widget .caw-result-sub{font-size:13px; color:var(--caw-text-faint); margin-top:10px; line-height:1.5;}

.calc-afford-widget .caw-divider{height:1px; background:var(--caw-border); margin:20px 0;}

.calc-afford-widget .caw-alt-figure{display:flex; justify-content:space-between; align-items:baseline; margin-bottom:4px;}
.calc-afford-widget .caw-alt-figure .caw-lbl{font-size:13.5px; color:var(--caw-text-dim);}
.calc-afford-widget .caw-alt-figure .caw-num{font-family:'JetBrains Mono', monospace; font-weight:600; font-size:15px; color:var(--caw-text);}

/* Gauge */
.calc-afford-widget .caw-gauge-card{background:var(--caw-panel); border:1px solid var(--caw-border); border-radius:var(--caw-radius); padding:24px 24px 20px; margin-bottom:20px;}
.calc-afford-widget .caw-gauge-title{font-size:13px; color:var(--caw-text-dim); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:4px; text-align:center;}
.calc-afford-widget .caw-gauge-wrap{width:220px; height:112px; position:relative; margin:14px auto 6px; overflow:hidden;}
.calc-afford-widget .caw-gauge-arc{width:220px; height:220px; border-radius:50%; position:absolute; top:0; left:0;
  background: conic-gradient(from 180deg, var(--caw-teal) 0deg 105deg, var(--caw-amber) 105deg 135deg, var(--caw-red) 135deg 180deg, transparent 180deg 360deg);
}
.calc-afford-widget .caw-gauge-mask{width:158px; height:158px; border-radius:50%; background:var(--caw-panel); position:absolute; top:31px; left:31px;}
.calc-afford-widget .caw-gauge-needle{
  width:3px; height:92px; background:var(--caw-text); position:absolute; left:109px; bottom:0;
  transform-origin:bottom center; transform:rotate(-90deg); border-radius:2px;
  transition:transform .25s ease;
}
.calc-afford-widget .caw-gauge-pivot{width:12px; height:12px; border-radius:50%; background:var(--caw-text); position:absolute; left:104px; bottom:-6px;}
.calc-afford-widget .caw-gauge-readout{text-align:center; margin-top:2px;}
.calc-afford-widget .caw-gauge-pct{font-family:'JetBrains Mono', monospace; font-weight:700; font-size:30px; letter-spacing:-0.01em;}
.calc-afford-widget .caw-gauge-zone{font-size:12.5px; font-weight:600; margin-top:2px; text-transform:uppercase; letter-spacing:0.06em;}
.calc-afford-widget .caw-gauge-legend{display:flex; justify-content:center; gap:16px; margin-top:14px; font-size:11.5px; color:var(--caw-text-faint);}
.calc-afford-widget .caw-gauge-legend span{display:flex; align-items:center; gap:5px;}
.calc-afford-widget .caw-dot{width:7px; height:7px; border-radius:50%; display:inline-block;}

.calc-afford-widget .caw-breakdown-item{display:flex; justify-content:space-between; padding:9px 0; border-bottom:1px solid var(--caw-border); font-size:13.5px;}
.calc-afford-widget .caw-breakdown-item:last-child{border-bottom:none;}
.calc-afford-widget .caw-breakdown-item .caw-k{color:var(--caw-text-dim);}
.calc-afford-widget .caw-breakdown-item .caw-v{font-family:'JetBrains Mono', monospace; font-weight:600;}
.calc-afford-widget .caw-breakdown-total{display:flex; justify-content:space-between; padding-top:12px; margin-top:4px; border-top:1px solid var(--caw-border); font-size:14.5px; font-weight:600;}
.calc-afford-widget .caw-breakdown-total .caw-v{font-family:'JetBrains Mono', monospace; color:var(--caw-amber);}

.calc-afford-widget .caw-warning{
  border-radius:10px; padding:12px 14px; font-size:13px; line-height:1.5; margin-bottom:10px;
  border:1px solid; display:flex; gap:10px;
}
.calc-afford-widget .caw-warning.caw-red{background:rgba(232,93,77,0.08); border-color:rgba(232,93,77,0.35); color:#F3B3AA;}
.calc-afford-widget .caw-warning.caw-amber{background:rgba(232,162,61,0.08); border-color:rgba(232,162,61,0.35); color:#F0C888;}
.calc-afford-widget .caw-warning .caw-mark{font-weight:700; flex-shrink:0;}

.calc-afford-widget .caw-disclaimer{font-size:12px; color:var(--caw-text-faint); margin-top:24px; padding-top:18px; border-top:1px solid var(--caw-border); line-height:1.6;}

/* Barra fija móvil — z-index por debajo del ancla de anuncio global (ver
   footer.php) para no apilarse encima; en móvil queda pegada justo por
   encima gracias al padding-bottom del propio widget, no del body. */
.calc-afford-widget .caw-sticky-bar{
  display:none;
  position:fixed; bottom:0; left:0; right:0; z-index:15;
  background:rgba(19,23,30,0.94); backdrop-filter:blur(8px);
  border-top:1px solid var(--caw-border);
  padding:12px 20px; align-items:center; justify-content:space-between;
}
.calc-afford-widget .caw-sticky-bar .caw-lbl{font-size:11.5px; color:var(--caw-text-dim); text-transform:uppercase; letter-spacing:0.06em;}
.calc-afford-widget .caw-sticky-bar .caw-num{font-family:'Space Grotesk', sans-serif; font-weight:700; font-size:19px; color:var(--caw-teal);}
@media (max-width:880px){
  .calc-afford-widget .caw-sticky-bar{display:flex;}
  .calc-afford-widget{padding-bottom:78px;}
  .calc-afford-widget .caw-results{position:static;}
}
