/* Calculadora de alquiler – estilos estructurales mínimos (colores/tipografía desde el kit de Elementor). */
.ecal-tabla { width: 100%; border-collapse: collapse; margin: 0 0 1em; }
.ecal-tabla th, .ecal-tabla td { padding: .45em .6em; text-align: left; vertical-align: top; border-bottom: 1px solid rgba(0, 0, 0, .1); }
.ecal-tabla--datos th { width: 22%; font-weight: 700; }
.ecal-tabla--lineas thead th { font-weight: 700; border-bottom-width: 2px; }
.ecal-col-num { text-align: right; white-space: nowrap; }
.ecal-total td { font-weight: 700; }
.ecal-total--total td { font-size: 1.15em; border-bottom: 2px solid currentColor; }
.ecal-aviso, .ecal-nota { font-size: .85em; opacity: .8; }
.ecal-oferta__cabecera { display: flex; justify-content: space-between; gap: 1em; flex-wrap: wrap; }
.ecal-exito { font-weight: 700; }
.ecal-acciones { display: flex; gap: .6em; flex-wrap: wrap; margin-top: 1em; }
.ecal-boton { display: inline-block; padding: .6em 1.2em; text-decoration: none; font-weight: 700; text-transform: uppercase; }
.ecal-estimacion { margin: 1em 0; padding: 1em; border: 1px solid rgba(0, 0, 0, .12); }
.ecal-estimacion[hidden] { display: none; }
.ecal-estimacion__titulo { font-weight: 700; margin: 0 0 .5em; }
.ecal-estimacion .ecal-tabla { font-size: .95em; }
.ecal-estimacion__error { font-weight: 700; }
.ecal-resultado { margin-top: 1em; }
.ecal-tarifa__lista { list-style: none; padding: 0; margin: 0 0 .75em; }
.ecal-tarifa__lista li { display: flex; justify-content: space-between; gap: 1em; padding: .25em 0; border-bottom: 1px solid rgba(0, 0, 0, .08); }
.ecal-tarifa__precio { font-weight: 700; }
.ecal-tarifa__nota { font-size: .85em; opacity: .8; }
