:where(:root){--cc-primary:#2563eb;--cc-primary-hover:#1d4ed8;--cc-bg:#fff;--cc-surface:#f8fafc;--cc-tint-rgb:0, 0, 0;--cc-text:#0f172a;--cc-text-muted:#64748b;--cc-border:#e2e8f0;--cc-radius:1.5rem;--cc-radius-pill:9999px;--cc-font-family:inherit}@media(prefers-color-scheme:dark){:where(:root){--cc-primary:#3b82f6;--cc-primary-hover:#60a5fa;--cc-bg:#1e293b;--cc-surface:#334155;--cc-tint-rgb:255, 255, 255;--cc-text:#f1f5f9;--cc-text-muted:#94a3b8;--cc-border:#475569}}:where([data-cc-theme=light]){--cc-primary:#2563eb;--cc-primary-hover:#1d4ed8;--cc-bg:#fff;--cc-surface:#f8fafc;--cc-tint-rgb:0, 0, 0;--cc-text:#0f172a;--cc-text-muted:#64748b;--cc-border:#e2e8f0}:where([data-cc-theme=dark]){--cc-primary:#3b82f6;--cc-primary-hover:#60a5fa;--cc-bg:#1e293b;--cc-surface:#334155;--cc-tint-rgb:255, 255, 255;--cc-text:#f1f5f9;--cc-text-muted:#94a3b8;--cc-border:#475569}:where(body){padding-bottom:var(--cc-banner-height,0);transition:padding-bottom .3s}:where(:root){scroll-padding-bottom:var(--cc-banner-height,0)}.cc-banner{z-index:9999;background-color:var(--cc-bg);border-top:1px solid var(--cc-border);font-family:var(--cc-font-family);color:var(--cc-text);opacity:0;pointer-events:none;box-sizing:border-box;transition:transform .3s,opacity .3s;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.cc-banner.cc-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.cc-banner-inner{box-sizing:border-box;flex-wrap:wrap;align-items:center;gap:1.5rem;max-width:72rem;margin:0 auto;padding:1rem 1.5rem;display:flex}.cc-banner-text{min-width:280px;color:var(--cc-text-muted);flex:1;margin:0;font-size:.875rem;line-height:1.5}.cc-banner-actions{flex-wrap:wrap;flex-shrink:0;gap:.5rem;display:flex}.cc-overlay{z-index:10000;opacity:0;pointer-events:none;background-color:#000c;transition:opacity .3s;position:fixed;inset:0}.cc-overlay.cc-visible{opacity:1;pointer-events:auto}.cc-modal{z-index:10001;font-family:var(--cc-font-family);color:var(--cc-text);opacity:0;pointer-events:none;box-sizing:border-box;justify-content:center;align-items:center;padding:1rem;transition:opacity .3s;display:flex;position:fixed;inset:0}.cc-modal.cc-visible{opacity:1;pointer-events:auto}.cc-modal-inner{background-color:var(--cc-bg);border-radius:var(--cc-radius);box-sizing:border-box;flex-direction:column;width:100%;max-width:32rem;max-height:80vh;display:flex;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.cc-modal-header{justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 1rem 2.5rem;display:flex}.cc-modal-title{margin:0;font-size:1.125rem;font-weight:600;line-height:1.5}.cc-modal-close{cursor:pointer;width:2rem;height:2rem;color:var(--cc-text-muted);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background-color .15s;display:flex}.cc-modal-close:hover{background-color:rgba(var(--cc-tint-rgb),.06);color:var(--cc-text)}.cc-modal-body{flex:auto;padding:1rem 1.5rem 1.5rem;overflow-y:auto}.cc-modal-footer{border-top:1px solid rgba(var(--cc-tint-rgb),.08);flex-wrap:wrap;gap:.5rem;padding:1.5rem;display:flex}.cc-modal-footer [data-cc=save-preferences]{margin-left:auto}.cc-category{background-color:rgba(var(--cc-tint-rgb),.02);border-radius:.75rem;padding:.875rem 1rem}.cc-category+.cc-category{margin-top:.5rem}.cc-category-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.cc-category-label-group{align-items:center;gap:.5rem;display:flex}.cc-category-label{cursor:pointer;font-size:.875rem;font-weight:600}.cc-badge{color:var(--cc-text-muted);border:1px solid var(--cc-border);border-radius:var(--cc-radius-pill);padding:.125rem .5rem;font-size:.6875rem;font-weight:500;line-height:1.5}.cc-category-description{color:var(--cc-text-muted);margin:.25rem 0 0;font-size:.8125rem;line-height:1.5}.cc-toggle{flex-shrink:0;width:2.75rem;height:1.5rem;display:inline-block;position:relative}.cc-toggle input{opacity:0;width:0;height:0;position:absolute}.cc-toggle-slider{background-color:var(--cc-border);border-radius:var(--cc-radius-pill);cursor:pointer;transition:background-color .2s;position:absolute;inset:0}.cc-toggle-slider:before{content:"";box-sizing:border-box;background-color:#fff;border-radius:50%;width:1.125rem;height:1.125rem;transition:transform .2s;position:absolute;bottom:.1875rem;left:.1875rem}.cc-toggle input:checked+.cc-toggle-slider{background-color:var(--cc-primary)}.cc-toggle input:checked+.cc-toggle-slider:before{transform:translate(1.25rem)}.cc-toggle input:disabled+.cc-toggle-slider{opacity:.6;cursor:not-allowed}.cc-btn{font-size:.875rem;font-weight:500;font-family:var(--cc-font-family);border-radius:var(--cc-radius-pill);cursor:pointer;white-space:nowrap;box-sizing:border-box;border:1px solid #0000;justify-content:center;align-items:center;padding:.5rem 1rem;line-height:1.5;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.cc-btn-primary{background-color:var(--cc-primary);color:#fff;border-color:var(--cc-primary)}.cc-btn-primary:hover{background-color:var(--cc-primary-hover);border-color:var(--cc-primary-hover)}.cc-btn-secondary{background-color:var(--cc-surface);color:var(--cc-text);border-color:var(--cc-border)}.cc-btn-secondary:hover{background-color:var(--cc-border)}.cc-policy-link{color:var(--cc-primary);text-underline-offset:2px;font-size:.8125rem;text-decoration:underline;display:inline-block}.cc-policy-link:hover{color:var(--cc-primary-hover)}.cc-modal-policy-bar{background-color:rgba(var(--cc-tint-rgb),.06);border-radius:0 0 var(--cc-radius) var(--cc-radius);justify-content:center;align-items:center;padding:.75rem 1.5rem;display:flex}.cc-modal-policy-link{color:var(--cc-text-muted);margin:0}.cc-modal-policy-link:hover{color:var(--cc-text)}.cc-btn:focus-visible,.cc-modal-close:focus-visible,.cc-policy-link:focus-visible,.cc-toggle input:focus-visible+.cc-toggle-slider{outline:2px solid var(--cc-primary);outline-offset:2px}@media(max-width:480px){.cc-banner-actions,.cc-modal-footer{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.cc-banner-actions{width:100%}.cc-banner-actions>:nth-child(3),.cc-modal-footer>:nth-child(3){grid-column:1/-1}.cc-modal-footer [data-cc=save-preferences]{margin-left:0}}
