/* consent.css */
:root{
  --ccv2-accent:#6c2c99;
  --ccv2-accent-hover:#5a237f;
}



#iconcookie
{
    position:fixed;
    padding: 3px;
    z-index: 2;
      backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  background-color: rgba(255,255,255,.40);
    bottom: 90px;
    left: 24px;
    border-radius: 50%;
    display: none;
}


.ccv2-overlay{
  position:fixed; inset:0; z-index:999999;
  background:rgba(0,0,0,.45);
  display:none;
  align-items:center; justify-content:center;
  padding:16px;
  overflow:hidden;
}

.ccv2-modal{
  width:min(520px, 100%);
  background:#fff;
  border-radius:16px;
  box-shadow:0 20px 70px rgba(0,0,0,.35);
  overflow:hidden;
  max-height: calc(100vh - 32px);
  display:flex;
  flex-direction:column;
}

.ccv2-body{
  padding:18px 18px 16px;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  flex:1 1 auto;
  min-height:0;
}

.ccv2-step{ display:none; flex-direction:column; min-height:0; }
.ccv2-step--active{ display:flex; }

.ccv2-brand{ display:flex; gap:12px; align-items:center; margin-bottom:10px; }
.ccv2-brand img{ width:36px; height:36px; object-fit:contain; }
.ccv2-brand-name{ font-weight:800; font-size:18px; line-height:1; }

.ccv2-headline{ font-weight:800; margin:6px 0 10px; font-size:18px; }
.ccv2-text{ margin:0; color:#334155; font-size:14px; line-height:1.45; }
.ccv2-mt{ margin-top:10px; }
.ccv2-mt2{ margin-top:14px; }

.ccv2-actions{
  display:flex; gap:10px; padding:14px 18px 18px; flex:0 0 auto;
}
.ccv2-actions button{
  flex:1; border-radius:10px; border:1px solid rgba(15,23,42,.15);
  padding:12px 10px; cursor:pointer; font-weight:700;
}

.ccv2-btn-ghost{ background:#faf9f8; }
.ccv2-btn-primary{
  background:var(--ccv2-accent);
  color:#fff;
  border-color:var(--ccv2-accent);
}
.ccv2-btn-primary:hover{
  background:var(--ccv2-accent-hover);
  border-color:var(--ccv2-accent-hover);
}

.ccv2-footer-note{
  padding:10px 18px 16px;
  font-size:12px; color:#64748b;
  border-top:1px solid rgba(15,23,42,.08);
  flex:0 0 auto;
}

.ccv2-pm-title{ font-weight:900; margin:2px 0 8px; font-size:18px; }

.ccv2-acc{ margin-top:12px; border-top:1px solid rgba(15,23,42,.08); }
.ccv2-acc-item{ border-bottom:1px solid rgba(15,23,42,.08); }

.ccv2-acc-head{
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 0; cursor:pointer;
}
.ccv2-acc-head b{ font-size:15px; }
.ccv2-toggle{ display:flex; align-items:center; gap:10px; }

.ccv2-dash{ font-size:12px; color:#64748b; }

.ccv2-onoff{ font-size:12px; color:#64748b; min-width:44px; text-align:right; }

.ccv2-switch{
  width:44px; height:26px; border-radius:99px;
  background:#e2e8f0; position:relative;
  opacity:1;
}
.ccv2-switch[aria-hidden="true"]{ opacity:.55; }
.ccv2-switch::after{
  content:""; width:20px; height:20px; border-radius:50%;
  background:#fff; position:absolute; top:3px; left:3px;
  box-shadow:0 2px 8px rgba(0,0,0,.20);
  transition:transform .18s ease;
}
.ccv2-switch[data-on="1"]{ background:var(--ccv2-accent); }
.ccv2-switch[data-on="1"]::after{ transform:translateX(18px); }

.ccv2-acc-panel{ display:none; padding:0 0 12px; }
.ccv2-acc-panel.ccv2-open{ display:block; }

.ccv2-tech{
  display:grid; grid-template-columns: 1fr auto;
  gap:8px 10px; align-items:center;
  padding:10px 0; border-top:1px dashed rgba(15,23,42,.10);
}
.ccv2-tech:first-child{ border-top:none; padding-top:0; }
.ccv2-tech-key{ font-weight:800; }
.ccv2-tech-meta{ font-size:12px; color:#64748b; margin-top:2px; }

.ccv2-link{ color:var(--ccv2-accent); text-decoration:none; }
.ccv2-link:hover{ text-decoration:underline; }

.ccv2-pm-actions{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
  margin:0;
}
.ccv2-pm-actions + .ccv2-pm-actions{ margin-top:10px; }

#ccv2-step2 .ccv2-pm-actions button{
  width:100%;
  min-height:44px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.18);
  padding:10px 14px;
  font-weight:800;
  font-size:16px;
  line-height:1;
  cursor:pointer;
  background:#faf9f8;
  color:#0f172a;
  box-shadow:none;
  outline:none;
  text-transform:none;
}

.ccv2-back{ background:#fff; }

/* Lock scroll */
html.ccv2-lock, body.ccv2-lock{
  height:100% !important;
  overflow:hidden !important;
}

/* Mobile */
@media (max-width:560px){
  #ccv2-step1 .ccv2-actions{
    flex-direction:column;
    gap:12px;
  }
  #ccv2-step1 .ccv2-actions button{
    width:100%;
    height:48px;
    border-radius:14px;
    font-size:16px;
  }
  #ccv2-step2 .ccv2-pm-actions{
    grid-template-columns:1fr;
  }
}