:root{--mcnb-font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}
.mcnb-root,.mcnb-gdpr-modal{font-family:var(--mcnb-font-family)}
.mcnb-root *,.mcnb-gdpr-modal *{font-family:inherit}
.mcnb-root{position:fixed;z-index:999999;inset:auto;max-width:calc(100vw - 24px);padding-bottom:env(safe-area-inset-bottom)}
.mcnb-wrapper{display:flex;gap:10px;align-items:center}
.mcnb-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:600;line-height:1;box-sizing:border-box;min-width:44px;min-height:44px;transition:all .15s ease;outline:none}
.mcnb-button:focus{outline:2px solid #fff;outline-offset:3px}
.mcnb-button:focus-visible{outline:3px solid #0b57d0;outline-offset:4px}
.mcnb-icon{display:inline-block!important;width:1em!important;height:1em!important;fill:currentColor!important;vertical-align:middle!important}
.mcnb-label{padding:10px 14px;white-space:nowrap;transition:all .15s ease}
.mcnb-button img{display:block;max-width:1em;max-height:1em}

/* Estilos de botón */
.mcnb-button.style-circle{border-radius:50%}
.mcnb-button.style-square{border-radius:8px}
.mcnb-button.style-pill{border-radius:999px;padding:0 16px}
.mcnb-button.style-text_side{border-radius:999px;padding:12px 20px;gap:8px}

/* Posiciones de etiqueta */
.mcnb-wrapper.label-left{flex-direction:row-reverse}
.mcnb-wrapper.label-right{flex-direction:row}
.mcnb-wrapper.label-top{flex-direction:column-reverse}
.mcnb-wrapper.label-bottom{flex-direction:column}

/* Sombras */
.mcnb-button.has-shadow{box-shadow:0 8px 24px var(--mcnb-shadow-color, rgba(0,0,0,.18))}
.mcnb-button.has-shadow:hover{box-shadow:0 12px 32px var(--mcnb-shadow-color, rgba(0,0,0,.25))}

/* Bordes */
.mcnb-button.has-border{border:var(--mcnb-border-width, 2px) solid var(--mcnb-border-color, #ffffff)}

/* Estilo texto al lado */
.mcnb-button.style-text_side{display:flex;align-items:center;justify-content:center;flex-direction:row}

/* Efectos hover */
.mcnb-button.hover-lift:hover{transform:translateY(-2px)}
.mcnb-button.hover-grow:hover{transform:scale(1.05)}
.mcnb-button.hover-glow:hover{filter:brightness(1.1);box-shadow:0 0 20px currentColor}
.mcnb-button.hover-rotate:hover{transform:rotate(5deg)}

/* Animaciones */
@keyframes mcnb-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
@keyframes mcnb-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}
@keyframes mcnb-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes mcnb-glow{0%,100%{filter:brightness(1)}50%{filter:brightness(1.2)}}
@keyframes mcnb-fade{0%,100%{opacity:1}50%{opacity:0.7}}

.mcnb-button.anim-pulse{animation:mcnb-pulse 2s infinite}
.mcnb-button.anim-shake{animation:mcnb-shake 0.5s infinite}
.mcnb-button.anim-bounce{animation:mcnb-bounce 1s infinite}
.mcnb-button.anim-glow{animation:mcnb-glow 2s infinite}
.mcnb-button.anim-fade{animation:mcnb-fade 2s infinite}

/* Responsive */
@media (max-width: 782px){
  .mcnb-wrapper.label-left .mcnb-label,
  .mcnb-wrapper.label-right .mcnb-label{display:none}
  .mcnb-wrapper.label-top,
  .mcnb-wrapper.label-bottom{flex-direction:column}
}

/* Exit intent modal */
.mcnb-exit-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.8);z-index:1000000;display:flex;align-items:center;justify-content:center}
.mcnb-exit-content{background:#fff;padding:32px;border-radius:12px;max-width:400px;text-align:center;animation:mcnb-modal-in 0.3s ease}
@keyframes mcnb-modal-in{from{opacity:0;transform:scale(0.9)}to{opacity:1;transform:scale(1)}}

/* Consent modal */
.mcnb-gdpr-modal{position:fixed;inset:0;background:var(--mcnb-modal-bg,rgba(0,0,0,.7));display:flex;align-items:center;justify-content:center;z-index:1000000;padding:20px;box-sizing:border-box;animation:mcnb-fade-in .25s ease}
.mcnb-gdpr-content{background:var(--mcnb-modal-content-bg,#fff);padding:30px;border-radius:var(--mcnb-modal-radius,12px);max-width:400px;width:100%;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.3);animation:mcnb-slide-up .25s ease}
.mcnb-gdpr-content h3{margin:0;color:var(--mcnb-modal-title-color,#2c3e50);font-size:18px;line-height:1.45}
.mcnb-gdpr-actions{display:flex;gap:12px;justify-content:center;margin-top:24px;flex-wrap:wrap}
.mcnb-gdpr-actions button{border:0;padding:12px 24px;border-radius:var(--mcnb-btn-radius,6px);font-weight:600;cursor:pointer;font-size:14px;transition:all .2s ease}
.mcnb-gdpr-accept{background:var(--mcnb-accept-bg,#25D366);color:var(--mcnb-accept-color,#fff)}
.mcnb-gdpr-decline{background:var(--mcnb-decline-bg,#e74c3c);color:var(--mcnb-decline-color,#fff)}
.mcnb-gdpr-accept:hover{background:var(--mcnb-accept-hover-bg,#22c55e);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}
.mcnb-gdpr-decline:hover{background:var(--mcnb-decline-hover-bg,#dc2626);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}
.mcnb-gdpr-actions button:focus{outline:2px solid #2563eb;outline-offset:2px}
@keyframes mcnb-fade-in{from{opacity:0}to{opacity:1}}
@keyframes mcnb-fade-out{from{opacity:1}to{opacity:0}}
@keyframes mcnb-slide-up{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes mcnb-slide-down{from{transform:translateY(0);opacity:1}to{transform:translateY(20px);opacity:0}}

@media (prefers-reduced-motion:reduce){
  .mcnb-button,.mcnb-label,.mcnb-gdpr-content,.mcnb-gdpr-modal{animation:none!important;transition:none!important}
  .mcnb-button.anim-pulse,.mcnb-button.anim-shake,.mcnb-button.anim-bounce,.mcnb-button.anim-glow,.mcnb-button.anim-fade{animation:none!important}
}

@media (max-width:782px){
  .mcnb-root{max-width:calc(100vw - 16px);transform:translateY(calc(-1 * env(safe-area-inset-bottom,0px)))}
  .mcnb-gdpr-actions{flex-direction:column}
  .mcnb-gdpr-actions button{width:100%}
}
