:root{
  --navy:#063F5C; --teal:#3593B8; --sky:#9FE7F5; --coral:#FF5A5F; --orange:#F3800D;
  --yellow:#F7AD1A; --green:#25D366; --bg:#F3FBFD; --card:#FFFFFF;
  --line:#DCF0F5; --muted:#4C7086;
}
*{box-sizing:border-box;}
body{margin:0;font-family:'Poppins',Arial,sans-serif;background:var(--bg);color:#14202B;}
a{color:inherit;}
.wrap{max-width:960px;margin:0 auto;padding:0 20px;}
header.site{background:var(--sky);padding:22px 0;}
header.site .row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
header.site img.logo{height:56px;}
header.site .wa{background:var(--green);color:#06210F;font-weight:700;padding:10px 18px;border-radius:30px;text-decoration:none;font-size:14px;}
header.site .countdown{display:flex;align-items:baseline;gap:7px;background:#fff;border-radius:30px;padding:8px 18px;box-shadow:0 4px 10px rgba(6,63,92,.08);}
header.site .countdown .n{color:var(--orange);font-weight:800;font-size:20px;line-height:1;}
header.site .countdown .l{color:var(--navy);font-weight:600;font-size:12.5px;}
@media (max-width:640px){
  header.site .countdown{order:3;flex-basis:100%;justify-content:center;}
}

.hero{padding:34px 24px 30px;text-align:center;background:var(--navy);border-radius:22px;margin-top:14px;}
.hero .badge{display:inline-block;background:#fff;color:var(--orange);transform:rotate(-2deg);font-weight:800;letter-spacing:2px;padding:8px 22px;border-radius:20px;font-size:13px;margin-bottom:14px;box-shadow:0 4px 10px rgba(0,0,0,.15);}
.hero h1{color:#EAF8FD;font-size:30px;font-weight:800;margin:0 0 8px;line-height:1.25;}
.hero p.sub{color:#AFD8E8;max-width:560px;margin:0 auto 6px;}

.stockbar{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 22px;margin:22px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;box-shadow:0 6px 16px rgba(15,52,96,0.05);}
.stockbar .precio{font-size:34px;font-weight:800;color:var(--navy);}
.stockbar .precio small{display:block;font-size:13px;color:var(--muted);font-weight:600;}
.stockbar .precio .via-transferencia{display:block;font-size:13px;color:var(--muted);font-weight:600;margin-top:2px;}
.stockbar .precio .cuotas{display:block;font-size:14px;color:#1B7A3C;font-weight:700;margin-top:4px;}
.stockbar .cupo{background:var(--orange);color:#fff;font-weight:700;padding:8px 16px;border-radius:20px;font-size:14px;}
.stockbar .cupo.agotando{background:#FFE2E2;color:#B5302F;}
.progressbar{height:10px;background:var(--line);border-radius:8px;overflow:hidden;margin-top:10px;}
.progressbar > div{height:100%;background:linear-gradient(90deg,var(--yellow),var(--orange));}

.colores{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0;}
@media (max-width:700px){.colores{grid-template-columns:1fr;}}
.color-card{background:#fff;border:2px solid var(--line);border-radius:16px;padding:16px;text-align:center;display:flex;flex-direction:column;}
.color-card.agotado{opacity:0.55;}
.color-card img{width:100%;height:78px;object-fit:contain;}
.color-card .nombre{font-weight:700;color:var(--navy);margin-top:8px;}
.color-card .disp{font-size:13px;color:var(--muted);margin-top:2px;}
.color-card .limitada{display:inline-block;background:var(--orange);color:#fff;font-weight:800;font-size:11px;padding:3px 10px;border-radius:20px;letter-spacing:.5px;}
.color-card form{margin-top:auto;padding-top:12px;}
.color-card button{width:100%;background:var(--orange);color:#fff;border:none;border-radius:10px;padding:10px;font-weight:700;cursor:pointer;font-size:14px;}
.color-card button:disabled{background:#B7C4CC;cursor:not-allowed;}

.tiers{display:flex;gap:14px;margin:22px 0;flex-wrap:wrap;}
.tier-card{flex:1;min-width:150px;background:#fff;border:2px solid var(--line);border-radius:14px;padding:16px;text-align:center;}
.tier-card.vigente{border-color:var(--navy);background:var(--navy);}
.tier-card .tag{color:var(--orange);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:1px;}
.tier-card.vigente .tag{color:var(--yellow);}
.tier-card .price-box{border:1px solid var(--line);border-radius:10px;padding:8px 6px;margin-top:10px;}
.tier-card .price-box .p{color:var(--navy);font-weight:800;font-size:20px;}
.tier-card .price-box .label{font-size:11px;color:var(--muted);font-weight:600;margin-top:2px;}
.tier-card .price-box.cuotas{background:#F1FAF3;border-color:#BFE6C9;}
.tier-card .price-box.cuotas .p{color:#1B7A3C;font-size:17px;}
.tier-card.vigente .price-box{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);}
.tier-card.vigente .price-box .p{color:#fff;}
.tier-card.vigente .price-box .label{color:#AFD8E8;}
.tier-card.vigente .price-box.cuotas{background:rgba(37,211,102,.18);border-color:rgba(37,211,102,.35);}
.tier-card.vigente .price-box.cuotas .p{color:#7CF0A8;}
.tier-card .estado{font-size:12px;color:var(--muted);margin-top:8px;}
.tier-card.vigente .estado{color:#EAF8FD;font-weight:700;}

.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 28px;margin:22px 0;box-shadow:0 6px 16px rgba(15,52,96,0.05);scroll-margin-top:24px;transition:border-color .3s ease, box-shadow .3s ease;}
.card--remarcado{border-color:var(--orange);box-shadow:0 0 0 3px rgba(243,128,13,.55),0 6px 16px rgba(15,52,96,0.05);animation:cardRemarque 1.1s ease-in-out 3;}
@keyframes cardRemarque{
  0%,100%{box-shadow:0 0 0 3px rgba(243,128,13,.30),0 6px 16px rgba(15,52,96,0.05);}
  50%{box-shadow:0 0 0 6px rgba(243,128,13,.80),0 6px 16px rgba(15,52,96,0.05);}
}
@media (prefers-reduced-motion: reduce){
  .card--remarcado{animation:none;}
}
.card h2{color:var(--navy);font-size:20px;margin:0 0 4px;padding-left:12px;border-left:4px solid var(--orange);}

form label{display:block;font-weight:600;color:var(--navy);margin:14px 0 6px;font-size:14px;}
form input[type=text], form input[type=tel], form input[type=email], form textarea, form select{
  width:100%;padding:11px 14px;border:1.5px solid var(--line);border-radius:10px;font-size:15px;font-family:inherit;
}
.pago-opciones{display:flex;flex-direction:column;gap:10px;margin-top:10px;}
.pago-opcion{display:flex;align-items:flex-start;gap:12px;border:1.5px solid var(--line);border-radius:12px;padding:14px 16px;cursor:pointer;margin:0;transition:border-color .15s ease, background-color .15s ease;}
.pago-opcion:hover{border-color:var(--teal);}
.pago-opcion.is-selected{border-color:var(--orange);background:#FFF7EF;}
.pago-opcion input{width:19px;height:19px;margin:2px 0 0;accent-color:var(--orange);flex-shrink:0;}
.pago-texto{display:flex;flex-direction:column;gap:5px;}
.pago-titulo{font-weight:700;font-size:15px;color:var(--navy);line-height:1.35;}
.pago-badge{display:inline-block;background:var(--green);color:#06210F;font-size:11px;font-weight:800;padding:2px 9px;border-radius:20px;margin-left:6px;vertical-align:middle;white-space:nowrap;}
.pago-detalle{font-size:13px;color:var(--muted);}
.pago-medio{display:flex;align-items:center;gap:6px;font-size:12.5px;color:#0a0080;font-weight:700;margin-top:2px;}
.pago-medio .mp-logo{height:38px;}
.pago-medio-alt{font-size:11.5px;color:var(--muted);font-weight:500;}
.pago-total{display:block;font-size:12.5px;color:var(--navy);font-weight:700;margin-top:4px;}
.mp-logo{height:28px;width:auto;display:block;}

/* --- Selector de color del checkout: cada color es una tarjeta con foto,
   stock y cantidad inline (sin dropdown ni lista de carrito aparte). --- */
.picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:4px 0 6px;}
@media (max-width:480px){.picker-grid{grid-template-columns:1fr;}}
.picker-card{position:relative;background:#fff;border:2px solid var(--line);border-radius:16px;padding:14px 12px 16px;text-align:center;display:flex;flex-direction:column;transition:border-color .15s ease, box-shadow .15s ease;min-width:0;}
.picker-card.en-carrito{border-color:var(--orange);box-shadow:0 0 0 3px rgba(243,128,13,.12);}
.picker-card.agotado{opacity:.55;}
.picker-card img{width:100%;height:64px;object-fit:contain;margin-bottom:8px;}
.picker-card .nombre{font-weight:700;font-size:14.5px;color:var(--navy);}
.picker-card .badge-limitada{position:absolute;top:8px;left:8px;background:var(--orange);color:#fff;font-weight:800;font-size:9.5px;letter-spacing:.4px;padding:3px 7px;border-radius:20px;}
.picker-card .stock{font-size:11.5px;color:var(--muted);font-weight:600;margin-top:2px;min-height:15px;}
.picker-card .stock.bajo{color:var(--coral);}
.carrito-vacio-nota{color:var(--muted);font-size:13px;text-align:center;padding:10px 0 4px;}

.btn-agregar{width:100%;margin-top:10px;background:var(--orange);color:#fff;border:none;border-radius:10px;padding:9px 6px;font-weight:700;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:transform .1s ease;}
.btn-agregar:active{transform:scale(.96);}
.btn-agregar:disabled{background:#C7D4DA;cursor:not-allowed;}

.stepper{margin-top:10px;display:flex;align-items:center;justify-content:space-between;background:#FFF7EF;border:1.5px solid var(--orange);border-radius:10px;padding:5px 6px;}
.stepper button{width:26px;height:26px;border-radius:7px;border:none;background:#fff;color:var(--navy);font-weight:800;font-size:15px;cursor:pointer;line-height:1;box-shadow:0 1px 3px rgba(6,63,92,.15);}
.stepper button:active{transform:scale(.92);}
.stepper button:disabled{opacity:.4;cursor:not-allowed;}
.stepper .cant{font-weight:800;color:var(--navy);font-size:14.5px;min-width:18px;font-variant-numeric:tabular-nums;}
.en-carrito-tag{margin-top:6px;font-size:10.5px;font-weight:800;color:#1B7A3C;letter-spacing:.2px;}

/* Barra fija con el resumen del carrito, visible mientras se completa el resto del formulario. */
.barra-flotante{position:fixed;left:16px;right:16px;bottom:16px;max-width:560px;margin:0 auto;background:var(--navy);color:#fff;border-radius:16px;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 10px 30px rgba(6,63,92,.35);transform:translateY(140%);transition:transform .25s ease;z-index:20;}
.barra-flotante.visible{transform:translateY(0);}
.barra-flotante .resumen{line-height:1.3;}
.barra-flotante .resumen .n{font-weight:800;font-size:15px;}
.barra-flotante .resumen .p{font-size:12px;color:var(--sky);}
.barra-flotante button{background:var(--orange);color:#fff;border:none;border-radius:10px;padding:10px 16px;font-weight:700;font-size:13.5px;cursor:pointer;white-space:nowrap;}

.toast-carrito{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);background:var(--navy);color:#fff;padding:12px 20px;border-radius:12px;font-size:13.5px;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:opacity .2s ease, transform .2s ease;z-index:30;text-align:center;max-width:90vw;}
.toast-carrito.mostrado{opacity:1;transform:translate(-50%,0);}

@media (prefers-reduced-motion:reduce){
  .barra-flotante,.toast-carrito,.btn-agregar,.stepper button{transition:none;}
}
.btn{display:inline-block;background:var(--orange);color:#fff;border:none;border-radius:12px;padding:14px 26px;font-weight:700;font-size:16px;cursor:pointer;text-decoration:none;}
.btn.green{background:var(--green);color:#06210F;}
.btn.outline{background:#fff;border:2px solid var(--orange);color:var(--orange);}
.btn.sm{padding:8px 16px;font-size:13px;border-radius:8px;}
.btn.danger{background:var(--coral);}
.btn:disabled{background:#B7C4CC;cursor:not-allowed;}

.alert{padding:14px 18px;border-radius:10px;margin:16px 0;font-size:14.5px;}
.alert.ok{background:#DFF6E3;color:#1B7A3C;}
.alert.err{background:#FFE3E3;color:#B5302F;}
.alert.info{background:#E4F0FF;color:#1B4F8A;}

table.admin{width:100%;border-collapse:collapse;font-size:14px;}
table.admin th,table.admin td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;}
table.admin th{background:#F0F6F9;color:var(--navy);}
.tag-estado{display:inline-block;padding:3px 10px;border-radius:14px;font-size:12px;font-weight:700;}
.tag-estado.pendiente_pago{background:#FFF3D6;color:#8A6100;}
.tag-estado.senada{background:#E4F0FF;color:#1B4F8A;}
.tag-estado.saldo_pendiente{background:#FFE8CF;color:#9A5B00;}
.tag-estado.pagada_total{background:#DFF6E3;color:#1B7A3C;}
.tag-estado.en_coordinacion{background:#E9E4FF;color:#4B2E9A;}
.tag-estado.entregada{background:#D8F5EA;color:#0F6B4A;}
.tag-estado.cancelada, .tag-estado.expirada{background:#FFE3E3;color:#B5302F;}

.milestones{list-style:none;padding:0;margin:0;}
.milestones li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line);}
.milestones li:last-child{border-bottom:none;}
.milestones .dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--line);flex-shrink:0;}
.milestones li.done .dot{background:var(--green);border-color:var(--green);}
.milestones li.done{color:var(--navy);font-weight:600;}

.faq-subtitle{color:var(--teal);font-size:14px;text-transform:uppercase;letter-spacing:0.5px;margin:22px 0 10px;}
.faq-subtitle:first-of-type{margin-top:4px;}
.faq-item{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;overflow:hidden;}
.faq-item summary{cursor:pointer;list-style:none;padding:14px 18px;font-weight:700;color:var(--navy);display:flex;align-items:center;justify-content:space-between;gap:10px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';font-size:20px;color:var(--teal);flex-shrink:0;}
.faq-item[open] summary::after{content:'\2013';}
.faq-item .faq-a{padding:0 18px 16px;color:#3A4C56;font-size:14.5px;line-height:1.55;}
.faq-item .faq-a ul{margin:8px 0;padding-left:20px;}
.faq-item .faq-a li{margin-bottom:6px;}

footer.site{text-align:center;padding:30px 0;color:var(--muted);font-size:13px;}

.admin-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;}
.admin-nav a{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 14px;font-size:14px;font-weight:600;text-decoration:none;color:var(--navy);}
.admin-nav a.active{background:var(--navy);color:#fff;}
.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--coral);color:#fff;font-size:11px;font-weight:800;line-height:1;}
.admin-nav a.active .nav-badge{background:#fff;color:var(--coral);}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;}
@media (max-width:800px){.kpis{grid-template-columns:repeat(2,1fr);}}
.kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;text-align:center;}
.kpi .n{font-size:26px;font-weight:800;color:var(--navy);}
.kpi .l{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:0.5px;}

.chart-medios{display:flex;gap:26px;flex-wrap:wrap;align-items:center;}
.chart-torta{flex:0 0 auto;}
.chart-torta .torta{max-width:220px;height:auto;border-radius:50%;box-shadow:0 4px 12px rgba(15,52,96,.10);}
.chart-legend{flex:1;min-width:280px;}
.dot-medio{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:8px;vertical-align:middle;}
