/* Cookie consent banner + settings modal. Shared across every page — injected by
   js/cookie-consent.js, styled to match the site's dark navy/amber theme (same
   --night/--panel/--line/--amber tokens declared in each page's own <style>). */

#veyaCookieBanner{
  position:fixed; left:0; right:0; bottom:0; z-index:200;
  display:none;
  background:rgba(10,17,25,.97);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  border-top:1px solid var(--line, #223347);
  padding:20px 32px;
}
#veyaCookieBanner.open{display:block;}
.vcc-banner-inner{
  max-width:1120px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
}
.vcc-banner-text{flex:1; min-width:240px; font-size:13.5px; line-height:1.6; color:var(--muted, #94a2b0);}
.vcc-banner-text a{color:var(--amber, #e3a34e); text-decoration:underline; text-underline-offset:2px;}
.vcc-banner-actions{display:flex; gap:10px; flex-wrap:wrap;}

.vcc-btn{
  font-family:inherit; font-size:13.5px; font-weight:600; cursor:pointer;
  padding:10px 18px; border-radius:9px; border:1px solid var(--line, #223347);
  background:transparent; color:var(--cream, #ece7da);
  transition:border-color .15s, background .15s;
  white-space:nowrap;
}
.vcc-btn:hover{border-color:var(--muted, #94a2b0);}
.vcc-btn.vcc-primary{
  background:var(--amber, #e3a34e); color:var(--night, #0a1119); border-color:var(--amber, #e3a34e);
}
.vcc-btn.vcc-primary:hover{opacity:.92;}

#veyaCookieModal{
  position:fixed; inset:0; z-index:210;
  display:none; align-items:center; justify-content:center;
  background:rgba(5,8,12,.72); padding:20px;
}
#veyaCookieModal.open{display:flex;}
.vcc-modal-box{
  width:100%; max-width:560px; max-height:88vh; overflow-y:auto;
  background:var(--panel, #142130); border:1px solid var(--line, #223347); border-radius:16px;
  padding:32px;
}
.vcc-modal-title{font-family:var(--display, inherit); font-weight:600; font-size:20px; color:var(--cream, #ece7da); margin:0 0 10px;}
.vcc-modal-desc{font-size:13.5px; line-height:1.65; color:var(--muted, #94a2b0); margin:0 0 26px;}
.vcc-modal-desc a{color:var(--amber, #e3a34e); text-decoration:underline; text-underline-offset:2px;}

.vcc-cat{
  display:flex; justify-content:space-between; align-items:flex-start; gap:16px;
  padding:16px 0; border-top:1px solid var(--line, #223347);
}
.vcc-cat:last-of-type{border-bottom:1px solid var(--line, #223347);}
.vcc-cat-info{flex:1;}
.vcc-cat-name{font-size:14.5px; font-weight:600; color:var(--cream, #ece7da); margin-bottom:4px;}
.vcc-cat-desc{font-size:12.5px; line-height:1.55; color:var(--muted, #94a2b0);}

.vcc-toggle{
  position:relative; flex-shrink:0; width:42px; height:24px; margin-top:2px;
  border-radius:999px; border:1px solid var(--line, #223347);
  background:var(--dusk-2, #16232f); cursor:pointer; transition:background .15s, border-color .15s;
}
.vcc-toggle::after{
  content:""; position:absolute; top:2px; left:2px; width:18px; height:18px; border-radius:50%;
  background:var(--muted, #94a2b0); transition:transform .15s, background .15s;
}
.vcc-toggle.on{background:var(--amber-soft, rgba(227,163,78,.14)); border-color:var(--amber, #e3a34e);}
.vcc-toggle.on::after{transform:translateX(18px); background:var(--amber, #e3a34e);}
.vcc-toggle.locked{cursor:not-allowed; opacity:.6;}

.vcc-modal-actions{display:flex; gap:10px; justify-content:flex-end; flex-wrap:wrap; margin-top:26px;}

@media (max-width:640px){
  #veyaCookieBanner{padding:18px 20px;}
  .vcc-banner-actions{width:100%;}
  .vcc-banner-actions .vcc-btn{flex:1;}
  .vcc-modal-box{padding:24px;}
}
