.jns-consent-notice[hidden],
.jns-preferences-panel[hidden]{display:none!important;}
:root{
  --cookie-bg:#121917;
  --cookie-bg-2:#0d1412;
  --cookie-line:#26322d;
  --cookie-text:#eef4f1;
  --cookie-muted:#93a29c;
  --cookie-accent:#22ddc4;
  --cookie-accent-ink:#02231e;
}
.jns-consent-layer[hidden]{display:none!important}
.jns-consent-layer{
  position:fixed; inset:0; z-index:9999; pointer-events:none;
}
.jns-consent-backdrop{
  position:absolute; inset:0; background:rgba(3,7,6,.62);
  backdrop-filter:blur(5px); pointer-events:auto;
}
.jns-consent-notice{
  position:absolute; left:20px; right:20px; bottom:20px;
  max-width:1180px; margin:0 auto; padding:22px;
  background:color-mix(in srgb,var(--cookie-bg) 96%,transparent);
  border:1px solid var(--cookie-line); border-radius:16px;
  box-shadow:0 24px 70px rgba(0,0,0,.38);
  display:grid; grid-template-columns:1fr auto; gap:24px;
  align-items:center; pointer-events:auto;
}
.jns-consent-copy h3{
  margin:0 0 8px; font-family:'Sora',system-ui,sans-serif;
  font-size:18px; color:var(--cookie-text);
}
.jns-consent-copy p{
  margin:0; color:var(--cookie-muted); font-size:13.5px;
  line-height:1.6; max-width:760px;
}
.jns-consent-copy a{color:var(--cookie-accent)}
.jns-consent-actions{display:flex; gap:9px; flex-wrap:wrap; justify-content:flex-end}
.jns-consent-btn{
  appearance:none; border:1px solid var(--cookie-line); border-radius:10px;
  padding:11px 15px; background:transparent; color:var(--cookie-text);
  font:700 12.5px/1 'Inter',system-ui,sans-serif; cursor:pointer;
}
.jns-consent-btn:hover{border-color:var(--cookie-accent)}
.jns-consent-btn.primary{
  background:var(--cookie-accent); color:var(--cookie-accent-ink);
  border-color:var(--cookie-accent);
}
.jns-preferences-panel{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  width:min(620px,calc(100% - 32px)); max-height:calc(100vh - 44px);
  overflow:auto; padding:26px; background:var(--cookie-bg);
  border:1px solid var(--cookie-line); border-radius:16px;
  box-shadow:0 30px 90px rgba(0,0,0,.52); pointer-events:auto;
}
.jns-preferences-head{
  display:flex; align-items:flex-start; justify-content:space-between;
  gap:20px; margin-bottom:20px;
}
.jns-preferences-panel h3{
  margin:0 0 7px; font-family:'Sora',system-ui,sans-serif;
  font-size:22px; color:var(--cookie-text);
}
.jns-preferences-panel p{margin:0;color:var(--cookie-muted);font-size:13.5px;line-height:1.6}
.cookie-close{
  appearance:none; width:36px; height:36px; flex:0 0 36px;
  border:1px solid var(--cookie-line); border-radius:9px;
  background:transparent; color:var(--cookie-text); cursor:pointer;
  font-size:20px; line-height:1;
}
.jns-pref-category{
  display:grid; grid-template-columns:1fr auto; gap:18px;
  padding:17px 0; border-top:1px solid var(--cookie-line);
}
.jns-pref-category h4{margin:0 0 5px;font-size:14px;color:var(--cookie-text)}
.jns-pref-category p{font-size:12.5px}
.jns-pref-switch{
  position:relative; width:44px; height:24px; margin-top:3px;
}
.jns-pref-switch input{position:absolute;opacity:0}
.jns-pref-switch span{
  position:absolute; inset:0; border-radius:999px;
  background:#28322f; border:1px solid #34413c; cursor:pointer;
  transition:.18s ease;
}
.jns-pref-switch span:after{
  content:''; position:absolute; width:16px; height:16px;
  left:3px; top:3px; border-radius:50%; background:#c8d1cd;
  transition:.18s ease;
}
.jns-pref-switch input:checked + span{
  background:color-mix(in srgb,var(--cookie-accent) 34%,#16312b);
  border-color:var(--cookie-accent);
}
.jns-pref-switch input:checked + span:after{
  transform:translateX(20px); background:var(--cookie-accent);
}
.jns-pref-switch input:disabled + span{opacity:.72;cursor:not-allowed}
.jns-preferences-actions{
  display:flex; justify-content:flex-end; gap:9px; flex-wrap:wrap;
  padding-top:18px; border-top:1px solid var(--cookie-line);
}
@media(max-width:760px){
  .jns-consent-notice{
    left:10px; right:10px; bottom:10px; padding:18px;
    grid-template-columns:1fr; gap:18px;
  }
  .jns-consent-actions{justify-content:stretch}
  .jns-consent-btn{flex:1 1 calc(50% - 6px)}
  .jns-consent-btn.primary{flex-basis:100%}
  .jns-preferences-panel{padding:20px}
}
