/* RevalorART Home · calculadora de presupuesto orientativo (R56, solo vista previa).
   Usa las variables de styles.css. Colores de borde/error: mismos aprobados que formulario-captacion.css. */
:root{
  --calc-borde:#857E72;
  --calc-error:#9E3B2B;
  --calc-error-fondo:#FBF1EE;
}
.aviso-estimacion{max-width:40rem;font-size:.95rem;color:var(--piedra);border-left:3px solid var(--dorado);padding-left:.9rem;margin-top:1.2rem}

.calc-tarjeta{max-width:720px;margin:0 auto}

.calc-errores{background:var(--calc-error-fondo,#FBF1EE);border-left:4px solid var(--calc-error,#9E3B2B);border-radius:var(--radio);padding:1rem 1.2rem;color:var(--antracita-prof);margin:0 0 1.5rem}
.calc-errores p{color:var(--calc-error,#9E3B2B);font-weight:600;margin:0 0 .4rem}
.calc-errores ul{margin:0;padding-left:1.1rem}
.calc-errores:focus{outline:3px solid var(--bronce);outline-offset:2px}
.calc-errores[hidden]{display:none}

#calculadora{display:flex;flex-direction:column;gap:1.5rem}

.calc-campo{margin:0}
.calc-campo>label{display:block;font-weight:600;font-size:.95rem;color:var(--antracita);margin-bottom:.4rem}
.calc-obligatorio{color:var(--bronce);font-weight:700}
#calculadora input[type="number"]{
  font-family:var(--sans);font-size:1rem;line-height:1.5;color:var(--antracita-prof);
  background:var(--crema);border:1.5px solid var(--calc-borde,#857E72);border-radius:10px;
  padding:.75rem .9rem;min-height:48px;width:100%;max-width:16rem;box-sizing:border-box}
#calculadora input[type="number"]:hover{border-color:var(--antracita)}
#calculadora input[type="number"]:focus-visible,
#calculadora input[type="number"]:focus{border-color:var(--bronce);outline:3px solid var(--bronce);outline-offset:2px}
#calculadora input[aria-invalid="true"]{border-color:var(--calc-error,#9E3B2B);border-width:2px}

.calc-ayuda{font-size:.875rem;color:var(--piedra);margin:.35rem 0 0}
.calc-error{color:var(--calc-error,#9E3B2B);font-size:.875rem;font-weight:600;margin:.35rem 0 0}
.calc-error:empty{display:none}

.calc-fieldset{border:1.5px solid var(--linea);border-radius:var(--radio);padding:1rem 1.2rem;margin:0;background:#fff}
.calc-fieldset legend{font-family:var(--serif);font-weight:600;color:var(--antracita);font-size:1.05rem;padding:0 .3rem;margin-left:-.3rem}
.calc-fieldset .calc-ayuda,.calc-fieldset .calc-error{margin-left:0}

.calc-opcion{display:flex;align-items:center;gap:.6rem;min-height:44px;padding:.3rem 0;cursor:pointer;font-size:1rem;color:var(--antracita-prof)}
.calc-opcion input{width:22px;height:22px;flex:none;accent-color:var(--bronce);margin:0}
.calc-opcion input:focus-visible{outline:3px solid var(--bronce);outline-offset:2px}
.calc-opcion input:disabled{cursor:not-allowed}
.calc-opcion:has(input:disabled){color:var(--piedra)}

.calc-fieldset .btn,
#calculadora>.btn{align-self:flex-start;min-height:52px;font-size:1rem}
#calculadora>.btn:focus-visible{outline:3px solid var(--bronce);outline-offset:3px}

.calc-resultado{margin-top:1.5rem;background:var(--crema-calido);border-left:4px solid var(--dorado);border-radius:var(--radio);padding:1.4rem 1.5rem;color:var(--antracita-prof)}
.calc-resultado[hidden]{display:none}
.calc-resultado p{margin:0 0 .6rem}
.calc-resultado p:last-child{margin-bottom:0}
#calc-resultado-texto{font-family:var(--serif);font-size:1.3rem;font-weight:600;color:var(--antracita)}
.calc-resultado-aviso{font-size:.9rem;color:var(--piedra)}
.calc-resultado:focus{outline:3px solid var(--bronce);outline-offset:2px}

@media (max-width:640px){
  #calculadora input[type="number"]{max-width:none}
  #calculadora>.btn{width:100%;justify-self:stretch;align-self:stretch}
}
