/* APIANT Cookie Consent Banner */
.cc-banner{position:fixed;bottom:0;left:0;right:0;z-index:99999;background:#141414;border-top:1px solid rgba(255,255,255,0.08);padding:20px 24px;font-family:'Inter','DM Sans',sans-serif;color:rgba(255,255,255,0.75);font-size:14px;line-height:1.6;display:none;box-shadow:0 -4px 24px rgba(0,0,0,0.4);}
.cc-banner.cc-visible{display:block;}
.cc-overlay{position:fixed;inset:0;z-index:99998;background:rgba(0,0,0,0.35);display:none;}
.cc-overlay.cc-visible{display:block;}
.cc-inner{max-width:1100px;margin:0 auto;display:flex;align-items:flex-start;gap:20px;}
.cc-text{flex:1;min-width:0;}
.cc-text p{margin:0;color:rgba(255,255,255,0.65);}
.cc-text a{color:#1ab759;text-decoration:none;}
.cc-text a:hover{text-decoration:underline;}
.cc-buttons{display:flex;gap:10px;flex-shrink:0;align-items:center;}
.cc-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:background 0.2s,border-color 0.2s,color 0.2s;white-space:nowrap;line-height:1.4;}
.cc-btn-accept{background:#fff;color:#141414;border:1px solid #fff;}
.cc-btn-accept:hover{background:#e0e0e0;border-color:#e0e0e0;}
.cc-btn-reject{background:transparent;color:rgba(255,255,255,0.7);border:1px solid rgba(255,255,255,0.2);}
.cc-btn-reject:hover{border-color:rgba(255,255,255,0.4);color:#fff;}
.cc-btn-prefs{background:transparent;color:rgba(255,255,255,0.7);border:1px solid rgba(255,255,255,0.2);}
.cc-btn-prefs:hover{border-color:rgba(255,255,255,0.4);color:#fff;}
.cc-btn-save{background:#1ab759;color:#fff;border:1px solid #1ab759;margin-top:16px;}
.cc-btn-save:hover{background:#17a34e;border-color:#17a34e;}

/* Preferences panel */
.cc-prefs{display:none;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,0.08);}
.cc-prefs.cc-open{display:block;}
.cc-cats{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.cc-cat{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);border-radius:8px;padding:14px 16px;display:flex;align-items:flex-start;gap:12px;}
.cc-cat-info{flex:1;min-width:0;}
.cc-cat-name{color:rgba(255,255,255,0.9);font-weight:600;font-size:14px;margin-bottom:2px;}
.cc-cat-desc{color:rgba(255,255,255,0.45);font-size:12px;line-height:1.5;}

/* Toggle switch */
.cc-toggle{position:relative;width:40px;height:22px;flex-shrink:0;margin-top:2px;}
.cc-toggle input{opacity:0;width:0;height:0;position:absolute;}
.cc-toggle-track{position:absolute;inset:0;background:rgba(255,255,255,0.12);border-radius:11px;cursor:pointer;transition:background 0.2s;}
.cc-toggle-knob{position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform 0.2s;box-shadow:0 1px 3px rgba(0,0,0,0.3);}
.cc-toggle input:checked+.cc-toggle-track{background:#1ab759;}
.cc-toggle input:checked+.cc-toggle-track .cc-toggle-knob{transform:translateX(18px);}
.cc-toggle input:disabled+.cc-toggle-track{opacity:0.5;cursor:default;}
.cc-toggle input:disabled+.cc-toggle-track .cc-toggle-knob{opacity:0.7;}

/* Responsive */
@media(max-width:768px){
  .cc-inner{flex-direction:column;}
  .cc-buttons{width:100%;}
}
@media(max-width:640px){
  .cc-banner{padding:16px;}
  .cc-buttons{flex-direction:column;}
  .cc-btn{width:100%;text-align:center;}
  .cc-cats{grid-template-columns:1fr;}
  .cc-btn-save{width:100%;text-align:center;}
}
