/* TARJETA DE REGALO (demo) — vive aquí y no en public/css para que no viaje a
   _publicar/. Sólo tokens de :root; el diseño de la tarjeta va en el canvas. */
.kk-regalo { display: grid; gap: var(--kk-e7); align-items: start; }
@media (min-width: 900px) { .kk-regalo { grid-template-columns: minmax(280px, 380px) 1fr; } }

.kk-regalo__form { display: grid; gap: var(--kk-e5); min-width: 0; }
.kk-regalo__grupo { border: 0; padding: 0; margin: 0; display: grid; gap: var(--kk-e2); min-width: 0; }
.kk-regalo__label { font-weight: 700; font-size: 0.82rem; letter-spacing: 0.1em; text-transform: uppercase; padding: 0; }
.kk-regalo__campo {
    min-height: 48px; padding: var(--kk-e2) var(--kk-e3); width: 100%;
    font: inherit; color: var(--kk-texto); background: var(--kk-blanco);
    border: 2px solid var(--kk-linea-control); border-radius: var(--kk-radio);
}
.kk-regalo__campo[aria-invalid="true"] { border-color: var(--kk-negro); }
.kk-regalo__campo:focus-visible { outline: 3px solid var(--kk-negro); outline-offset: 2px; }

.kk-regalo__chips { display: flex; flex-wrap: wrap; gap: var(--kk-e2); }
.kk-regalo__chip {
    min-height: 48px; min-width: 96px; padding: 0 var(--kk-e4); cursor: pointer;
    font: inherit; font-weight: 700; color: var(--kk-texto); background: var(--kk-blanco);
    border: 2px solid var(--kk-linea-control); border-radius: var(--kk-radio);
}
.kk-regalo__chip[aria-pressed="true"] { background: var(--kk-negro); color: var(--kk-blanco); border-color: var(--kk-negro); }
.kk-regalo__chip:focus-visible { outline: 3px solid var(--kk-negro); outline-offset: 2px; }

.kk-regalo__ayuda { font-size: 0.9rem; color: var(--kk-texto-apoyo); min-height: 1.2em; }
.kk-regalo__error { font-weight: 700; min-height: 1.2em; }
.kk-regalo__error:not(:empty)::before { content: "⚠ "; }

.kk-regalo__vista { display: grid; gap: var(--kk-e4); min-width: 0; }
#kk-regalo-canvas { width: 100%; height: auto; display: block; border-radius: var(--kk-radio); box-shadow: 0 0 0 1px var(--kk-linea-fuerte); }
.kk-regalo__codigo { font-weight: 700; min-height: 1.5em; }
.kk-regalo__acciones { display: flex; flex-wrap: wrap; gap: var(--kk-e3); }
.kk-regalo__acciones .kk-btn { cursor: pointer; border: 0; }
.kk-regalo__acciones .kk-btn:disabled { cursor: not-allowed; opacity: 0.45; }

/* Sin JS: sólo el aviso con el enlace. Con JS se esconde (el JS agrega .kk-js). */
.kk-regalo__sinjs { padding: var(--kk-e4); border-left: 4px solid var(--kk-rosa); background: var(--kk-gris); }
.kk-js .kk-regalo__sinjs { display: none; }

@media (prefers-reduced-motion: reduce) {
    .kk-regalo__chip, .kk-regalo__campo { transition: none; }
}

/* Condiciones: sólo existe si la dueña dio algún texto (lib/_config.php) */
.kk-regalo__condiciones { margin-top: var(--kk-e6, 2rem); padding: var(--kk-e4); border-left: 4px solid var(--kk-ciruela); background: var(--kk-gris); }
.kk-regalo__condiciones ul { margin: 0; padding-left: 1.2em; }
.kk-regalo__condiciones li + li { margin-top: 0.4em; }
