/* =========================================================
   BEAUTYRELLA CONSENT 2026
   ========================================================= */

.br-consent{
  --bcc-dark:#211b18;
  --bcc-dark-2:#171310;
  --bcc-text:#51463f;
  --bcc-muted:#796a61;
  --bcc-accent:#b98566;
  --bcc-accent-light:#d8b39c;
  --bcc-bg:#f5efe9;
  --bcc-line:#ded0c7;

  position:fixed;
  inset:0;
  z-index:99999;
}

.br-consent[hidden]{
  display:none!important;
}

.br-consent-backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,12,10,.62);
  backdrop-filter:blur(7px);
}

.br-consent-panel{
  position:absolute;
  left:50%;
  bottom:24px;
  width:min(760px,calc(100% - 32px));
  max-height:calc(100vh - 48px);
  overflow:auto;
  transform:translateX(-50%);

  padding:34px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:20px;

  background:
    radial-gradient(circle at 90% 0%,rgba(185,133,102,.12),transparent 28%),
    var(--bcc-bg);

  color:var(--bcc-text);
  box-shadow:0 24px 70px rgba(0,0,0,.28);
}

.br-consent-close{
  position:absolute;
  top:15px;
  right:17px;

  width:36px;
  height:36px;

  border:0;
  background:transparent;
  color:var(--bcc-muted);

  font-size:26px;
  font-weight:200;
  cursor:pointer;
}

.br-consent-kicker{
  display:block;
  margin:0 45px 12px 0;
  color:var(--bcc-accent);

  font-size:10px;
  font-weight:700;
  letter-spacing:.17em;
}

.br-consent-panel h2{
  margin:0 0 15px;
  color:var(--bcc-dark);

  font-size:clamp(2.5rem,6vw,4rem);
  line-height:1;
  font-weight:200;
  letter-spacing:-.04em;
}

.br-consent-intro{
  max-width:620px;
  margin:0;

  color:var(--bcc-muted);
  font-size:14px;
  line-height:1.75;
}

.br-consent-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:26px;
}

.br-consent-btn{
  min-height:46px;
  padding:0 20px;

  border-radius:999px;
  font-size:12px;
  font-weight:650;
  cursor:pointer;

  transition:.2s ease;
}

.br-consent-btn:hover{
  transform:translateY(-1px);
}

.br-consent-btn-primary{
  border:1px solid var(--bcc-dark);
  background:var(--bcc-dark);
  color:#fff;
}

.br-consent-btn-secondary{
  border:1px solid var(--bcc-line);
  background:transparent;
  color:var(--bcc-dark);
}

.br-consent-btn-text{
  border:0;
  background:transparent;
  color:var(--bcc-accent);
}

.br-consent-settings{
  margin-top:30px;
  padding-top:8px;
  border-top:1px solid var(--bcc-line);
}

.br-consent-option{
  display:grid;
  grid-template-columns:1fr auto;
  gap:30px;
  align-items:center;

  padding:21px 0;
  border-bottom:1px solid var(--bcc-line);
}

.br-consent-option strong{
  display:block;
  margin-bottom:5px;
  color:var(--bcc-dark);
  font-size:14px;
}

.br-consent-option p{
  max-width:490px;
  margin:0;
  color:var(--bcc-muted);
  font-size:12px;
  line-height:1.65;
}

.br-consent-required{
  color:var(--bcc-accent);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}

.br-consent-switch{
  position:relative;
  display:block;
  width:46px;
  height:26px;
  cursor:pointer;
}

.br-consent-switch input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.br-consent-switch span{
  position:absolute;
  inset:0;
  border-radius:999px;
  background:#cfc3bb;
  transition:.2s;
}

.br-consent-switch span:after{
  content:"";
  position:absolute;
  top:4px;
  left:4px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 5px rgba(0,0,0,.12);
  transition:.2s;
}

.br-consent-switch input:checked + span{
  background:var(--bcc-accent);
}

.br-consent-switch input:checked + span:after{
  transform:translateX(20px);
}

.br-consent-switch em{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
}

.br-consent-links{
  display:flex;
  gap:14px;
  margin-top:24px;
}

.br-consent-links a{
  color:var(--bcc-muted)!important;
  font-size:11px;
  text-decoration:none;
}

.br-consent-links a:hover{
  color:var(--bcc-accent)!important;
}

.br-consent-reopen{
  position:fixed;
  left:13px;
  bottom:13px;
  z-index:9900;

  min-height:34px;
  padding:0 13px;

  border:1px solid rgba(33,27,24,.12);
  border-radius:999px;

  background:rgba(245,239,233,.92);
  color:#51463f;

  font-size:10px;
  font-weight:600;

  box-shadow:0 6px 20px rgba(0,0,0,.08);
  backdrop-filter:blur(8px);

  cursor:pointer;
}

@media(max-width:600px){
  .br-consent-panel{
    bottom:10px;
    width:calc(100% - 20px);
    max-height:calc(100vh - 20px);
    padding:25px 20px 22px;
    border-radius:16px;
  }

  .br-consent-actions{
    flex-direction:column;
  }

  .br-consent-btn{
    width:100%;
  }

  .br-consent-option{
    grid-template-columns:1fr auto;
    gap:18px;
  }

  .br-consent-reopen{
    left:8px;
    bottom:8px;
  }
}
