.cc-banner,.cc-modal{display:none}.cc-banner.cc-show{display:block}.cc-modal.cc-show{display:flex}.cc-banner{position:fixed;inset:auto 0 0;z-index:9998;background:var(--surface, #fff);border-top:1px solid var(--border, #e5e7eb);color:var(--text, #111);box-shadow:0 -8px 30px #0000001f;animation:cc-rise .18s ease-out}@keyframes cc-rise{0%{transform:translateY(100%)}to{transform:none}}@media(prefers-reduced-motion:reduce){.cc-banner{animation:none}}.cc-inner{max-width:1100px;margin:0 auto;padding:16px 20px;display:flex;gap:20px;align-items:center;flex-wrap:wrap}.cc-copy{flex:1 1 320px;min-width:0}.cc-copy strong{display:block;font-size:15px;margin-bottom:4px}.cc-copy p{margin:0;font-size:13.5px;line-height:1.5;color:var(--text-2, #4b5563)}.cc-copy a{color:inherit;text-decoration:underline}.cc-actions{display:flex;gap:10px;flex-wrap:wrap}.cc-btn{font:inherit;font-size:13.5px;font-weight:600;padding:9px 18px;border-radius:8px;cursor:pointer;border:1px solid var(--border, #e5e7eb);min-width:116px}.cc-ghost{background:transparent;color:var(--text, #111)}.cc-primary{background:var(--accent, #111);color:var(--accent-contrast, #fff);border-color:transparent}.cc-btn:focus-visible{outline:2px solid var(--accent, #111);outline-offset:2px}.cc-modal{position:fixed;inset:0;z-index:9999;background:#00000073;align-items:center;justify-content:center;padding:20px}html.cc-lock{overflow:hidden}.cc-card{background:var(--surface, #fff);color:var(--text, #111);border-radius:14px;max-width:520px;width:100%;max-height:85vh;overflow-y:auto;padding:22px}.cc-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.cc-card-head h2{font-size:17px;margin:0}.cc-x{background:none;border:0;font-size:24px;line-height:1;cursor:pointer;color:var(--text-2, #4b5563);padding:0 4px}.cc-card-intro{font-size:13.5px;line-height:1.55;color:var(--text-2, #4b5563);margin:10px 0 16px}.cc-cat{border-top:1px solid var(--border, #e5e7eb);padding:14px 0}.cc-cat p{margin:6px 0 0;font-size:13px;line-height:1.5;color:var(--text-2, #4b5563)}.cc-cat-h{display:flex;align-items:center;gap:10px}.cc-cat-name{font-weight:600;font-size:14px;flex:1}.cc-always{font-size:12px;color:var(--text-3, #9ca3af)}.cc-choice{cursor:pointer;display:block}.cc-check{position:absolute;opacity:0;width:0;height:0}.cc-sw{width:40px;height:22px;border-radius:999px;background:var(--border-2, #d1d5db);position:relative;flex:none}.cc-sw:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s ease}.cc-check:checked+.cc-sw{background:var(--accent, #111)}.cc-check:checked+.cc-sw:after{transform:translate(18px)}.cc-check:focus-visible+.cc-sw{outline:2px solid var(--accent, #111);outline-offset:2px}.cc-card-foot{display:flex;gap:10px;justify-content:flex-end;padding-top:16px;flex-wrap:wrap}@media(max-width:560px){.cc-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px}#cc-prefs{grid-column:1 / -1}.cc-btn{min-width:0;width:100%}}@supports (padding: max(0px)){.cc-inner{padding-bottom:max(16px,env(safe-area-inset-bottom))}}.cc-banner{max-height:70vh;overflow-y:auto;overscroll-behavior:contain}.cc-banner[data-cc-style=modal]{inset:0;background:#00000038;border-top:0;box-shadow:none;pointer-events:none;padding:20px;max-height:none;overflow:visible;animation:none}.cc-banner.cc-show[data-cc-style=modal]{display:grid;place-items:center}.cc-banner[data-cc-style=modal] .cc-inner{pointer-events:auto;width:min(520px,100%);max-height:min(80vh,640px);overflow-y:auto;overscroll-behavior:contain;background:var(--surface, #fff);color:var(--text, #111);border:1px solid var(--border, #e5e7eb);border-radius:14px;box-shadow:0 24px 60px #0000003d;flex-direction:column;align-items:stretch;gap:16px;padding:24px;animation:cc-card-in .18s ease-out}.cc-banner[data-cc-style=modal] .cc-copy{flex:none}@keyframes cc-card-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.cc-banner[data-cc-style=modal] .cc-inner{animation:none}}.cc-banner[data-cc-style=modal] .cc-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cc-banner[data-cc-style=modal] #cc-prefs{grid-column:1 / -1}.cc-banner[data-cc-style=modal] .cc-btn{min-width:0;width:100%}
