/* DominiPay — sistema único de cookies (banner + modal de preferências) */
body.locked{overflow:hidden}

.cookie-banner{position:fixed;z-index:1300;left:20px;right:20px;bottom:18px;max-width:980px;margin-inline:auto;background:#fff;border:1px solid #e4e8ee;box-shadow:0 18px 60px rgba(6,21,47,.24);padding:18px 20px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;border-radius:14px}
.cookie-banner.hidden{display:none}
.cookie-banner-main{display:flex;align-items:center;gap:14px;min-width:0}
.cookie-banner-main p{margin:0;color:var(--dp-muted,#66758a);font-size:.85rem}
.cookie-mini-logo img{display:block;width:34px;height:34px;object-fit:contain}
.cookie-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.cookie-btn{min-height:42px;padding:0 14px;border:1px solid #e4e8ee;background:#fff;color:var(--dp-navy,#06152f);font-weight:850;font-size:.78rem;border-radius:8px;cursor:pointer}
.cookie-btn:hover{border-color:var(--dp-blue,#1766c2);color:var(--dp-blue,#1766c2)}
.cookie-btn.cookie-accept{background:var(--dp-blue,#1766c2);border-color:var(--dp-blue,#1766c2);color:#fff}
.cookie-btn.cookie-accept:hover{filter:brightness(1.08);color:#fff}

.cookie-modal{position:fixed;z-index:2100;inset:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
.cookie-modal.open{opacity:1;visibility:visible}
.cookie-backdrop{position:absolute;inset:0;border:0;background:rgba(2,9,20,.72);backdrop-filter:blur(6px)}
.cookie-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-46%);width:min(680px,calc(100% - 28px));max-height:calc(100vh - 32px);overflow:auto;background:#fff;padding:32px;box-shadow:0 34px 110px rgba(0,0,0,.36);border-radius:14px;transition:transform .3s}
.cookie-modal.open .cookie-card{transform:translate(-50%,-50%)}
.cookie-close-x{position:absolute;right:18px;top:13px;width:42px;height:42px;border:0;background:transparent;font-size:1.8rem;color:var(--dp-navy,#06152f);cursor:pointer}
.cookie-card-brand{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.cookie-card-brand img{display:block;width:140px;object-fit:contain}
.cookie-card h3{font-size:1.6rem;margin:0 0 10px}
.cookie-card-intro{color:var(--dp-muted,#66758a);font-size:.9rem;margin-bottom:10px}
.cookie-row{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 0;border-bottom:1px solid #e4e8ee}
.cookie-row b{display:block}
.cookie-row small{display:block;color:var(--dp-muted,#66758a);margin-top:4px}
.cookie-switch{width:50px;height:28px;border-radius:999px;border:0;background:#c7d1de;position:relative;flex:0 0 auto;transition:.2s;cursor:pointer}
.cookie-switch:after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:#fff;left:3px;top:3px;box-shadow:0 2px 8px rgba(6,21,47,.2);transition:.2s}
.cookie-switch.on{background:var(--dp-blue,#1766c2)}
.cookie-switch.on:after{left:25px}
.cookie-switch.locked{background:#8b98a9;cursor:not-allowed}
.cookie-card-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px}
.cookie-policy-link{color:var(--dp-blue,#1766c2);font-weight:850;font-size:.82rem;background:none;border:0;cursor:pointer}

@media(max-width:700px){
  .cookie-banner{grid-template-columns:1fr;left:10px;right:10px;bottom:10px;padding:16px}
  .cookie-actions{justify-content:flex-start;display:grid;grid-template-columns:1fr 1fr;width:100%}
  .cookie-btn{width:100%}
  .cookie-btn.cookie-accept{grid-column:1/-1}
  .cookie-mini-logo{display:none}
  .cookie-card{padding:24px 18px}
  .cookie-card h3{font-size:1.4rem}
  .cookie-card-actions{align-items:stretch;flex-direction:column}
  .cookie-card-actions .btn{width:100%}
}
