/* KADA · Estética del portal/app de clientas (2026-10-08).
 * Solo aplica a <body class="kada-app"> (clientes.html). Los módulos del equipo no cargan este archivo.
 * Letra Quicksand (OFL) servida desde /vendor/quicksand (sin Google Fonts). Íconos Lucide (ISC) en kada-app.js. */
@font-face{font-family:'Quicksand KADA';font-style:normal;font-display:swap;font-weight:300 700;
  src:url(/vendor/quicksand/quicksand-latin-ext-wght-normal.woff2) format('woff2-variations'),url(/vendor/quicksand/quicksand-latin-ext-wght-normal.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Quicksand KADA';font-style:normal;font-display:swap;font-weight:300 700;
  src:url(/vendor/quicksand/quicksand-latin-wght-normal.woff2) format('woff2-variations'),url(/vendor/quicksand/quicksand-latin-wght-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

body.kada-app{
  --k-main:#CF1592;--k-hot:#E91E8C;--k-deep:#b0136a;--k-soft:#f3c6dd;--k-bg:#fff8fb;--k-tint:#fde7f2;--k-ink:#2b1a24;
  --accent:#CF1592;--bg:#fff8fb;--text:#2b1a24;--muted:#7a6170;--border:#f3dbe8;--ok:#CF1592;
  --k-shadow:0 6px 18px rgba(176,19,106,.08),0 1px 3px rgba(176,19,106,.06);
  font-family:'Quicksand KADA',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  background:var(--k-bg);color:var(--k-ink);accent-color:#CF1592;-webkit-tap-highlight-color:rgba(207,21,146,.12)
}
body.kada-app button,body.kada-app input,body.kada-app select,body.kada-app textarea{font-family:inherit}
/* Las reglas de formularios y botones solo tocan el contenido de la página (.wrap); los popups conservan su diseño. */
body.kada-app ::selection{background:#f8c9e2}
body.kada-app .wrap{padding-top:0}
body.kada-app :focus-visible{outline:3px solid rgba(207,21,146,.45);outline-offset:2px}

/* Íconos Lucide */
.kico{width:1.15em;height:1.15em;flex:none;vertical-align:-.2em;stroke:currentColor}
.kada-h-ico{display:flex;align-items:center;gap:8px}
.kada-h-ico .kico{color:var(--k-main);width:1.25em;height:1.25em}

/* Encabezado rosado (mockup) */
body.kada-app .top.kada-hero{position:relative;display:block;margin:0 -16px 14px;padding:18px 20px 22px;
  background:linear-gradient(135deg,#CF1592 0%,#E91E8C 58%,#f05aae 100%);color:#fff;border-radius:0 0 28px 28px;
  box-shadow:0 10px 26px rgba(207,21,146,.22)}
.kada-hero-row{display:flex;align-items:center;gap:10px;margin:0 0 10px}
.kada-hero-logo{width:44px;height:44px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.55);object-fit:cover}
.kada-hero-brand{font-weight:700;font-size:.95rem;letter-spacing:.06em;opacity:.95}
body.kada-app .kada-hero .nav{margin:0 0 0 auto}
body.kada-app .kada-hero .nav a{display:inline-block;color:#fff;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);padding:5px 12px;border-radius:999px;font-weight:700;font-size:.85rem}
body.kada-app .kada-hero h1{margin:0;font-size:1.6rem;font-weight:700;line-height:1.2;color:#fff}
.kada-hero-sub{margin:4px 0 0;font-size:1rem;font-weight:500;opacity:.95}
.kada-hero-sub:empty{display:none}
.kada-hero-bell{position:absolute;right:16px;bottom:18px;width:44px!important;height:44px;padding:0!important;border-radius:50%!important;
  background:rgba(255,255,255,.18)!important;color:#fff!important;border:1px solid rgba(255,255,255,.4)!important;display:flex;align-items:center;justify-content:center}
.kada-hero-bell .kico{width:22px;height:22px}
.kada-hero-bell[hidden]{display:none!important}

/* Mensajes del portal */
body.kada-app #portalMsg{margin:0 0 12px;padding:12px 14px;border-radius:16px;background:#fff;border:1px solid var(--border);color:#5a3a4c;font-weight:600;box-shadow:var(--k-shadow)}
body.kada-app #portalMsg:empty{display:none}

/* Tarjetas */
body.kada-app .card{background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:var(--k-shadow)}
body.kada-app .wrap h2{font-weight:700}
body.kada-app .hint{color:var(--muted)}
body.kada-app .muted{color:var(--muted)}

/* Formularios: ingreso / registro / cumple */
:where(body.kada-app .wrap) label{font-weight:700;color:#4a3040;font-size:.95rem}
:where(body.kada-app .wrap) input,:where(body.kada-app .wrap) select{border:1.5px solid #ecd3e0;border-radius:14px;background:#fff;color:var(--k-ink)}
:where(body.kada-app .wrap) input:focus,:where(body.kada-app .wrap) select:focus{outline:none;border-color:var(--k-main);box-shadow:0 0 0 4px rgba(207,21,146,.14)}
:where(body.kada-app .wrap) input::placeholder{color:#b598a8}
:where(body.kada-app .wrap) button{border-radius:14px;font-weight:700}
:where(body.kada-app .wrap) button.primary{background:linear-gradient(135deg,#CF1592,#E91E8C);color:#fff;box-shadow:0 6px 16px rgba(207,21,146,.28)}
:where(body.kada-app .wrap) button.primary:active{transform:translateY(1px)}
:where(body.kada-app .wrap) button.secondary{background:#fff;color:var(--k-deep);border:1.5px solid var(--k-soft)}
:where(body.kada-app .wrap) button:disabled{opacity:.55;box-shadow:none}
/* Pestañas Ingresar / Registrarme: misma lógica, colores KADA (el azul ya no aparece) */
body.kada-app #authCard{border-radius:24px;padding:18px}
body.kada-app #tabRegister{background:#fff!important;color:var(--k-deep)!important;border:1.5px solid var(--k-soft)}
/* Botones «Salir»: suaves, sin negro */
body.kada-app #doLogout,body.kada-app #doWaitLogout,body.kada-app #doAdminLogout{background:#fff!important;color:#8a3a63!important;border:1.5px solid #ecd3e0}
/* Ojo de contraseña: ícono Lucide (el botón y su lógica no cambian) */
body.kada-app .pass-toggle{font-size:0!important;width:44px;height:40px;opacity:1;color:#9a6b85}
body.kada-app .pass-toggle::before{content:"";display:block;width:22px;height:22px;margin:auto;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat}
body.kada-app .pass-toggle[aria-pressed="true"]::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49'/%3E%3Cpath d='M14.084 14.158a3 3 0 0 1-4.242-4.242'/%3E%3Cpath d='M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143'/%3E%3Cpath d='m2 2 20 20'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49'/%3E%3Cpath d='M14.084 14.158a3 3 0 0 1-4.242-4.242'/%3E%3Cpath d='M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143'/%3E%3Cpath d='m2 2 20 20'/%3E%3C/svg%3E")}
body.kada-app .pass-toggle:hover,body.kada-app .pass-toggle[aria-pressed="true"]{background:var(--k-tint);color:var(--k-main)}

/* Cumpleaños (perfil) */
body.kada-app #cumpleBox{background:linear-gradient(180deg,#fff0f7,#fff)!important;border:1.5px dashed #e7a8cb!important}
body.kada-app #cumpleFecha{color:var(--k-deep)}
body.kada-app #cumpleRegaloFoto{box-shadow:0 8px 20px rgba(176,19,106,.18)}
body.kada-app #cumpleRegaloTexto{font-weight:600;color:#6a2a4c}

/* Resumen del pedido (antes con borde azul) */
body.kada-app .summary-box{background:#fff;border:0;border-radius:22px;padding:16px 18px;box-shadow:0 10px 26px rgba(176,19,106,.10),0 1px 3px rgba(176,19,106,.06)}
body.kada-app .summary-grid>div{text-align:center}
body.kada-app .summary-label{color:var(--muted);font-weight:600}
body.kada-app .summary-value{color:var(--k-main);font-weight:700}
body.kada-app .summary-pay{color:var(--k-main)}
body.kada-app #cMeta{text-align:center;font-weight:600}

/* Título «Mi pedido» */
.kada-sec-title{display:flex;align-items:center;gap:8px;margin:18px 2px 10px;font-size:1.15rem;font-weight:700;color:var(--k-ink)}
.kada-sec-title .kico{width:24px;height:24px;color:var(--k-ink)}
#pedidoView[hidden] .kada-sec-title{display:none}

/* Tarjetas de productos: foto a la izquierda, esquinas redondeadas, sombra suave (mockup) */
body.kada-app .order{border:0;border-radius:20px;padding:12px;box-shadow:var(--k-shadow);background:#fff}
body.kada-app .order-with-photo{grid-template-columns:96px 1fr;gap:14px;align-items:center}
body.kada-app .order-with-photo .order-photo{width:96px;height:96px;max-height:none;aspect-ratio:auto;border-radius:16px;object-fit:cover;background:var(--k-tint)}
body.kada-app .order-body h2{font-size:1.02rem;line-height:1.3;margin:0 0 4px;font-weight:700}
body.kada-app .order .meta{align-items:baseline;gap:6px 12px;color:var(--muted);font-size:.95rem}
body.kada-app .order .meta .price{color:var(--k-main);font-weight:700;font-size:1.12rem}
body.kada-app .order .cli-qty-grupo{color:#d32f2f}
body.kada-app .order-regalia{background:linear-gradient(135deg,#fff,#fff3f9)}
body.kada-app .order-detalle .order-body h2{margin:0}
body.kada-app .order.rgcard{border:2px solid #f48fb1}

/* Formas de pago */
body.kada-app .fp-item{border-color:var(--border);border-radius:16px}
body.kada-app .fp-item[open]>summary{background:var(--k-bg)}
body.kada-app .fp-item>summary .fp-chev{color:var(--k-main)}

/* Ruleta (tarjeta en el pedido) */
body.kada-app .rlt-card{border:0;border-radius:20px;box-shadow:var(--k-shadow);background:linear-gradient(180deg,#fff0f7,#fff)}

/* Kada puntos */
body.kada-app .kada-pts-balance{background:linear-gradient(135deg,#fff0f7,#fde2ef);border:1px solid var(--k-soft);border-radius:18px}
body.kada-app .kada-pts-big{color:var(--k-main);font-weight:700}
body.kada-app .kada-pts-sub{color:#6a4a5c}
body.kada-app .kada-pts-tabla th,body.kada-app .kada-pts-tabla td{border-color:#f0cfe0!important}

/* Catálogo de regalías: tarjetas claras (antes negras, el nombre no se leía) */
body.kada-app .regalia-card{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--k-shadow);color:var(--k-ink)}
body.kada-app .regalia-card img{background:var(--k-tint)}
body.kada-app .regalia-card .name{font-weight:700;color:var(--k-ink)}
body.kada-app .regalia-card .tier{color:var(--k-deep);opacity:1;font-weight:700}
body.kada-app .regalia-card .pts{color:var(--k-main);font-weight:700}
body.kada-app .regalia-card button{padding:11px 10px;font-size:.98rem}
body.kada-app .regalia-card button.secondary{background:#f3e6ee;color:#5e4553;border:0}
body.kada-app .regalia-chip{background:#fff;border:1px solid var(--k-soft);color:var(--k-ink);font-weight:600;box-shadow:var(--k-shadow)}

/* Espera (evento sin cerrar) */
body.kada-app .portal-wait{background:#fff;border:1px solid var(--border);color:#4a3040}

/* Botón de ayuda por WhatsApp: no tapa el menú de abajo */
body.kada-app.kada-nav-on .wa-help{bottom:calc(84px + env(safe-area-inset-bottom,0px))}
body.kada-app.kada-nav-on .privacy-link{margin-bottom:calc(150px + env(safe-area-inset-bottom,0px))!important}

/* Menú inferior (atajos a las secciones que ya existen; no oculta nada) */
.kada-nav{position:fixed;left:0;right:0;bottom:0;z-index:45;display:none;background:rgba(255,255,255,.97);
  border-top:1px solid #f3dbe8;box-shadow:0 -6px 20px rgba(176,19,106,.08);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
body.kada-nav-on .kada-nav{display:block}
.kada-nav-in{max-width:560px;margin:0 auto;display:flex;justify-content:space-around}
.kada-nav button{flex:1;width:auto;background:none;border:0;border-radius:12px;padding:6px 2px;margin:0;color:#7a6170;
  display:flex;flex-direction:column;align-items:center;gap:3px;font-size:.74rem;font-weight:600;box-shadow:none}
.kada-nav button .kico{width:23px;height:23px}
.kada-nav button[hidden]{display:none}
.kada-nav button.on{color:var(--k-main)}
.kada-nav button.on .kico{stroke-width:2.3}
body.kada-app #pedidoView>section,body.kada-app #cumpleBox,body.kada-app #waitView>div,body.kada-app #regGrid,body.kada-app #waitRegGrid,body.kada-app #regaliasBox,body.kada-app #ruletaCard,body.kada-app #clientSummary{scroll-margin-top:84px}

/* Escritorio: misma columna centrada, un poco más de aire */
@media (min-width:700px){
  body.kada-app .wrap{max-width:560px}
  body.kada-app .top.kada-hero{margin:0 0 16px;border-radius:0 0 28px 28px}
  body.kada-app .order-with-photo{grid-template-columns:112px 1fr}
  body.kada-app .order-with-photo .order-photo{width:112px;height:112px}
}
@media (prefers-reduced-motion:reduce){body.kada-app *{scroll-behavior:auto!important}}

/* Botón «Canjes» arriba del pedido (David 2026-10-08): brilla, salta y abre el catálogo en una hoja. Solo visual. */
.kcj-btn{position:relative;display:flex;align-items:center;gap:12px;width:100%;margin:0 0 14px;padding:14px 16px 14px 14px;border:0;border-radius:22px;
  background:linear-gradient(120deg,#CF1592 0%,#E91E8C 45%,#f6a623 100%);color:#fff;text-align:left;cursor:pointer;overflow:visible;
  box-shadow:0 10px 24px rgba(207,21,146,.35),inset 0 0 0 2px rgba(255,255,255,.35);-webkit-tap-highlight-color:transparent;
  animation:kcjSalto 3.2s ease-in-out .6s infinite;font-family:inherit}
.kcj-btn[hidden]{display:none}
.kcj-btn:active{transform:scale(.97)}
.kcj-btn .kcj-shine{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}
.kcj-btn .kcj-shine::after{content:"";position:absolute;top:-20%;bottom:-20%;left:-60%;width:45%;transform:skewX(-20deg);
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.75),rgba(255,255,255,0));animation:kcjBrillo 2.6s ease-in-out infinite}
.kcj-ico{position:relative;flex:none;width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:2rem;
  background:rgba(255,255,255,.22);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5);animation:kcjRegalo 3.2s ease-in-out .6s infinite}
.kcj-txt{position:relative;flex:1;display:flex;flex-direction:column;line-height:1.15;min-width:0}
.kcj-txt b{font-size:1.55rem;font-weight:800;letter-spacing:.3px;text-shadow:0 2px 6px rgba(120,0,60,.35)}
.kcj-txt small{margin-top:3px;font-size:.95rem;font-weight:700;color:#fff6d8}
.kcj-go{position:relative;flex:none;width:34px;height:34px;border-radius:50%;background:#fff;color:#CF1592;display:flex;align-items:center;justify-content:center;
  font-size:1.6rem;font-weight:800;line-height:1;padding-bottom:3px;box-shadow:0 3px 8px rgba(120,0,60,.25)}
.kcj-badge{position:absolute;top:-9px;right:-6px;min-width:28px;height:28px;padding:0 7px;border-radius:999px;background:#ffd23f;color:#7a2a00;
  font-weight:800;font-size:1rem;display:flex;align-items:center;justify-content:center;border:2.5px solid #fff;box-shadow:0 3px 8px rgba(0,0,0,.2);animation:kcjLatido 1.6s ease-in-out infinite}
.kcj-badge[hidden]{display:none}
.kcj-spark{position:absolute;color:#fff7c2;font-size:1rem;pointer-events:none;text-shadow:0 0 6px #fff;opacity:0;animation:kcjChispa 2.4s ease-in-out infinite}
.kcj-spark.s1{top:6px;left:58px}
.kcj-spark.s2{bottom:6px;left:46%;font-size:.85rem;animation-delay:.8s}
.kcj-spark.s3{top:8px;right:64px;font-size:1.15rem;animation-delay:1.5s}
@keyframes kcjSalto{0%,62%,100%{transform:translateY(0)}68%{transform:translateY(-7px) scale(1.02)}74%{transform:translateY(0)}79%{transform:translateY(-3px)}84%{transform:translateY(0)}}
@keyframes kcjRegalo{0%,62%,100%{transform:rotate(0)}66%{transform:rotate(-12deg) scale(1.08)}71%{transform:rotate(10deg) scale(1.08)}76%{transform:rotate(-6deg)}81%{transform:rotate(0)}}
@keyframes kcjBrillo{0%{left:-60%}55%,100%{left:130%}}
@keyframes kcjChispa{0%,100%{opacity:0;transform:scale(.4) rotate(0)}40%{opacity:1;transform:scale(1.15) rotate(25deg)}70%{opacity:0;transform:scale(.6) rotate(45deg)}}
@keyframes kcjLatido{0%,100%{transform:scale(1)}50%{transform:scale(1.14)}}

/* Hoja del catálogo de canjes (el mismo catálogo de siempre, movido aquí mientras está abierta) */
html.kcj-lock,html.kcj-lock body{overflow:hidden}
.kcj-ov{position:fixed;inset:0;z-index:2147483000;background:rgba(43,26,36,0);display:flex;align-items:flex-end;justify-content:center;transition:background .25s ease}
.kcj-ov[hidden]{display:none}
.kcj-ov.on{background:rgba(43,26,36,.55)}
.kcj-sheet{width:100%;max-width:560px;max-height:88vh;max-height:88dvh;display:flex;flex-direction:column;background:#fff8fb;border-radius:26px 26px 0 0;
  box-shadow:0 -10px 34px rgba(120,0,60,.3);transform:translateY(100%);transition:transform .32s cubic-bezier(.2,.9,.3,1.15)}
.kcj-ov.on .kcj-sheet{transform:translateY(0)}
.kcj-head{position:relative;display:flex;align-items:center;gap:10px;padding:20px 16px 14px;border-radius:26px 26px 0 0;color:#fff;
  background:linear-gradient(120deg,#CF1592,#E91E8C 55%,#f6a623)}
.kcj-grab{position:absolute;top:7px;left:50%;width:42px;height:5px;margin-left:-21px;border-radius:9px;background:rgba(255,255,255,.6)}
.kcj-head h2{flex:1;margin:0;font-size:1.25rem;font-weight:800;color:#fff}
.kcj-kp{flex:none;padding:5px 11px;border-radius:999px;background:#fff;color:#b0136a;font-weight:800;font-size:.95rem}
.kcj-x{flex:none;width:38px!important;height:38px;padding:0!important;margin:0!important;border-radius:50%!important;border:0;background:rgba(255,255,255,.25)!important;color:#fff!important;font-size:1.1rem;box-shadow:none!important}
.kcj-body{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:12px 12px calc(18px + env(safe-area-inset-bottom,0px))}
.kcj-body #regaliasBox{margin:0!important;box-shadow:none;border:0;background:transparent;padding:0}
.kcj-body #regaliasBox>#regTitle{display:none!important}
@media (prefers-reduced-motion:reduce){
  .kcj-btn,.kcj-ico,.kcj-badge,.kcj-spark,.kcj-btn .kcj-shine::after{animation:none!important}
  .kcj-spark{display:none}
  .kcj-ov,.kcj-sheet{transition:none!important}
}

/* CANJES_HOJA: botón en modo suave «Mis Kada puntos» (cuando no hay nada para canjear) */
.kcj-btn.kcj-soft{background:linear-gradient(135deg,#fff,#fff0f7);color:#b0136a;box-shadow:0 6px 16px rgba(176,19,106,.14),inset 0 0 0 1.5px #f3c6dd;animation:none}
.kcj-btn.kcj-soft .kcj-ico{background:#fff7d6;box-shadow:inset 0 0 0 1.5px #f3dc8a;animation:none}
.kcj-btn.kcj-soft .kcj-txt b{font-size:1.3rem;text-shadow:none;color:#b0136a}
.kcj-btn.kcj-soft .kcj-txt small{color:#8a5a73}
.kcj-btn.kcj-soft .kcj-go{background:#fde7f2;color:#b0136a;box-shadow:none}
.kcj-btn.kcj-soft .kcj-shine,.kcj-btn.kcj-soft .kcj-spark,.kcj-btn.kcj-soft .kcj-badge{display:none}
/* Saldo + historial al final de la hoja (antes estaban arriba y ocultos en la hoja) */
.kcj-body #regaliasBox>#regSaldoSec{margin:18px 0 4px;padding:14px 0 0;border-top:1.5px dashed #f3c6dd}
.kcj-saldo-h{margin:0 0 10px;font-size:1.12rem;font-weight:800;color:#b0136a}
.kcj-saldo:has(#regPtsBalance[hidden]){display:none}
/* Fuera de la hoja el catálogo no se muestra (vive en la hoja de Canjes) */
body.kada-app #pedidoView>#regaliasBox{display:none!important}

/* VIP_ESTRELLA: estrella dorada «★ VIP» en regalos exclusivos VIP (solo clientas VIP) */
.vip-star{position:relative;display:inline-flex;align-items:center;gap:3px;margin:0 6px 4px 0;padding:3px 10px 3px 8px;border-radius:999px;
  font:800 .8rem/1.2 Quicksand,system-ui,sans-serif;letter-spacing:.6px;color:#5a3a00;white-space:nowrap;vertical-align:middle;
  background:linear-gradient(135deg,#fff3b0 0%,#ffd54f 35%,#f6a623 70%,#ffe082 100%);border:1.5px solid #fff;
  box-shadow:0 0 0 1.5px #e0a100,0 0 12px rgba(255,200,40,.85),0 2px 6px rgba(120,70,0,.3);overflow:hidden;
  animation:vipGlow 2.2s ease-in-out infinite;text-shadow:0 1px 0 rgba(255,255,255,.6)}
.vip-star::after{content:"";position:absolute;top:-30%;bottom:-30%;left:-70%;width:45%;transform:skewX(-20deg);
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.95),rgba(255,255,255,0));animation:vipBrillo 2.8s ease-in-out infinite}
.order-body>.vip-star{display:inline-flex}
.regalia-card .body>.vip-star{margin:0 0 6px;align-self:flex-start;width:-moz-fit-content;width:fit-content}
.regalia-chip .vip-star{margin:0 0 0 6px;padding:1px 7px;font-size:.7rem}
#cumpleRegalo h2 .vip-star{margin-left:8px}
.order.vip-glow,.regalia-card.vip-glow{box-shadow:0 0 0 2px #ffd54f,0 0 18px rgba(255,200,40,.55),0 6px 18px rgba(176,19,106,.12)!important}
/* VIP_ARRIBA: títulos de sección en el catálogo de canjes de clientas VIP */
.regalia-grid>.vip-cat-h{grid-column:1/-1;display:flex;align-items:center;gap:8px;margin:6px 0 -2px;font:800 1.02rem/1.2 Quicksand,system-ui,sans-serif;color:#b0136a}
.regalia-grid>.vip-cat-h::after{content:"";flex:1;height:2px;border-radius:2px;background:linear-gradient(90deg,#f3c6dd,rgba(243,198,221,0))}
.regalia-grid>.vip-cat-h:not(:first-child){margin-top:14px}
.regalia-grid>.vip-cat-h-vip{color:#8a5a00;text-shadow:0 1px 0 rgba(255,255,255,.7)}
.regalia-grid>.vip-cat-h-vip::after{background:linear-gradient(90deg,#ffd54f,#f6a623 40%,rgba(246,166,35,0))}
@keyframes vipGlow{0%,100%{box-shadow:0 0 0 1.5px #e0a100,0 0 8px rgba(255,200,40,.6),0 2px 6px rgba(120,70,0,.3)}50%{box-shadow:0 0 0 1.5px #e0a100,0 0 18px rgba(255,210,60,1),0 2px 6px rgba(120,70,0,.3)}}
@keyframes vipBrillo{0%{left:-70%}55%,100%{left:140%}}
@media (prefers-reduced-motion:reduce){.vip-star,.vip-star::after{animation:none!important}.vip-star::after{display:none}}
