.fid-customer{--fid-primary:#6d28d9;--fid-accent:#ff3d8d;--fid-surface:#f5f0ff;--fid-ink:#25113f;--fid-on-primary:#fff;--fid-on-accent:#17211c;--fid-radius:8px;color:var(--fid-ink);font-family:inherit;line-height:1.5;padding:8px 0 28px;max-width:100%;min-width:0}.fid-customer *{box-sizing:border-box}.fid-customer .fid-header{margin-bottom:20px}.fid-customer .fid-header h3{margin:0 0 4px;font-size:28px;font-weight:700;color:var(--fid-primary)}.fid-customer .fid-header p{margin:0;color:var(--fid-ink);font-size:14px}.fid-customer .fid-balance{display:flex;justify-content:space-between;gap:24px;align-items:center;background:var(--fid-primary);color:var(--fid-on-primary);border-radius:var(--fid-radius);padding:22px 24px;margin:16px 0}.fid-customer .fid-balance span{display:block;font-size:14px}.fid-customer .fid-balance strong{display:block;font-size:40px;line-height:1.2;font-weight:700;margin:4px 0;color:inherit}.fid-customer .fid-next{border-left:1px solid currentColor;padding-left:24px;min-width:160px}.fid-customer .fid-next b{display:block;font-size:20px;margin:4px 0;color:inherit}.fid-customer h4{margin:26px 0 14px;font-size:21px;font-weight:700;color:var(--fid-ink)}.fid-customer .fid-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px}.fid-customer .fid-card{min-width:0;padding:20px;border:1px solid #dce3db;border-radius:var(--fid-radius);background:#fff;display:flex;flex-direction:column;align-items:stretch}.fid-customer .fid-card h5{margin:0 0 8px;color:var(--fid-ink);font-size:21px;font-weight:700;line-height:1.35}.fid-customer .fid-card p{margin:6px 0;font-size:14px;color:var(--fid-ink)}.fid-customer .fid-card .fid-cost{font-size:16px;font-weight:600;margin-bottom:12px}.fid-customer .fid-redeem{margin-top:auto;padding-top:16px}.fid-customer .btn{background:var(--fid-primary);color:var(--fid-on-primary);border:1px solid var(--fid-primary);border-radius:var(--fid-radius);padding:11px 14px;min-height:44px;font-size:14px;font-weight:600;white-space:normal;box-shadow:none;text-transform:none;letter-spacing:0;line-height:1.4}.fid-customer .btn:hover{filter:brightness(.92);background:var(--fid-primary);color:var(--fid-on-primary)}.fid-customer .btn:focus-visible{outline:3px solid var(--fid-accent);outline-offset:3px}.fid-customer .fid-redeem .btn{width:100%}.fid-customer .fid-copy{background:var(--fid-accent);color:var(--fid-on-accent);border-color:var(--fid-accent);margin-top:14px}.fid-customer .fid-copy:hover{background:var(--fid-accent);color:var(--fid-on-accent)}.fid-customer .fid-code-label{display:block;font-size:12px;font-weight:400;margin:14px 0 6px;color:var(--fid-ink)}.fid-customer .fid-code{display:block;white-space:normal;overflow-wrap:anywhere;word-break:break-word;font-family:monospace;font-size:13px;font-weight:400;letter-spacing:0;background:var(--fid-surface);color:var(--fid-ink);border:1px solid #dce3db;border-radius:var(--fid-radius);padding:12px;margin-top:5px;line-height:1.6}.fid-customer .fid-status{align-self:flex-start;background:var(--fid-surface);color:var(--fid-ink);font-size:12px;padding:3px 8px;border-radius:var(--fid-radius)}.fid-customer .fid-terms,.fid-customer .fid-muted{font-size:12px!important;color:var(--fid-ink);opacity:.8}.fid-customer .fid-terms{margin-top:12px}.fid-customer details{border:1px solid #dce3db;border-radius:var(--fid-radius);padding:12px 16px;background:var(--fid-surface);font-size:14px}.fid-customer summary{cursor:pointer;font-size:14px;font-weight:500}.fid-customer .fid-scroll{overflow:auto}.fid-customer table{width:100%;border-collapse:collapse;margin-top:10px}.fid-customer td,.fid-customer th{padding:10px;text-align:left;border-bottom:1px solid #dce3db;font-size:13px}.fid-customer .fid-success{background:var(--fid-surface);color:var(--fid-ink);padding:14px 16px;border:1px solid #dce3db;border-radius:var(--fid-radius);font-size:14px;font-weight:400}.fid-customer .fid-success a{color:inherit;text-decoration:underline}.fid-customer .fid-error{background:#fff0ed;color:#8c291b;padding:14px 16px;border-radius:var(--fid-radius)}.fidel-cart{border:1px solid #d9e4d2;border-radius:8px;padding:20px;background:#f4f8ef;margin:15px 0;color:#263c2c}.fidel-cart input{max-width:100%;margin:8px 0}.fidel-cart code{overflow-wrap:anywhere}.fidel-cart ul{padding-left:20px}.fidel-cart .btn{background:#233e2b;border:0;color:#fff;border-radius:8px}@media(max-width:600px){.fid-customer .fid-balance{padding:20px;gap:16px;align-items:flex-start;flex-direction:column}.fid-customer .fid-next{border-left:0;border-top:1px solid currentColor;padding:14px 0 0;width:100%}.fid-customer .fid-card{padding:18px}.fid-customer .fid-header h3{font-size:25px}}

/* Imágenes configuradas: escritorio, celular y ejemplo genérico. */
.fid-customer .fid-illustrated{position:relative;isolation:isolate;overflow:hidden;min-height:190px;color:#fff;background:#25113f}.fid-customer .fid-hero-art{position:absolute;inset:0;z-index:-2;display:block}.fid-customer .fid-hero-art img{width:100%;height:100%;object-fit:cover;object-position:center}.fid-customer .fid-illustrated:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(20,5,47,.75),rgba(20,5,47,.3))}.fid-customer .fid-illustrated>div{position:relative}.fid-customer .fid-public-hero{padding:32px;border-radius:8px;margin:16px 0}.fid-customer .fid-public-hero h4{color:inherit;margin:0 0 10px;max-width:430px;font-size:28px}.fid-customer .fid-public-hero p{margin:0 0 20px;color:inherit}.fid-customer .fid-public-hero .btn{background:#fff;color:#25113f;border-color:#fff}.fid-config-images{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.fid-config-images figure{margin:0;max-width:240px}.fid-config-images img{display:block;width:220px;height:76px;object-fit:cover;border-radius:8px;border:1px solid #e6e0ee;background:#f5f0ff}.fid-config-images .fid-logo-image{width:144px;object-fit:contain;padding:8px}.fid-config-images figcaption{font-size:12px;margin-top:5px;color:#595065}@media(max-width:600px){.fid-customer .fid-illustrated{min-height:220px}.fid-customer .fid-hero-art img{object-position:65% center}.fid-customer .fid-illustrated:after{background:rgba(20,5,47,.65)}.fid-customer .fid-public-hero{padding:24px}.fid-customer .fid-public-hero h4{font-size:24px}}

/* El texto del banner público debe contrastar con la imagen, aunque el tema de tienda coloree los títulos. */
#fidelizacion .fid-public-hero{display:block;width:100%;max-width:none;box-sizing:border-box}
#fidelizacion .fid-public-hero h4,#fidelizacion .fid-public-hero p{color:#fff!important;opacity:1!important}
#fidelizacion .fid-public-hero h4{max-width:none}

#fidelizacion .fid-program-acceptance{margin:16px 0;font-size:13px;line-height:1.6;color:var(--fid-ink)}#fidelizacion .fid-program-acceptance a{color:var(--fid-primary);text-decoration:underline}#fidelizacion .fid-terms-details{margin-top:24px;scroll-margin-top:180px}#fidelizacion .fid-terms-content{font-size:14px;line-height:1.75;color:var(--fid-ink);padding-top:16px;overflow-wrap:anywhere}#fidel-admin .fid-config-terms{margin-top:22px;border:1px solid #ddd;border-radius:8px;padding:16px}#fidel-admin .fid-config-terms textarea{width:100%;box-sizing:border-box;border-radius:8px;resize:vertical;line-height:1.5;margin:8px 0;min-height:220px}
