/* ═══ KORA · COMPRAR EL LIBRO, POR PASOS (7 oct 2026) ═══════════════════════
   A pantalla completa, como Wonderbly: arriba los pasos, en medio una sola
   decisión y, a un lado, «Tu pedido» con el total y el botón (12 oct; en el
   celular, una barra abajo). Los tokens de la
   casa (--clay, --linen, --sand…) y el papel de la semilla. */
.kcp{
  --kcp-papel:#FAFAF9; --kcp-linea:#E4E1DC; --kcp-r:12px;
  position:fixed; inset:0; z-index:9100; background:#F5F5F3;
  display:flex; flex-direction:column; font-family:var(--font-body); color:var(--dark);
}
.kcp-top{ position:relative; display:flex; align-items:center; justify-content:center; padding:18px 56px 14px; border-bottom:1px solid var(--kcp-linea); background:var(--kcp-papel) }
.kcp-x{ position:absolute; left:14px; top:50%; transform:translateY(-50%); background:none; border:0; font-size:20px; color:var(--taupe); cursor:pointer; padding:8px }
.kcp-pasos{ display:flex; gap:6px; list-style:none; margin:0; padding:0; flex-wrap:wrap; justify-content:center }
.kcp-pasos li{ font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--sand); padding:4px 10px; border-radius:999px }
.kcp-pasos li.on{ color:var(--white); background:var(--clay) }
.kcp-pasos li.hecho{ color:var(--clay) }
.kcp-pasos li.hecho::before{ content:'✓ ' }
/* 12 oct · Los pasos ya hechos se pueden picar: es la forma de volver a
   cualquier decisión, no solo a la de antes. */
.kcp-pasos li button{ background:none; border:0; padding:0; font:inherit; letter-spacing:inherit; text-transform:inherit; color:inherit; cursor:pointer; text-decoration:underline; text-decoration-color:transparent; text-underline-offset:3px; transition:text-decoration-color .2s }
.kcp-pasos li button:hover{ text-decoration-color:currentColor }

.kcp-cuerpo{ flex:1; overflow-y:auto; padding:34px 20px 40px }
.kcp-main > *{ max-width:1040px; margin-left:auto; margin-right:auto }

/* ── 12 oct · «Tu pedido» al lado ───────────────────────────────────────
   Vivi: el total «se pierde un poco en la banda blanca». En grande, la
   pantalla son dos columnas: la decisión y, a la derecha, la tarjeta del
   pedido, que se queda quieta al bajar (sticky dentro de .kcp-cuerpo). */
.kcp-marco{ max-width:1180px; margin:0 auto }
.kcp-atras{ display:block; background:none; border:0; padding:0; margin:0 0 14px !important; color:var(--taupe); font:inherit; font-size:14px; cursor:pointer; max-width:none !important }
.kcp-atras:hover{ color:var(--clay) }
.kcp-pedido{ background:var(--kcp-papel); border:1px solid var(--kcp-linea); border-radius:16px; padding:22px 22px 20px; box-shadow:0 24px 50px -38px rgba(44,37,32,.55) }
.kcp-pedido-k{ font-size:11.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--sand); margin:0 }
.kcp-pedido-t{ font-family:var(--font-display); font-size:21px; line-height:1.2; margin:.35rem 0 .6rem }
.kcp-pedido .kcp-linea{ font-size:14px; padding:11px 0 }
.kcp-pedido .kcp-linea span{ display:flex; flex-direction:column; align-items:flex-start; gap:2px }
.kcp-linea-dig{ border-bottom:0 !important } .kcp-linea-dig b{ color:#5f7a5f }
.kcp-cambiar{ background:none; border:0; padding:0; font:inherit; font-size:12.5px; color:var(--clay); text-decoration:underline; text-underline-offset:3px; cursor:pointer }
.kcp-cambiar:hover{ color:#55524E }
.kcp-pedido-regalo{ font-size:13px; color:#5f7a5f; margin:.7rem 0 0 }
.kcp-pedido-total{ display:flex; justify-content:space-between; align-items:baseline; margin:16px 0 16px; padding-top:14px; border-top:1.5px solid var(--clay) }
.kcp-pedido-total span{ font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--taupe) }
.kcp-pedido-total b{ font-family:var(--font-display); font-size:32px; font-weight:400; color:var(--clay); line-height:1 }
.kcp-pedido-total small{ font-family:var(--font-body); font-size:12px; color:var(--taupe); letter-spacing:.06em }
.kcp-seguir-lado{ width:100% }

@media (min-width:900px){
  .kcp-marco{ display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:40px; align-items:start }
  .kcp-lado{ position:sticky; top:0 }
  .kcp-pie{ display:none !important }
  .kcp-solo-cel{ display:none !important }
}
@media (max-width:899px){
  .kcp-lado{ display:none; margin-top:1.6rem }
  .kcp-seguir-lado{ display:none }
  .kcp-pie{ grid-template-columns:1fr auto !important }
  .kcp-pie .kcp-total{ align-items:flex-start }
  .kcp-pie .kcp-total b{ font-size:22px }
}

/* ── 12 oct · Guardar en mi perfil ── */
.kcp-perfil{ display:flex; gap:12px; align-items:flex-start; max-width:640px !important; margin:1.2rem auto 0; padding:14px 16px; border:1px solid var(--kcp-linea); border-radius:var(--kcp-r); background:var(--kcp-papel); cursor:pointer; font-size:13.5px; color:var(--taupe); line-height:1.5 }
.kcp-perfil input{ margin-top:3px; accent-color:var(--clay); width:18px; height:18px; flex:none }
.kcp-perfil b{ display:block; color:var(--dark); font-weight:500; font-size:14.5px }
.kcp-perfil-nota{ max-width:640px !important; font-size:12.5px; color:#5f7a5f; margin:.6rem auto 0 }
.kcp-h{ font-family:var(--font-display); font-weight:400; font-size:clamp(26px,3.2vw,36px); text-align:center; margin:0 auto }
.kcp-sub{ text-align:center; color:var(--taupe); font-size:15px; margin:.5rem auto 1.8rem; max-width:620px }

.kcp-cards{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px }
.kcp-cards-3{ grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) }
.kcp-card{
  position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; gap:6px;
  background:var(--kcp-papel); border:1.5px solid var(--kcp-linea); border-radius:var(--kcp-r); padding:0 0 18px; overflow:hidden;
  cursor:pointer; font-family:inherit; color:inherit; transition:border-color .2s, box-shadow .2s;
}
.kcp-card:hover{ border-color:var(--sand) }
.kcp-card.on{ border-color:var(--clay); box-shadow:0 0 0 1.5px var(--clay), 0 18px 40px -28px rgba(44,37,32,.6) }
.kcp-img{ display:block; width:100%; aspect-ratio:4/3; background:#EDE4D6 center/cover no-repeat; margin-bottom:8px }
.kcp-img-sin{ background:linear-gradient(135deg,#EFE6D8,#E3D6C2) }
.kcp-card-t{ font-family:var(--font-display); font-size:20px; padding:0 14px }
.kcp-card-p{ font-size:15px; color:var(--clay); font-weight:500 }
.kcp-card-p i, .kcp-envio-p i{ font-size:11px; font-weight:400; color:var(--taupe) }
.kcp-card-d{ font-size:13.5px; color:var(--taupe); line-height:1.5; padding:0 16px; min-height:2.6em }
/* 9 oct 2026 · Las envolturas ahora llevan foto, como las del formato: una
   envoltura se elige por cómo se ve. La imagen va a sangre —de orilla a orilla
   de la tarjeta— así que la tarjeta pierde su padding y el aire se lo pone el
   bloque de texto de adentro. */
.kcp-card-env{ padding:0 0 18px; align-items:stretch; text-align:left }
.kcp-env-txt{ display:flex; flex-direction:column; gap:6px; padding:0 18px }
.kcp-card-env .kcp-card-t, .kcp-card-env .kcp-card-d{ padding:0 }
.kcp-check{ width:24px; height:24px; border:1.5px solid var(--sand); border-radius:6px; display:flex; align-items:center; justify-content:center; color:var(--white); font-size:14px; margin-bottom:6px }
.kcp-card-env.on .kcp-check{ background:var(--clay); border-color:var(--clay) }

.kcp-extra{ display:flex; gap:12px; align-items:flex-start; max-width:620px !important; margin:1.6rem auto 0; padding:14px 16px; border:1px dashed var(--sand); border-radius:var(--kcp-r); background:var(--kcp-papel); cursor:pointer; font-size:13.5px; color:var(--taupe); line-height:1.5 }
.kcp-extra input{ margin-top:3px; accent-color:var(--clay); width:18px; height:18px; flex:none }
.kcp-extra b{ display:block; color:var(--dark); font-weight:500; font-size:14.5px }

/* 15 oct · LA EDICIÓN DIGITAL, COMO FRANJA. Era una caja punteada del mismo
   papel que la página y Vivi la vio perderse: «darle otro color de fondo y
   que vaya de extremo a extremo, más editorial». Va a todo lo ancho de la
   pantalla —sale del margen de la columna—, en el verde de «Incluida», con
   un rótulo y un título en la letra de los títulos. */
.kcp-cuerpo{ overflow-x:hidden }
.kcp-main > .kcp-incluye{
  max-width:none; margin:3rem calc(50% - 50vw) 0; padding:34px 20px;
  background:#E4E9DD; border-top:1px solid #D3DBC9; border-bottom:1px solid #D3DBC9;
}
.kcp-incluye-in{ max-width:760px; margin:0 auto; display:grid; grid-template-columns:auto 1fr; gap:4px 34px; align-items:baseline }
.kcp-incluye-k{ grid-column:1/-1; margin:0; font-size:11.5px; letter-spacing:.22em; text-transform:uppercase; color:#5f7a5f }
.kcp-incluye-h{ margin:0; font-family:var(--font-display); font-weight:400; font-size:30px; line-height:1.15; color:#33402F; white-space:nowrap }
.kcp-incluye-p{ margin:0; font-size:15px; line-height:1.65; color:#4E5B48 }
@media (max-width:640px){
  .kcp-main > .kcp-incluye{ padding:26px 18px; margin-top:2.2rem }
  .kcp-incluye-in{ grid-template-columns:1fr; gap:6px }
  .kcp-incluye-h{ font-size:25px; white-space:normal }
}

/* ── 15 oct · SIN CUENTA EN LOS PRIMEROS DOS PASOS ─────────────────────────
   Vivi: «cuando eliges el formato y la envoltura no quiero que aparezca
   todavía el resumen del costo del lado derecho, eso viene después». Sin la
   tarjeta de «Tu pedido» la decisión ocupa la pantalla entera, y el botón
   va debajo de ella (en el celular, solo en la barra de abajo, sin total). */
.kcp-sin-cuenta .kcp-marco{ display:block; max-width:1000px }
.kcp-seguir-centro{ display:flex; justify-content:center; margin-top:2.4rem !important }
.kcp-seguir-centro .kcp-seguir{ padding:15px 46px; justify-self:auto }
.kcp-pie-solo{ grid-template-columns:1fr !important }
.kcp-pie-solo .kcp-seguir{ width:100%; justify-self:stretch }
.kcp-solo-pc{ display:none }
@media (min-width:900px){ .kcp-solo-pc{ display:block } }
@media (max-width:899px){ .kcp-seguir-centro{ display:none } }

/* ── SU PORTADA EN LAS TARJETAS DEL FORMATO ────────────────────────────────
   El dibujo del editor (`portadaMini` en kora-compra.js), en chico, sobre el
   mismo fondo donde estaban las fotos de muestra. */
.kcp-portada{ display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:4/3; background:#EFE7DA; margin-bottom:8px; overflow:hidden }
.kcp-portada-in{ display:block; width:34%; pointer-events:none; overflow:hidden; filter:drop-shadow(0 14px 18px rgba(44,37,32,.28)) }
.kcp-portada-esc{ display:block; transform-origin:0 0 }
.kcp-portada .spread.single{ display:block; width:100%; max-width:none; min-height:0; margin:0 }
.kcp-portada .spread.single .pg{ height:auto; width:100%; max-width:none; aspect-ratio:var(--k-pagina, 4/5); box-shadow:none; border-radius:2px }
.kcp-portada .spread.kidscover{ display:block; width:100%; height:auto !important; aspect-ratio:auto !important; min-height:0; margin:0; box-shadow:none; background:transparent; border:0 }
.kcp-portada .spread.kidscover .pg{ width:100%; height:auto !important; padding:0 !important; min-height:0; aspect-ratio:var(--k-pagina, 4/5); display:flex }
.kcp-portada .spread.kidscover .kcover{ width:100% !important; height:100% !important; max-width:none !important; margin:0 !important; aspect-ratio:auto !important }
@media (max-width:640px){ .kcp-portada{ aspect-ratio:16/10 } .kcp-portada-in{ width:30% } }

/* ── 3 · TU CARRITO ── */
.kcp-h-izq{ text-align:left; margin:0 0 1.2rem !important }
.kcp-en-carrito .kcp-main > *{ max-width:none !important; margin-left:0 !important; margin-right:0 !important }
.kcp-item{
  display:grid; grid-template-columns:120px minmax(0,1fr) auto; gap:22px; align-items:start;
  background:var(--kcp-papel); border:1px solid var(--kcp-linea); border-radius:var(--kcp-r); padding:20px;
}
.kcp-item-port .kcp-portada{ aspect-ratio:auto; background:none; margin:0 }
.kcp-item-port .kcp-portada-in{ width:100% }
.kcp-item-t{ font-family:var(--font-display); font-size:22px; line-height:1.2; margin:0 0 10px }
.kcp-item-l{ margin:0 0 6px; font-size:14.5px; color:var(--dark); display:flex; flex-wrap:wrap; gap:4px 10px; align-items:baseline }
.kcp-item-dig{ color:#5f7a5f }
.kcp-item-p{ margin:0; font-size:17px; color:var(--clay); white-space:nowrap }
.kcp-linea-env em{ color:var(--taupe) !important; font-size:12.5px; white-space:normal; text-align:right }
.kcp-pedido .kcp-regalo{ margin:0 0 14px; font-size:13.5px }
.kcp-pedido .kcp-regalo-f input{ min-width:0; font-size:14px }
.kcp-carrito-nota{ text-align:left }
@media (max-width:640px){
  .kcp-item{ grid-template-columns:84px minmax(0,1fr); gap:14px; padding:14px }
  .kcp-item-p{ grid-column:2 }
  .kcp-item-t{ font-size:19px }
}

.kcp-envios{ display:flex; flex-direction:column; gap:10px; max-width:640px !important }
.kcp-envio{ display:flex; align-items:center; gap:14px; text-align:left; background:var(--kcp-papel); border:1.5px solid var(--kcp-linea); border-radius:var(--kcp-r); padding:14px 16px; cursor:pointer; font-family:inherit; color:inherit }
.kcp-envio b{ font-weight:500 } .kcp-envio small{ display:block; color:var(--taupe); font-size:13px }
.kcp-envio.on{ border-color:var(--clay) }
.kcp-radio{ width:18px; height:18px; border-radius:50%; border:1.5px solid var(--sand); flex:none }
.kcp-envio.on .kcp-radio{ border:5px solid var(--clay) }
.kcp-envio-p{ margin-left:auto; color:var(--clay); white-space:nowrap }
.kcp-dir{ display:grid; grid-template-columns:1fr 1fr; gap:12px 14px; max-width:640px !important; margin-top:1.4rem !important }
.kcp-campo{ display:flex; flex-direction:column; gap:5px; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--sand) }
.kcp-campo input{ border:1px solid var(--kcp-linea); border-radius:10px; background:var(--kcp-papel); padding:12px; font:300 15px var(--font-body); color:var(--dark); text-transform:none; letter-spacing:0; outline:none }
.kcp-campo input:focus{ border-color:var(--clay) }
.kcp-campo.falta input{ border-color:#b5543c; background:#fff6f2 }
.kcp-c-calle, .kcp-c-notas{ grid-column:1/-1 }

.kcp-res{ max-width:560px !important; background:var(--kcp-papel); border:1px solid var(--kcp-linea); border-radius:var(--kcp-r); padding:6px 18px }
.kcp-linea{ display:flex; justify-content:space-between; gap:16px; padding:12px 0; border-bottom:1px solid var(--kcp-linea); font-size:15px }
.kcp-linea b{ font-weight:400; white-space:nowrap } .kcp-linea s{ color:var(--sand) } .kcp-linea em{ color:#5f7a5f; font-style:normal }
.kcp-linea-t{ border-bottom:0; font-size:17px } .kcp-linea-t b{ font-weight:600; color:var(--clay) }
.kcp-res-dir, .kcp-nota{ max-width:560px !important; font-size:13.5px; color:var(--taupe); margin-top:1rem; line-height:1.55 }
.kcp-res-dir b{ color:var(--dark); font-weight:500 }
.kcp-regalo{ max-width:560px !important; margin-top:1.2rem; font-size:14px }
.kcp-regalo label{ color:var(--taupe) }
.kcp-regalo-f{ display:flex; gap:8px; margin-top:6px }
.kcp-regalo-f input{ flex:1; border:1px solid var(--kcp-linea); border-radius:10px; background:var(--kcp-papel); padding:11px 12px; font:400 15px ui-monospace,Menlo,monospace; letter-spacing:.08em; text-transform:uppercase; outline:none }
.kcp-regalo-f button, .kcp-regalo.on button{ border:1px solid var(--clay); background:none; color:var(--clay); border-radius:10px; padding:0 16px; cursor:pointer; font:inherit }
.kcp-regalo.on{ display:flex; align-items:center; gap:10px; padding:12px 14px; border-radius:var(--kcp-r); background:#EEF2EA; border:1px solid #c9d6c3 }
.kcp-regalo.on span{ flex:1 } .kcp-regalo.on small{ display:block; color:var(--taupe); font-family:ui-monospace,Menlo,monospace }
.kcp-regalo.on button{ padding:6px 12px }
.kcp-err{ color:#b5543c; font-size:13.5px; max-width:560px; margin:.6rem auto 0 }

.kcp-pie{ display:grid; grid-template-columns:1fr auto; align-items:center; gap:12px; padding:14px 22px; background:var(--kcp-papel); border-top:1px solid var(--kcp-linea) }
.kcp-total{ display:flex; flex-direction:column; align-items:center; font-size:12px; color:var(--taupe); letter-spacing:.08em; text-transform:uppercase }
.kcp-total b{ font-size:19px; color:var(--clay); letter-spacing:0; text-transform:none; font-weight:600 }
.kcp-seguir{ justify-self:end; background:var(--clay); color:var(--white); border:0; border-radius:10px; padding:14px 28px; font:inherit; font-size:15px; cursor:pointer }
.kcp-seguir:hover{ background:#55524E } .kcp-seguir[disabled]{ opacity:.6; cursor:default }

.kcp-gracias{ max-width:560px !important; text-align:center }
.kcp-gracias-k{ font-family:var(--font-display); font-style:italic; font-size:22px; color:var(--clay); margin:0 0 .3rem }
.kcp-gracias .kcp-h{ margin-bottom:1.4rem }
.kcp-gracias .kcp-res{ text-align:left }
.kcp-sigue{ text-align:left; font-size:14.5px; line-height:1.6; color:var(--dark); padding-left:1.2rem; margin:1.2rem 0 1.6rem }
.kcp-sigue li{ margin-bottom:.4rem }

@media (max-width:640px){
  .kcp-cuerpo{ padding:24px 16px 28px }
  .kcp-dir{ grid-template-columns:1fr }
  .kcp-pie{ padding:12px 14px }
  .kcp-seguir{ padding:13px 18px }
  .kcp-pasos{ gap:2px }
  .kcp-img{ aspect-ratio:16/9 }
  .kcp-pasos li{ font-size:10px; letter-spacing:.06em; padding:3px 6px }
}

/* ── 15 oct · 4 · PAGO, COMPACTO ───────────────────────────────────────────
   Vivi: «el de Wonderbly se me hizo un poco largo, si se puede compactar».
   Envío y confirmación son una sola página: la dirección en renglones de
   dos (nombre y teléfono juntos), la forma de envío lado a lado, y el pedido
   a la derecha con su portada y el botón de pagar. */
.kcp-en-pago .kcp-main > *{ max-width:none !important; margin-left:0 !important; margin-right:0 !important }
.kcp-h3{ font-family:var(--font-display); font-weight:400; font-size:21px; margin:1.6rem 0 .8rem !important }
.kcp-h-izq + .kcp-h3{ margin-top:.4rem !important }
.kcp-en-pago .kcp-dir{ margin-top:0 !important; gap:10px 12px }
.kcp-en-pago .kcp-campo input{ padding:11px 12px }
.kcp-en-pago .kcp-perfil{ margin:12px 0 0; max-width:none !important }
.kcp-en-pago .kcp-envios{ display:grid; grid-template-columns:1fr 1fr; gap:10px; max-width:none !important }
.kcp-en-pago .kcp-envio{ align-items:flex-start; flex-wrap:wrap; gap:8px 12px }
.kcp-en-pago .kcp-envio-p{ margin-left:30px; width:100% }
.kcp-pedido-libro{ display:grid; grid-template-columns:70px 1fr; gap:14px; align-items:center; margin:.8rem 0 .4rem }
.kcp-pedido-libro .kcp-portada{ aspect-ratio:auto; background:none; margin:0 }
.kcp-pedido-libro .kcp-portada-in{ width:100% }
.kcp-pedido-libro .kcp-pedido-t{ margin:0 }
.kcp-seguro{ margin:10px 0 0; text-align:center; font-size:12.5px; color:var(--taupe) }
@media (max-width:640px){
  .kcp-en-pago .kcp-envios{ grid-template-columns:1fr }
  .kcp-en-pago .kcp-dir{ grid-template-columns:1fr 1fr }
  .kcp-c-nombre, .kcp-c-telefono{ grid-column:1/-1 }
}

/* ══ 15 oct · LA COMPRA, MÁS LIMPIA (con el carrito de Artifact Uprising) ════
   Vivi: «vamos a neutralizar una vez más… siento muy cálido todo… el
   carrito de AU me gusta más, se me hace muy limpio». La compra va sobre
   blanco; las tarjetas pierden la sombra; el botón principal es casi negro,
   y el resumen es un panel gris plano, sin tarjeta. */
.kcp{ background:#FFFFFF; --kcp-papel:#FFFFFF; --kcp-linea:#E4E2DE;
  /* 15 oct, segunda vuelta · Vivi: «para hacerlo un poco diferente a AU,
     mantener el resumen lateral con nuestras orillas redondeadas y cambiar
     el negro por nuestro gris topo oscuro». */
  --kcp-tinta:#58534D; --kcp-tinta-2:#46423D; --kcp-gris:#F3F2F0 }
.kcp-top{ background:#FFFFFF }
.kcp-seguir{ background:var(--kcp-tinta); border-radius:10px; letter-spacing:.04em }
.kcp-seguir:hover{ background:var(--kcp-tinta-2) }
.kcp-card{ border-radius:6px }
.kcp-card.on{ border-color:var(--kcp-tinta); box-shadow:0 0 0 1px var(--kcp-tinta) }
.kcp-portada{ background:#F2F2F0 }
.kcp-pedido{ background:var(--kcp-gris); border:0; border-radius:16px; box-shadow:none }
.kcp-pasos li.on{ background:var(--kcp-tinta) }

/* ── el carrito ── */
.kcp-en-carrito .kcp-h-izq{ font-size:34px; margin-bottom:1.6rem !important }
.kcp-item{
  grid-template-columns:150px minmax(0,1fr) auto auto; gap:6px 28px; align-items:start;
  background:none; border:0; border-radius:0; padding:0 0 22px; border-bottom:1px solid #8C8882;
}
.kcp-item-port{ grid-row:1 / span 2 }
.kcp-item-port .kcp-portada{ background:#F2F2F0; padding:12px 0 }
.kcp-item-port .kcp-portada-in{ width:72% }
.kcp-item-t{ font-size:20px; margin:0 0 12px }
.kcp-item-dl{ display:grid; grid-template-columns:auto 1fr; gap:6px 10px; margin:0; font-size:14px; color:#6B6660 }
.kcp-item-dl dt{ color:#8C8882 }
.kcp-item-dl dt::after{ content:':' }
.kcp-item-dl dd{ margin:0; color:#35322F }
.kcp-copias{ display:flex; flex-direction:column; gap:4px; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:#8C8882 }
.kcp-copias select{
  font:inherit; font-size:15px; letter-spacing:0; text-transform:none; color:var(--kcp-tinta);
  border:1px solid #CFCCC7; border-radius:999px; padding:8px 34px 8px 16px; background:#fff; cursor:pointer;
}
.kcp-item .kcp-item-p{ font-size:16px; color:var(--kcp-tinta); padding-top:22px }
.kcp-item-acc{ grid-column:2 / -1; display:flex; justify-content:flex-end; gap:18px; margin-top:14px }
.kcp-item-acc button{
  background:none; border:0; padding:0; cursor:pointer; font:inherit; font-size:11.5px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--kcp-tinta); text-decoration:underline; text-underline-offset:4px;
}
.kcp-copias-nota{ text-align:left !important; margin-top:12px !important }
/* El resumen, a la derecha: un panel gris, sin tarjeta, y el botón debajo. */
.kcp-resumen{ background:var(--kcp-gris); padding:26px 22px 22px; border-radius:16px }
.kcp-resumen-h{ font-family:var(--font-display); font-size:24px; text-align:center; margin:0 0 18px }
.kcp-resumen-l{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:10px 0; font-size:15px }
.kcp-resumen-l em{ font-style:normal; font-size:13px; color:#6B6660; text-align:right }
.kcp-resumen-t b{ font-weight:400; font-size:17px }
.kcp-en-carrito .kcp-seguir-lado{ display:block; width:100%; margin-top:16px; padding:16px }
.kcp-acordeon{ background:var(--kcp-gris); margin-top:12px; padding:0 18px; border-radius:14px }
.kcp-acordeon summary{ cursor:pointer; list-style:none; padding:16px 0; font-size:15px; display:flex; justify-content:space-between }
.kcp-acordeon summary::-webkit-details-marker{ display:none }
.kcp-acordeon summary::after{ content:'⌄'; font-size:18px; line-height:1 }
.kcp-acordeon[open] summary::after{ transform:rotate(180deg) }
.kcp-acordeon .kcp-regalo{ margin:0 0 16px }
.kcp-acordeon .kcp-regalo-f input{ min-width:0 }
@media (max-width:640px){
  .kcp-item{ grid-template-columns:96px minmax(0,1fr); gap:10px 16px }
  .kcp-item-port{ grid-row:auto }
  .kcp-copias{ grid-column:2; flex-direction:row; align-items:center; gap:10px }
  .kcp-item .kcp-item-p{ grid-column:2; padding-top:0 }
  .kcp-item-acc{ grid-column:1 / -1; justify-content:flex-start }
  .kcp-en-carrito .kcp-h-izq{ font-size:28px }
}

/* ── 15 oct · la dirección inteligente y los dos códigos ── */
.kcp-acordeon + .kcp-acordeon{ margin-top:10px }
.kcp-en-pago .kcp-lado .kcp-acordeon:first-child{ margin-top:16px }
.kcp-acordeon .kcp-regalo-f input{ font:400 14px var(--font-body); letter-spacing:.02em; text-transform:none }
.kcp-acordeon .kcp-regalo-f input[data-codigo]{ font-family:ui-monospace,Menlo,monospace; letter-spacing:.08em; text-transform:uppercase }
.kcp-acordeon .kcp-regalo-f button{ border-color:var(--kcp-tinta); color:var(--kcp-tinta) }
.kcp-linea-promo b{ color:#5f7a5f }
.kcp-campo select{
  border:1px solid var(--kcp-linea); border-radius:10px; background:#fff; padding:11px 12px;
  font:300 15px var(--font-body); color:var(--dark); outline:none; appearance:auto;
}
.kcp-campo select:focus{ border-color:var(--kcp-tinta) }
.kcp-campo.falta select{ border-color:#b5543c; background:#fff6f2 }
/* «Verifica tu dirección»: las dos, lado a lado, y la sugerida ya elegida. */
.kcp-verif{ position:absolute; inset:0; z-index:5; background:rgba(38,37,35,.38); display:flex; align-items:center; justify-content:center; padding:18px }
.kcp-verif-c{ background:#fff; border-radius:16px; max-width:660px; width:100%; padding:30px 30px 26px; text-align:center; box-shadow:0 30px 70px -30px rgba(0,0,0,.45) }
.kcp-verif-c h3{ font-family:var(--font-display); font-weight:400; font-size:30px; margin:0 0 10px }
.kcp-verif-c > p{ font-size:14.5px; color:var(--taupe); line-height:1.6; margin:0 auto 20px; max-width:480px }
.kcp-verif-op{ display:grid; grid-template-columns:1fr 1fr; gap:14px; text-align:left; margin-bottom:20px }
.kcp-verif-op label{ display:flex; gap:12px; align-items:flex-start; padding:16px; border:1px solid var(--kcp-linea); border-radius:12px; cursor:pointer; font-size:14px; line-height:1.55; color:var(--dark) }
.kcp-verif-op label.on{ background:var(--kcp-gris); border-color:var(--kcp-tinta) }
.kcp-verif-op input{ margin-top:4px; accent-color:var(--kcp-tinta) }
.kcp-verif-op b{ display:block; font-weight:500; margin-bottom:4px }
/* 15 oct · Vivi: «quitaría lo subrayado amarillo». Lo cambiado se nota en el texto, sin marca. */
.kcp-verif-op mark{ background:none; color:inherit; padding:0 }
.kcp-verif-op .kcp-cambiar{ display:block; margin-top:8px }
.kcp-verif .kcp-seguir{ padding:14px 36px }
@media (max-width:640px){ .kcp-verif-op{ grid-template-columns:1fr } .kcp-verif-c{ padding:24px 18px 20px } .kcp-verif-c h3{ font-size:25px } }
