/* ══════════════════════════════════════════════════════════════
   COTIZADOR DE AUTOMATIZACIONES · proyectatunegocio.cl
   ══════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   TOKENS DE MARCA — lo único que necesitas tocar para calzar
   con proyectatunegocio.cl. Cambia estos cinco valores y el
   sitio completo se reajusta. Los mismos hex están declarados
   en app.js (constante MARCA) para el encabezado del PDF:
   si cambias uno aquí, cámbialo también allá.
   ───────────────────────────────────────────────────────────── */
:root{
  --marca-ink:#0A1424;        /* azul profundo del sitio */
  --marca-azul:#1E6BFF;       /* azul de acción, botones y acentos */
  --marca-cian:#35D0E8;       /* cian de estado activo / seleccionado */
  --marca-panel:#101E33;      /* superficie de tarjetas */
  --marca-borde:#22384F;      /* líneas y bordes */
}

:root{
  --fondo:var(--marca-ink);
  --panel:var(--marca-panel);
  --panel-alto:#16263D;
  --panel-borde:var(--marca-borde);
  --borde-vivo:#33506D;
  --texto:#E9EEF5;
  --tenue:#93A4B8;
  --apagado:#63788F;
  --azul:var(--marca-azul);
  --azul-oscuro:#0F4BC4;
  --cian:var(--marca-cian);
  --cian-oscuro:#177C8E;
  --rojo:#FF6B60;
  --r:6px;
  --gutter:clamp(1.1rem,4vw,2.4rem);
  --max:1200px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--fondo);color:var(--texto);
  font-family:"Inter",system-ui,-apple-system,sans-serif;
  font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  background-image:
    radial-gradient(900px 480px at 80% -10%, rgba(30,107,255,.13), transparent 62%),
    radial-gradient(600px 380px at 5% 8%, rgba(53,208,232,.055), transparent 60%);
}
img{max-width:100%;display:block}
::selection{background:var(--azul);color:#fff}
:focus-visible{outline:2px solid var(--cian);outline-offset:3px;border-radius:2px}

.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gutter)}
.saltar{position:absolute;left:-999px;top:0;background:var(--azul);color:#fff;padding:.7rem 1rem;z-index:300;font-weight:600}
.saltar:focus{left:.5rem;top:.5rem}
.miel{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}

h1,h2,h3,.silk,.precio,.panel-cuenta b,.tramo-rango{font-family:"Barlow Condensed","Inter",sans-serif}
h1{margin:.45rem 0 0;font-size:clamp(2.05rem,5.6vw,3.5rem);font-weight:700;line-height:1.02;letter-spacing:-.012em;text-wrap:balance;max-width:20ch}
h2{margin:0;font-size:clamp(1.6rem,3.6vw,2.3rem);font-weight:700;line-height:1.08;letter-spacing:-.008em}
.bajada{color:var(--tenue);font-size:1.02rem;line-height:1.6;max-width:62ch;margin:.85rem 0 0}
.silk{margin:0;font-family:"Barlow Condensed",sans-serif;font-size:.92rem;font-weight:600;letter-spacing:.14em;color:var(--cian);text-transform:uppercase}

/* ─────────── cabecera ─────────── */
.cabecera{position:sticky;top:0;z-index:80;background:rgba(10,20,36,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--panel-borde)}
.cabecera-int{display:flex;align-items:center;gap:1rem;height:56px}
.marca{display:flex;align-items:center;gap:.6rem;font-weight:600;font-size:.95rem;letter-spacing:-.01em}
.marca b{color:var(--azul);font-weight:600}
.marca-led{width:9px;height:9px;border-radius:50%;background:var(--azul);box-shadow:0 0 10px 1px rgba(30,107,255,.8)}
.rack-estado{margin-left:auto;display:flex;align-items:center;gap:.45rem;font-size:.8rem;color:var(--tenue)}
.rack-estado i{width:7px;height:7px;border-radius:50%;background:var(--cian);box-shadow:0 0 8px rgba(53,208,232,.8);animation:latir 2.4s ease-in-out infinite}
@keyframes latir{0%,100%{opacity:.35}50%{opacity:1}}

/* ─────────── captura ─────────── */
.consola-entrada{padding:clamp(2.6rem,7vw,4.6rem) 0 clamp(1.6rem,4vw,2.4rem)}
.ficha-cliente{display:grid;gap:.9rem;margin-top:2rem;max-width:660px}
@media(min-width:640px){.ficha-cliente{grid-template-columns:1fr 1fr;gap:1.1rem}}
.campo label{display:block;font-family:"Barlow Condensed",sans-serif;font-size:.88rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tenue);margin-bottom:.4rem}
.campo input{
  width:100%;background:var(--panel);border:1px solid var(--panel-borde);border-radius:var(--r);
  padding:.78rem .85rem;color:var(--texto);font-family:inherit;font-size:1rem;transition:border-color .15s,box-shadow .15s;
}
.campo input::placeholder{color:var(--apagado)}
.campo input:focus{outline:none;border-color:var(--azul);box-shadow:0 0 0 3px rgba(30,107,255,.2)}
.campo input[aria-invalid="true"]{border-color:var(--rojo)}
.ayuda{display:block;font-size:.8rem;color:var(--cian);margin-top:.35rem;min-height:1.1em}
.nota-captura{margin:1rem 0 0;font-size:.88rem;color:var(--apagado);max-width:62ch}

/* ─────────── medidor de descuento ─────────── */
.medidor{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.5rem}
.tramo{background:var(--panel);border:1px solid var(--panel-borde);border-radius:var(--r);padding:.7rem .8rem .75rem;transition:border-color .25s,background .25s}
.tramo-barra{display:block;height:4px;border-radius:2px;background:var(--panel-borde);margin-bottom:.6rem;transition:background .25s,box-shadow .25s}
.tramo-rango{display:block;font-size:1.05rem;font-weight:700;color:var(--apagado);transition:color .25s;line-height:1}
.tramo-valor{display:block;font-size:.76rem;color:var(--apagado);margin-top:.25rem;line-height:1.3;transition:color .25s}
.tramo.encendido{border-color:var(--borde-vivo);background:var(--panel-alto)}
.tramo.encendido .tramo-barra{background:var(--cian);box-shadow:0 0 10px rgba(53,208,232,.5)}
.tramo.encendido .tramo-rango{color:var(--texto)}
.tramo.encendido .tramo-valor{color:var(--cian)}
.tramo.activo{border-color:var(--azul)}
.tramo.activo .tramo-barra{background:var(--azul);box-shadow:0 0 12px rgba(30,107,255,.7)}
.tramo.activo .tramo-valor{color:#7FA9FF}
.medidor-pie{margin:.75rem 0 0;font-size:.85rem;color:var(--tenue)}

/* ─────────── catálogo ─────────── */
.seccion{padding:clamp(2.4rem,6vw,3.8rem) 0}
.seccion-cab{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}
.btn-fantasma{
  margin-left:auto;background:transparent;border:1px solid var(--panel-borde);color:var(--tenue);
  border-radius:var(--r);padding:.5rem .85rem;font-family:inherit;font-size:.85rem;cursor:pointer;transition:.15s;
}
.btn-fantasma:hover{border-color:var(--borde-vivo);color:var(--texto)}

.rejilla{display:grid;gap:.9rem;grid-template-columns:1fr}
@media(min-width:700px){.rejilla{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1080px){.rejilla{grid-template-columns:repeat(3,1fr)}}

.tarjeta{
  position:relative;display:flex;flex-direction:column;cursor:pointer;
  background:var(--panel);border:1px solid var(--panel-borde);border-radius:10px;
  padding:1.15rem 1.1rem 1.05rem 1.55rem;overflow:hidden;
  transition:border-color .18s,background .18s,transform .12s;
}
.tarjeta::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--panel-borde);transition:background .2s,box-shadow .2s}
.tarjeta:hover{border-color:var(--borde-vivo);background:var(--panel-alto)}
.tarjeta:active{transform:scale(.995)}
.tarjeta.marcada{border-color:var(--cian-oscuro);background:var(--panel-alto)}
.tarjeta.marcada::before{background:var(--cian);box-shadow:0 0 14px rgba(53,208,232,.6)}
.tarjeta:focus-within{outline:2px solid var(--cian);outline-offset:2px}

.tarjeta input[type="checkbox"]{position:absolute;opacity:0;width:1px;height:1px}
.tarjeta-cab{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:.55rem}
.led{flex:none;width:22px;height:22px;border-radius:5px;margin-top:1px;border:1.5px solid var(--borde-vivo);display:grid;place-items:center;transition:.18s}
.led svg{width:12px;height:12px;opacity:0;transform:scale(.6);transition:.18s}
.tarjeta.marcada .led{background:var(--cian);border-color:var(--cian)}
.tarjeta.marcada .led svg{opacity:1;transform:none}
.tarjeta h3{font-size:1.12rem;font-weight:600;line-height:1.22;margin:0;flex:1}
.num{font-family:"Barlow Condensed",sans-serif;font-size:.82rem;font-weight:600;color:var(--apagado);letter-spacing:.08em;flex:none;padding-top:.18rem;font-variant-numeric:tabular-nums}
.tarjeta p{margin:0;color:var(--tenue);font-size:.92rem;line-height:1.5}
.tarjeta-pie{display:flex;align-items:baseline;gap:.5rem;margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--panel-borde)}
.precio{font-size:1.5rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.precio-nota{font-size:.76rem;color:var(--apagado)}

.badge-vivo{
  display:inline-flex;align-items:center;gap:.45rem;margin-bottom:.75rem;
  background:linear-gradient(96deg,rgba(30,107,255,.22),rgba(30,107,255,.06));
  border:1px solid rgba(53,208,232,.5);color:var(--cian);
  border-radius:100px;padding:.32rem .7rem .32rem .55rem;font-size:.76rem;font-weight:600;line-height:1.25;
}
.badge-vivo i{width:7px;height:7px;border-radius:50%;background:var(--cian);box-shadow:0 0 8px var(--cian);flex:none;animation:latir 1.8s ease-in-out infinite}
.tarjeta.destacada{border-color:rgba(53,208,232,.42)}
.tarjeta.destacada::before{background:var(--cian-oscuro)}
.tarjeta.destacada.marcada::before{background:var(--cian);box-shadow:0 0 14px rgba(53,208,232,.7)}
.nota-vivo{margin-top:.7rem;font-size:.82rem;color:var(--cian);line-height:1.45}

/* ─────────── cierre ─────────── */
.cierre{border-top:1px solid var(--panel-borde)}
.btn-ejecutar{
  display:flex;flex-direction:column;align-items:center;gap:.25rem;width:100%;max-width:560px;
  margin-top:1.8rem;padding:1.15rem 1.4rem;cursor:pointer;
  background:linear-gradient(180deg,#3D82FF,var(--azul));color:#fff;
  border:1px solid var(--azul-oscuro);border-radius:10px;font-family:inherit;
  transition:box-shadow .2s,transform .1s;
}
.btn-ejecutar:hover{box-shadow:0 0 30px rgba(30,107,255,.35)}
.btn-ejecutar:active{transform:translateY(1px)}
.btn-ejecutar[disabled]{background:var(--panel-alto);border-color:var(--panel-borde);color:var(--apagado);cursor:not-allowed;box-shadow:none}
.btn-ejecutar-texto{font-family:"Barlow Condensed",sans-serif;font-size:1.32rem;font-weight:700;line-height:1.1;text-align:center}
.btn-ejecutar-sub{font-size:.8rem;opacity:.82}
.aviso{margin:.9rem 0 0;color:var(--rojo);font-size:.9rem}
.aviso[hidden]{display:none}

.recibo{
  margin-top:1.6rem;max-width:600px;background:var(--panel);
  border:1px solid var(--cian-oscuro);border-left:4px solid var(--cian);
  border-radius:var(--r);padding:1.1rem 1.15rem;
}
.recibo h3{margin:0 0 .5rem;font-size:1.15rem;font-weight:700}
.recibo p{margin:0;color:var(--tenue);font-size:.92rem;line-height:1.55}
.recibo p + p{margin-top:.55rem}
.recibo code{color:var(--cian);font-size:.9rem}
.envio{display:flex;align-items:center;gap:.5rem;margin-top:.9rem;padding-top:.8rem;border-top:1px solid var(--panel-borde);font-size:.88rem}
.envio i{width:8px;height:8px;border-radius:50%;flex:none}
.envio.enviando i{background:var(--azul);animation:latir 1.1s ease-in-out infinite}
.envio.listo   i{background:var(--cian);box-shadow:0 0 8px var(--cian)}
.envio.falla   i{background:var(--rojo)}
.envio.enviando{color:var(--tenue)}
.envio.listo{color:var(--cian)}
.envio.falla{color:var(--rojo)}

/* ─────────── panel flotante ─────────── */
.colchon{height:112px}
.panel{
  position:fixed;left:0;right:0;bottom:0;z-index:90;
  background:rgba(16,30,51,.96);backdrop-filter:blur(12px);
  border-top:1px solid var(--panel-borde);
  box-shadow:0 -14px 34px rgba(0,0,0,.5);
  padding:.75rem 0 max(.75rem,env(safe-area-inset-bottom));
}
.panel-int{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.panel-cuenta{display:flex;align-items:center;gap:.55rem;flex:none}
.panel-cuenta b{font-size:2.1rem;font-weight:700;line-height:.9;color:var(--cian);font-variant-numeric:tabular-nums}
.panel-cuenta span{font-size:.72rem;color:var(--tenue);line-height:1.2}
.panel-cifras{display:flex;gap:1.1rem;margin:0;flex-wrap:wrap;align-items:baseline}
.panel-cifras div{display:flex;flex-direction:column;gap:.1rem}
.panel-cifras dt{font-size:.7rem;color:var(--apagado);letter-spacing:.05em;text-transform:uppercase;font-family:"Barlow Condensed",sans-serif;font-weight:600}
.panel-cifras dd{margin:0;font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums}
.panel-cifras .descuento dd{color:var(--cian)}
.panel-cifras .descuento[hidden]{display:none}
.panel-cifras .total dd{font-family:"Barlow Condensed",sans-serif;font-size:1.62rem;font-weight:700;line-height:1;color:#fff}
.panel-accion{margin-left:auto;display:flex;align-items:center;gap:.9rem}
.neto{font-size:.74rem;color:var(--apagado);white-space:nowrap}
.btn-panel{
  background:var(--azul);color:#fff;border:none;border-radius:var(--r);
  padding:.72rem 1.15rem;font-family:"Barlow Condensed",sans-serif;font-size:1.02rem;font-weight:700;
  letter-spacing:.02em;cursor:pointer;white-space:nowrap;transition:filter .15s;
}
.btn-panel:hover{filter:brightness(1.12)}
.btn-panel[disabled]{background:var(--panel-borde);color:var(--apagado);cursor:not-allowed}
@media(max-width:760px){
  .panel-int{gap:.65rem 1rem}
  .panel-cuenta b{font-size:1.7rem}
  .panel-cifras{gap:.9rem;order:2;width:100%}
  .panel-accion{margin-left:auto;order:1}
  .neto{display:none}
  .colchon{height:150px}
}

footer{padding:1.5rem 0 2rem;border-top:1px solid var(--panel-borde);font-size:.84rem;color:var(--apagado)}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}