.vwcc-root,.vwcc-root *{
  box-sizing:border-box
}

.vwcc-root{
  --vwcc-accent:#6AAB0F;
  --vwcc-dark:#293536;
  --vwcc-ink:#293536;
  --vwcc-soft:#f7fbff;
  --vwcc-line:rgba(41,53,54,.12);
  --vwcc-radius:10px;
  font-family:"Inter","Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:#fff
}

.vwcc-banner{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:999999;
  opacity:0;
  transform:translateY(100%);
  transition:opacity .22s ease,transform .22s ease;
  pointer-events:none
}

.vwcc-banner.is-visible{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto
}

.vwcc-card{
  width:100%;
  min-height:156px;
  margin:0;
  display:grid;
  grid-template-columns:minmax(0,760px) 292px;
  gap:42px;
  align-items:center;
  justify-content:center;
  padding:28px 24px 30px;
  background:linear-gradient(135deg,rgba(41,53,54,.94),rgba(35,47,48,.88));
  backdrop-filter:blur(20px) saturate(1.16);
  -webkit-backdrop-filter:blur(20px) saturate(1.16);
  border-top:1px solid rgba(255,255,255,.18);
  box-shadow:0 -18px 60px rgba(0,0,0,.22)
}

.vwcc-copy h2{
  margin:0 0 8px;
  font-size:20px;
  line-height:1.2;
  font-weight:760;
  letter-spacing:-.035em;
  color:#fff
}

.vwcc-copy p{
  margin:0;
  max-width:760px;
  font-size:14px;
  line-height:1.52;
  font-weight:450;
  letter-spacing:-.01em;
  color:rgba(255,255,255,.9)
}

.vwcc-links{
  display:inline-block;
  margin-top:8px
}

.vwcc-links a{
  color:#fff;
  font-size:13px;
  font-weight:650;
  text-decoration:underline;
  text-underline-offset:3px
}

.vwcc-links a+a{
  margin-left:12px
}

.vwcc-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  align-items:center
}

.vwcc-btn,
.vwcc-inline-settings{
  appearance:none;
  border:0;
  cursor:pointer;
  height:48px;
  padding:0 20px;
  border-radius:11px;
  font-size:14px;
  font-weight:700;
  letter-spacing:-.015em;
  line-height:1;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease;
  white-space:nowrap;
  font-family:inherit;
  box-sizing:border-box
}

.vwcc-btn:hover,
.vwcc-inline-settings:hover,
.vwcc-floating:hover,
.vwcc-settings-link:hover{
  transform:translateY(-1px)
}

.vwcc-btn-primary{
  color:#fff;
  background:var(--vwcc-accent);
  box-shadow:0 10px 26px rgba(106,171,15,.28)
}

.vwcc-btn-primary:hover{
  background:#5f9e0d
}

.vwcc-btn-outline{
  color:#fff;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.55);
  box-sizing:border-box
}

.vwcc-btn-outline:hover{
  background:rgba(255,255,255,.12);
  border-color:#fff
}

.vwcc-btn-soft{
  color:var(--vwcc-dark);
  background:rgba(255,255,255,.94);
  border:1px solid rgba(41,53,54,.12)
}

.vwcc-settings-link{
  appearance:none;
  border:0;
  background:transparent;
  color:rgba(255,255,255,.88);
  font-size:13px;
  font-weight:650;
  font-family:inherit;
  text-decoration:underline;
  text-underline-offset:3px;
  cursor:pointer;
  padding:0;
  margin-top:-1px
}

.vwcc-overlay{
  position:fixed;
  inset:0;
  z-index:1000000;
  background:rgba(10,22,20,.38);
  opacity:0;
  transition:opacity .22s ease;
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px)
}

.vwcc-overlay.is-visible{
  opacity:1
}

.vwcc-modal{
  position:fixed;
  inset:0;
  z-index:1000001;
  display:grid;
  place-items:center;
  padding:20px;
  opacity:0;
  pointer-events:none;
  transition:opacity .22s ease
}

.vwcc-modal.is-visible{
  opacity:1;
  pointer-events:auto
}

.vwcc-modal-card{
  position:relative;
  width:min(620px,100%);
  max-height:min(760px,calc(100vh - 40px));
  overflow:auto;
  padding:26px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.58);
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(247,250,250,.86));
  backdrop-filter:blur(24px) saturate(1.2);
  -webkit-backdrop-filter:blur(24px) saturate(1.2);
  box-shadow:0 30px 90px rgba(41,53,54,.24);
  transform:translateY(12px) scale(.985);
  transition:transform .22s ease;
  color:var(--vwcc-dark)
}

.vwcc-modal.is-visible .vwcc-modal-card{
  transform:translateY(0) scale(1)
}

.vwcc-modal-card h2{
  margin:6px 44px 7px 0;
  font-size:22px;
  line-height:1.18;
  font-weight:760;
  letter-spacing:-.035em;
  color:var(--vwcc-dark)
}

.vwcc-muted{
  margin:0;
  font-size:14px;
  line-height:1.55;
  color:rgba(41,53,54,.74)
}

.vwcc-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:0;
  font-size:12px;
  font-weight:750;
  letter-spacing:.02em;
  color:rgba(41,53,54,.72)
}

.vwcc-eyebrow span{
  display:none!important
}

.vwcc-close{
  position:absolute;
  top:16px;
  right:16px;
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(41,53,54,.12);
  background:rgba(255,255,255,.82);
  color:var(--vwcc-dark);
  display:grid;
  place-items:center;
  cursor:pointer;
  padding:0;
  line-height:1
}

.vwcc-close span{
  display:block;
  transform:translateY(-1px);
  font-size:24px;
  line-height:1
}

.vwcc-category{
  margin-top:12px;
  padding:16px;
  border-radius:17px;
  border:1px solid rgba(41,53,54,.1);
  background:rgba(255,255,255,.66);
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:center
}

.vwcc-category h3{
  margin:0 0 5px;
  font-size:15px;
  color:var(--vwcc-dark);
  font-weight:740;
  letter-spacing:-.015em
}

.vwcc-category p{
  margin:0;
  font-size:13px;
  line-height:1.45;
  color:rgba(41,53,54,.72)
}

.vwcc-always{
  font-size:12px;
  font-weight:750;
  color:var(--vwcc-dark);
  background:rgba(106,171,15,.14);
  padding:7px 10px;
  border-radius:999px;
  white-space:nowrap
}

.vwcc-toggle-row{
  cursor:pointer
}

.vwcc-toggle-row input{
  position:absolute;
  opacity:0;
  pointer-events:none
}

.vwcc-switch{
  width:48px;
  height:28px;
  border-radius:999px;
  background:rgba(41,53,54,.18);
  position:relative;
  transition:background .18s ease
}

.vwcc-switch:before{
  content:'';
  position:absolute;
  top:4px;
  left:4px;
  width:20px;
  height:20px;
  border-radius:999px;
  background:#fff;
  box-shadow:0 3px 8px rgba(0,0,0,.18);
  transition:transform .18s ease
}

.vwcc-toggle-row input:checked+.vwcc-switch{
  background:var(--vwcc-accent)
}

.vwcc-toggle-row input:checked+.vwcc-switch:before{
  transform:translateX(20px)
}

.vwcc-modal-actions{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:flex-end;
  margin-top:18px
}

.vwcc-modal-actions .vwcc-btn-primary{
  color:#fff;
  background:var(--vwcc-accent)
}

.vwcc-floating{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:999998;
  width:56px;
  height:56px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.94);
  color:var(--vwcc-dark);
  padding:0;
  cursor:pointer;
  box-shadow:0 14px 34px rgba(41,53,54,.20),0 0 0 1px rgba(41,53,54,.08);
  transition:transform .16s ease,box-shadow .16s ease;
  display:grid;
  place-items:center
}

.vwcc-floating:hover{
  box-shadow:0 16px 38px rgba(41,53,54,.26),0 0 0 1px rgba(41,53,54,.1)
}

.vwcc-cookie-shape{
  position:relative;
  width:34px;
  height:34px;
  border-radius:50%;
  background:linear-gradient(145deg,#e1a95b,#bd7932);
  box-shadow:inset -5px -6px 0 rgba(111,66,27,.18),inset 4px 4px 0 rgba(255,235,187,.26)
}

.vwcc-cookie-shape:before{
  content:"";
  position:absolute;
  right:-2px;
  top:-2px;
  width:15px;
  height:15px;
  border-radius:50%;
  background:rgba(255,255,255,.94);
  box-shadow:-5px 6px 0 -4px rgba(255,255,255,.94)
}

.vwcc-cookie-shape i{
  position:absolute;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#6b3d1d;
  opacity:.95
}

.vwcc-cookie-shape i:nth-of-type(1){left:9px;top:9px}
.vwcc-cookie-shape i:nth-of-type(2){left:18px;top:15px}
.vwcc-cookie-shape i:nth-of-type(3){left:10px;top:23px}
.vwcc-cookie-shape i:nth-of-type(4){left:23px;top:24px}
.vwcc-cookie-shape i:nth-of-type(5){left:24px;top:8px;width:4px;height:4px}

.vwcc-floating-text{
  display:none!important
}

.vwcc-inline-settings{
  background:var(--vwcc-accent);
  color:#fff
}

@media(max-width:900px){

  .vwcc-card{
    grid-template-columns:minmax(0,1fr) 260px;
    gap:26px;
    padding:26px 18px
  }

  .vwcc-copy p{
    font-size:13px
  }
}

@media(max-width:700px){

  .vwcc-banner{
    left:0;
    right:0;
    bottom:0
  }

  .vwcc-card{
    min-height:auto;
    display:grid;
    grid-template-columns:1fr;
    gap:15px;
    justify-content:stretch;
    padding:18px 16px calc(18px + env(safe-area-inset-bottom));
    background:linear-gradient(135deg,rgba(41,53,54,.96),rgba(35,47,48,.91));
    border-radius:18px 18px 0 0
  }

  .vwcc-copy h2{
    font-size:18px;
    margin-bottom:8px
  }

  .vwcc-copy p{
    font-size:13px;
    line-height:1.42;
    display:-webkit-box;
    -webkit-line-clamp:4;
    -webkit-box-orient:vertical;
    overflow:hidden
  }

  .vwcc-links{
    margin-top:7px
  }

  /* ✅ FIX: grid garandeert exact gelijke breedte voor beide knoppen */
  .vwcc-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:auto auto!important;
    gap:10px!important;
    width:100%!important;
    align-items:stretch!important;
  }

  .vwcc-actions .vwcc-btn-primary,
  .vwcc-actions .vwcc-btn-outline{
    height:44px!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    box-sizing:border-box!important;
  }

  .vwcc-actions .vwcc-settings-link{
    grid-column:1 / -1!important;
    width:100%!important;
    display:block!important;
    text-align:center!important;
    margin-top:2px!important;
  }

  .vwcc-modal{
    align-items:end;
    padding:8px
  }

  .vwcc-modal-card{
    width:100%;
    max-height:86vh;
    border-radius:24px 24px 14px 14px;
    padding:22px 16px 16px
  }

  .vwcc-close{
    top:14px;
    right:14px
  }

  .vwcc-category{
    grid-template-columns:1fr;
    gap:10px;
    padding:14px
  }

  .vwcc-switch,
  .vwcc-always{
    justify-self:start
  }

  .vwcc-modal-actions{
    display:grid;
    grid-template-columns:1fr
  }

  .vwcc-modal-actions .vwcc-btn{
    width:100%
  }

  .vwcc-floating{
    left:14px;
    bottom:14px;
    width:54px;
    height:54px
  }
}

@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .vwcc-card{
    background:#293536
  }

  .vwcc-modal-card{
    background:#fff
  }
}