/* Cookie consent banner and settings dialog */
.cc-banner,.cc-modal{font-family:'Heebo',system-ui,sans-serif;direction:rtl;color:var(--ink,#111214)}
.cc-banner{position:fixed;z-index:9998;inset-inline:16px;bottom:16px;max-width:760px;margin-inline:auto;background:var(--surface,#fff);border:1px solid var(--line,#e7e7e2);border-radius:20px;box-shadow:0 18px 60px rgba(17,18,20,.22);padding:20px 22px;display:none}
.cc-banner.open{display:block}
.cc-banner h2{font-size:18px;font-weight:700;margin:0 0 6px}
.cc-banner p{margin:0 0 14px;font-size:15px;line-height:1.6;color:var(--muted,#5c6067)}
.cc-banner p a{color:var(--accent,#1d55d8);text-decoration:underline;text-underline-offset:3px}
.cc-actions{display:flex;flex-wrap:wrap;gap:10px}
.cc-btn{font:inherit;font-weight:500;font-size:15px;border-radius:999px;padding:10px 20px;cursor:pointer;border:1px solid var(--ink,#111214);background:var(--ink,#111214);color:var(--bg,#f7f7f4);transition:.2s}
.cc-btn:hover{opacity:.88}
.cc-btn.alt{background:transparent;color:var(--ink,#111214);border-color:var(--line,#d9dbe0)}
.cc-btn.alt:hover{border-color:var(--ink,#111214);opacity:1}
.cc-btn:focus-visible,.cc-open:focus-visible,.cc-switch input:focus-visible+span{outline:3px solid var(--accent,#1d55d8);outline-offset:2px}

.cc-modal{position:fixed;inset:0;z-index:9999;background:rgba(17,18,20,.5);display:none;align-items:center;justify-content:center;padding:16px}
.cc-modal.open{display:flex}
.cc-dialog{background:var(--surface,#fff);border-radius:24px;max-width:560px;width:100%;max-height:calc(100vh - 32px);overflow:auto;padding:26px;box-shadow:0 24px 80px rgba(17,18,20,.3)}
.cc-dialog h2{font-size:22px;font-weight:800;margin:0 0 6px}
.cc-dialog>p{margin:0 0 16px;color:var(--muted,#5c6067);font-size:15px;line-height:1.6}
.cc-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 0;border-top:1px solid var(--line,#e7e7e2)}
.cc-row b{display:block;font-size:16px}
.cc-row small{display:block;color:var(--muted,#5c6067);font-size:14px;line-height:1.5;margin-top:2px}
.cc-switch{position:relative;flex:none;width:48px;height:28px;margin-top:2px}
.cc-switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:1}
.cc-switch span{position:absolute;inset:0;border-radius:99px;background:var(--line,#cfd3d8);transition:.2s}
.cc-switch span::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.cc-switch input:checked+span{background:var(--accent,#1d55d8)}
.cc-switch input:checked+span::after{inset-inline-start:23px}
.cc-switch input:disabled{cursor:not-allowed}
.cc-switch input:disabled+span{opacity:.55}
.cc-dialog .cc-actions{margin-top:18px}

/* footer legal links */
.legal{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}
.cc-open{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}

@media(max-width:640px){
  .cc-banner{inset-inline:10px;bottom:10px;padding:16px}
  .cc-actions .cc-btn{flex:1 1 100%;text-align:center}
  .cc-dialog{padding:20px}
}
@media(prefers-reduced-motion:reduce){.cc-btn,.cc-switch span,.cc-switch span::after{transition:none}}
