:root{--privacy-bg:#171717;--privacy-text:#f9fafb;--privacy-button:#262626;--privacy-hover:#404040;--privacy-link:#fde68a;--privacy-scheme:dark;--privacy-border:#a3a3a3;--privacy-focus:#fbbf24}
:root[data-home-theme="light"]{--privacy-bg:#fff;--privacy-text:#171717;--privacy-button:#f5f5f5;--privacy-hover:#e5e5e5;--privacy-link:#785400;--privacy-scheme:light;--privacy-border:#737373;--privacy-focus:#805400}
.ct-privacy-banner,.ct-privacy-dialog,.ct-privacy-reopen{box-sizing:border-box;color:var(--privacy-text);background:var(--privacy-bg);font:400 .875rem/1.5 system-ui,sans-serif;border:1px solid #737373;border-radius:12px;color-scheme:var(--privacy-scheme)}
.ct-privacy-banner{position:fixed;z-index:9;left:50%;transform:translateX(-50%);bottom:calc(var(--privacy-buy-offset,0px) + 8px);width:calc(100% - 24px);max-width:880px;margin:0;padding:10px 12px;max-height:50dvh;overflow:auto;box-shadow:0 4px 20px #0003}
.ct-privacy-banner[hidden]{display:none!important}.ct-privacy-banner h2,.ct-privacy-dialog h2{font:700 1.25rem/1.3 system-ui,sans-serif;margin:0 0 8px}.ct-privacy-banner h2{font-size:1rem;margin-bottom:6px}.ct-privacy-banner p{margin:0 0 12px}.ct-privacy-actions{display:flex;gap:8px;flex-wrap:wrap}
.ct-privacy-banner button,.ct-privacy-dialog button,.ct-privacy-reopen{font:600 .875rem/1.4 system-ui,sans-serif;cursor:pointer;min-height:44px;padding:10px 14px;border:1px solid var(--privacy-border);border-radius:8px;background:var(--privacy-button);color:var(--privacy-text);white-space:normal;text-align:center}
.ct-privacy-banner button:hover,.ct-privacy-dialog button:hover,.ct-privacy-reopen:hover{background:var(--privacy-hover)}.ct-privacy-banner button:focus-visible,.ct-privacy-dialog :focus-visible,.ct-privacy-reopen:focus-visible{outline:3px solid var(--privacy-focus);outline-offset:3px}
.ct-privacy-reopen{display:block;position:static;width:fit-content;max-width:calc(100% - 24px);margin:18px auto}
.ct-privacy-dialog{width:min(680px,calc(100% - 24px));max-height:85dvh;padding:22px;overflow:auto}.ct-privacy-dialog::backdrop{background:#000b}.ct-privacy-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.ct-privacy-dialog section{padding:14px 0;border-bottom:1px solid #525252}.ct-privacy-dialog label{display:flex;align-items:center;gap:10px;font-weight:700;cursor:pointer;min-height:44px}.ct-privacy-dialog input[type=checkbox]{width:22px;height:22px;margin:0;accent-color:#fbbf24;flex:none}.ct-privacy-dialog p{margin:8px 0 14px;line-height:1.5}.ct-privacy-dialog h3{font-size:1rem;margin:20px 0 6px}.ct-privacy-dialog a{color:var(--privacy-link);text-decoration:underline}.ct-privacy-dialog>button:last-child{display:block;margin-top:16px}.ct-privacy-dialog [hidden]{display:none!important}
@media(max-width:480px){.ct-privacy-banner{padding:8px;width:calc(100% - 16px)}.ct-privacy-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ct-privacy-actions button{width:100%;padding:6px}.ct-privacy-actions button:last-child{grid-column:1/-1}.ct-privacy-dialog{padding:16px}.ct-privacy-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.ct-privacy-heading button{justify-self:end}}

:root{scroll-padding-bottom:calc(var(--privacy-height,0px) + var(--privacy-buy-offset,0px) + 16px)}.ct-privacy-reopen-wrap{padding:1px 0 calc(var(--privacy-height,0px) + 18px)}.ct-event .ct-privacy-reopen-wrap{padding-bottom:calc(var(--privacy-height,0px) + 120px + env(safe-area-inset-bottom));}.ct-privacy-reopen{scroll-margin-bottom:calc(120px + env(safe-area-inset-bottom));}
