.cc-banner{position:fixed;left:0;right:0;bottom:0;z-index:9000;background:rgba(6,31,53,.97);color:var(--white,#f0faff);font-family:var(--font,'Heebo',sans-serif);font-weight:300;border-top:1px solid rgba(0,212,232,.25);box-shadow:0 -8px 32px rgba(0,0,0,.45);padding:1.2rem 1.6rem;direction:rtl;backdrop-filter:blur(14px);transform:translateY(110%);transition:transform .45s cubic-bezier(.22,.61,.36,1)}
.cc-banner.cc-visible{transform:translateY(0)}
.cc-banner-inner{max-width:1100px;margin:0 auto;display:flex;gap:1.4rem;align-items:center;flex-wrap:wrap}
.cc-banner-text{flex:1 1 360px;font-size:.92rem;line-height:1.65;color:rgba(200,234,245,.88)}
.cc-banner-text a{color:var(--aqua,#00d4e8);text-decoration:underline;text-underline-offset:3px}
.cc-banner-text a:hover,.cc-banner-text a:focus-visible{color:var(--glow,#7fffd4)}
.cc-banner-actions{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}
.cc-btn{font-family:inherit;font-weight:500;font-size:.85rem;letter-spacing:.05em;border-radius:50px;padding:.7rem 1.4rem;cursor:pointer;border:1px solid transparent;transition:transform .15s ease,background .2s,color .2s,box-shadow .2s;min-height:44px}
.cc-btn:focus-visible{outline:2px solid var(--aqua,#00d4e8);outline-offset:3px}
.cc-btn-primary{background:var(--aqua,#00d4e8);color:var(--deep,#061f35);box-shadow:0 0 22px rgba(0,212,232,.28)}
.cc-btn-primary:hover{transform:translateY(-1px);box-shadow:0 0 30px rgba(0,212,232,.55)}
.cc-btn-secondary{background:transparent;color:var(--white,#f0faff);border-color:rgba(200,234,245,.35)}
.cc-btn-secondary:hover{border-color:var(--aqua,#00d4e8);color:var(--aqua,#00d4e8)}
.cc-btn-ghost{background:transparent;color:rgba(200,234,245,.75);border-color:transparent;text-decoration:underline;text-underline-offset:3px}
.cc-btn-ghost:hover{color:var(--aqua,#00d4e8)}

.cc-modal-overlay{position:fixed;inset:0;background:rgba(6,15,28,.78);backdrop-filter:blur(6px);z-index:9100;display:none;align-items:center;justify-content:center;padding:1.2rem;direction:rtl}
.cc-modal-overlay.cc-open{display:flex}
.cc-modal{background:#0a2d4a;color:var(--white,#f0faff);border:1px solid rgba(0,212,232,.25);border-radius:14px;max-width:520px;width:100%;max-height:90vh;overflow-y:auto;padding:2rem;font-family:var(--font,'Heebo',sans-serif);font-weight:300;box-shadow:0 30px 60px rgba(0,0,0,.55)}
.cc-modal h2{font-size:1.4rem;font-weight:400;margin-bottom:.4rem;color:var(--white,#f0faff)}
.cc-modal-intro{font-size:.9rem;color:rgba(200,234,245,.75);line-height:1.7;margin-bottom:1.4rem}
.cc-option{display:flex;gap:.9rem;align-items:flex-start;padding:1rem;border:1px solid rgba(0,212,232,.15);border-radius:10px;margin-bottom:.9rem;background:rgba(6,31,53,.5)}
.cc-option-text{flex:1}
.cc-option-title{font-weight:500;font-size:.98rem;margin-bottom:.25rem}
.cc-option-desc{font-size:.82rem;color:rgba(200,234,245,.7);line-height:1.55}
.cc-toggle{position:relative;width:44px;height:24px;flex-shrink:0;margin-top:.15rem}
.cc-toggle input{opacity:0;width:0;height:0;position:absolute}
.cc-toggle-track{position:absolute;inset:0;background:rgba(200,234,245,.2);border-radius:14px;cursor:pointer;transition:background .2s}
.cc-toggle-track::before{content:'';position:absolute;height:18px;width:18px;right:3px;top:3px;background:#f0faff;border-radius:50%;transition:transform .25s cubic-bezier(.22,.61,.36,1)}
.cc-toggle input:checked + .cc-toggle-track{background:var(--aqua,#00d4e8)}
.cc-toggle input:checked + .cc-toggle-track::before{transform:translateX(-20px)}
.cc-toggle input:focus-visible + .cc-toggle-track{box-shadow:0 0 0 3px rgba(0,212,232,.4)}
.cc-toggle input:disabled + .cc-toggle-track{background:rgba(0,212,232,.55);cursor:not-allowed;opacity:.7}
.cc-modal-actions{display:flex;gap:.6rem;justify-content:flex-start;margin-top:1.4rem;flex-wrap:wrap}
.cc-modal-close{background:none;border:none;color:rgba(200,234,245,.65);font-size:1.8rem;line-height:1;cursor:pointer;float:left;padding:0;margin:-.5rem 0 0 -.5rem;transition:color .2s}
.cc-modal-close:hover,.cc-modal-close:focus-visible{color:var(--aqua,#00d4e8);outline:none}

@media(max-width:600px){
  .cc-banner{padding:1rem}
  .cc-banner-inner{gap:.9rem}
  .cc-banner-text{flex:1 1 100%;font-size:.88rem}
  .cc-banner-actions{width:100%;justify-content:stretch}
  .cc-btn{flex:1 1 auto;padding:.65rem 1rem;font-size:.82rem}
  .cc-modal{padding:1.4rem;border-radius:10px}
}
