/* Cipher Audio — consent banner + preference center (Phase 2).
   Matches the site tokens: bg #0a0a0c, teal #00d4aa / #00ffc8, Inter + JetBrains Mono. */
.cc-banner{position:fixed;left:0;right:0;bottom:0;z-index:99999;background:rgba(10,10,12,.97);
  border-top:1px solid rgba(0,212,170,.35);box-shadow:0 -10px 40px rgba(0,0,0,.6);backdrop-filter:blur(8px);
  font-family:Inter,system-ui,sans-serif;color:#d6d8dc}
.cc-banner-in{max-width:1100px;margin:0 auto;padding:18px 22px;display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.cc-text{font-size:12.5px;line-height:1.6;margin:0;flex:1 1 460px;color:#b8bcc2}
.cc-text a{color:#00d4aa;text-decoration:none;border-bottom:1px solid rgba(0,212,170,.4)}
.cc-text a:hover{color:#00ffc8}
.cc-btns{display:flex;gap:10px;flex:0 0 auto;flex-wrap:wrap}
.cc-btn{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:600;letter-spacing:.02em;
  padding:11px 18px;border-radius:8px;border:1px solid rgba(0,212,170,.5);cursor:pointer;white-space:nowrap;transition:.15s}
/* Allow + Decline = EQUAL prominence (EDPB anti-nudge): identical weight, color and hover. */
.cc-accept, .cc-reject{background:transparent;color:#eef1f3;border-color:rgba(0,212,170,.6)}
.cc-accept:hover, .cc-reject:hover{border-color:#00ffc8;color:#00ffc8;box-shadow:0 0 14px rgba(0,255,200,.22)}
.cc-seemore{font-weight:500}
.cc-detail{font-size:11px;color:#7e848c;line-height:1.6;margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.06)}
.cc-ghost{background:transparent;color:#8a9098;border-color:rgba(255,255,255,.18)}
.cc-ghost:hover{color:#d6d8dc;border-color:rgba(255,255,255,.4)}

.cc-modal{position:fixed;inset:0;z-index:100000;background:rgba(4,5,7,.78);backdrop-filter:blur(4px);
  display:flex;align-items:center;justify-content:center;padding:20px;font-family:Inter,system-ui,sans-serif}
.cc-modal-in{background:#0c0d10;border:1px solid rgba(0,212,170,.3);border-radius:14px;max-width:560px;width:100%;
  max-height:88vh;overflow:auto;padding:26px 28px;color:#d6d8dc;box-shadow:0 24px 80px rgba(0,0,0,.7)}
.cc-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.cc-modal-head h2{font-size:17px;margin:0;color:#fff;font-weight:600}
.cc-x{background:none;border:none;color:#8a9098;font-size:26px;line-height:1;cursor:pointer}
.cc-x:hover{color:#fff}
.cc-gpc{font-size:12px;background:rgba(0,212,170,.08);border:1px solid rgba(0,212,170,.3);border-radius:8px;padding:10px 12px;color:#9fe9d7;margin:0 0 16px}
.cc-cat{border-top:1px solid rgba(255,255,255,.08);padding:14px 0}
.cc-cat-h{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cc-cat-h strong{font-size:13.5px;color:#fff;font-weight:600}
.cc-cat p{font-size:12px;line-height:1.6;color:#9aa0a8;margin:7px 0 0}
.cc-on{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:#00d4aa;letter-spacing:.04em;text-transform:uppercase}
.cc-switch{position:relative;display:inline-block;width:42px;height:24px;flex:0 0 auto}
.cc-switch input{opacity:0;width:0;height:0}
.cc-slider{position:absolute;inset:0;background:#2a2d33;border-radius:24px;transition:.2s;cursor:pointer}
.cc-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.cc-switch input:checked+.cc-slider{background:#00d4aa}
.cc-switch input:checked+.cc-slider:before{transform:translateX(18px)}
.cc-switch input:disabled+.cc-slider{opacity:.4;cursor:not-allowed}
.cc-modal-foot{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;flex-wrap:wrap}
.cc-save{background:#00d4aa;color:#04130f;border-color:#00d4aa}
.cc-save:hover{background:#00ffc8}
@media(max-width:560px){.cc-banner-in{padding:14px 16px}.cc-btns{width:100%}.cc-btn{flex:1 1 auto;text-align:center}}
