/* MPS Mining - estilos del banner de cookies. */
.mps-cc, .mps-cc-fab { --cc-blue:var(--color-dark,#0B3448); --cc-gold:var(--color-accent,#86CBBF); --cc-cta:var(--color-cta,#6DBBAE); --cc-slate:var(--color-slate,#7F98A4); --cc-mineral:var(--color-on-dark,#F2F6F6); font-family:var(--font-body,'Source Sans 3',system-ui,sans-serif); }
.mps-cc {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 2147483000;
  background: var(--cc-blue); color: var(--cc-mineral);
  border-top: 1px solid rgb(242 246 246 / .14);
  box-shadow: 0 -8px 28px rgb(11 52 72 / .35);
  max-height: 90vh; max-height: 90dvh; overflow-y: auto;
  padding-bottom: env(safe-area-inset-bottom);
  opacity: 0; transform: translateY(16px);
}
.mps-cc[hidden], .mps-cc-fab[hidden] { display: none; }
.mps-cc--in { opacity: 1; transform: none; transition: opacity .35s ease, transform .35s ease; }
.mps-cc__in { max-width: 1100px; margin: 0 auto; padding: 16px 20px; display: grid; gap: 14px; grid-template-columns: 1fr auto; align-items: center; }
.mps-cc__title { font: 700 1.05rem/1.2 var(--font-head,'Manrope','Montserrat',system-ui,sans-serif); margin: 0 0 6px; color: #fff; outline: none; }
.mps-cc__text { margin: 0; font-size: .95rem; line-height: 1.5; }
.mps-cc__text a { color: var(--cc-gold); text-decoration: underline; text-underline-offset: 2px; }
.mps-cc__prefs { grid-column: 1 / -1; grid-row: 2; display: grid; gap: 10px; border-top: 1px solid rgb(242 246 246 / .2); padding-top: 12px; }
.mps-cc__prefs[hidden] { display: none; }
.mps-cc--open .mps-cc__main { grid-column: 1 / -1; }
.mps-cc__row { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.mps-cc__rowtxt p { margin: 2px 0 0; font-size: .88rem; color: var(--color-on-dark-soft,#C9DDE4); line-height: 1.4; }
.mps-cc__label { font: 700 .95rem var(--font-head,'Manrope','Montserrat',system-ui,sans-serif); color: #fff; }
.mps-cc__switch { appearance: none; -webkit-appearance: none; flex: none; width: 46px; height: 26px; border-radius: 13px; background: var(--cc-slate); position: relative; cursor: pointer; margin: 0; transition: background .2s; }
.mps-cc__switch::after { content: ''; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: transform .2s; }
.mps-cc__switch:checked { background: var(--cc-cta); }
.mps-cc__switch:checked::after { transform: translateX(20px); background: var(--color-cta-ink,#0E2530); }
.mps-cc__switch:disabled { opacity: .6; cursor: not-allowed; }
.mps-cc__actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.mps-cc--open .mps-cc__actions { grid-column: 1 / -1; }
.mps-cc__btn { font: 700 .9rem var(--font-head,'Manrope','Montserrat',system-ui,sans-serif); min-height: 44px; padding: 10px 18px; border-radius: 8px; cursor: pointer; border: 1.5px solid var(--cc-gold); background: transparent; color: var(--cc-mineral); }
.mps-cc__btn:hover { background: rgb(var(--accent-rgb,134 203 191) / .16); }
.mps-cc__btn--primary { background: var(--cc-cta); border-color: var(--cc-cta); color: var(--color-cta-ink,#0E2530); }
.mps-cc__btn--primary:hover { background: var(--color-cta-hover,#8AD0C4); border-color: var(--color-cta-hover,#8AD0C4); }
.mps-cc__btn[hidden] { display: none; }
.mps-cc :focus-visible, .mps-cc-fab:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.mps-cc__btn--primary:focus-visible { outline-color: var(--cc-mineral); box-shadow: 0 0 0 5px var(--cc-blue); }
.mps-cc-fab { position: fixed; left: 14px; bottom: 14px; z-index: 2147482000; width: 44px; height: 44px; border-radius: 50%; border: 2px solid var(--cc-gold); background: var(--cc-blue); color: var(--cc-gold); display: grid; place-items: center; cursor: pointer; box-shadow: 0 2px 10px rgb(11 52 72 / .4); }
.mps-cc-fab:hover { background: var(--color-dark-2,#12485F); }
/* espacio para que el banner no tape el final de la página */
html.mps-cc-on body { padding-bottom: var(--mps-cc-h, 0); }
@media (max-width: 720px) {
  .mps-cc__in { grid-template-columns: 1fr; padding: 14px 16px; gap: 12px; }
  .mps-cc__actions { flex-direction: column-reverse; }
  .mps-cc__btn { width: 100%; }
  .mps-cc__text { font-size: .9rem; }
}
@media (prefers-reduced-motion: reduce) {
  .mps-cc, .mps-cc--in, .mps-cc__switch, .mps-cc__switch::after { transition: none; transform: none; }
}
