#local-consent-ui { --lc-accent:#262626; --lc-on-accent:#fff; color:#262626; font:16px/1.5 system-ui,sans-serif; position:relative; z-index:999999; }
#local-consent-ui * { box-sizing:border-box; }
#local-consent-ui [hidden] { display:none!important; }
#local-consent-ui h2 { color:inherit; font-size:1.3rem; line-height:1.3; margin:0 0 12px; }
#local-consent-ui h3 { color:inherit; font-size:1rem; margin:0 0 8px; }
#local-consent-ui p { margin:8px 0 16px; }
#local-consent-ui button { font:inherit; font-weight:600; cursor:pointer; border:1px solid #737373; border-radius:10px; padding:10px 16px; min-height:44px; background:#fff; color:#262626; white-space:normal; }
#local-consent-ui button:hover { background:#f3f3f2; }
#local-consent-ui button:disabled { opacity:.6; cursor:wait; }
#local-consent-ui .lc-primary { background:var(--lc-accent); color:var(--lc-on-accent); border-color:var(--lc-accent); }
#local-consent-ui .lc-primary:hover { background:var(--lc-accent); color:var(--lc-on-accent); filter:brightness(.94); }
#local-consent-ui :focus-visible { outline:3px solid #737373; outline-offset:3px; }
#local-consent-ui .lc-banner { position:fixed; bottom:76px; right:24px; width:min(520px,calc(100vw - 32px)); max-height:calc(100dvh - 112px); overflow:auto; padding:24px; border:1px solid #cad6dc; border-radius:16px; background:#fff; box-shadow:0 12px 44px #14334626; }
#local-consent-ui .lc-actions { display:flex; gap:12px; flex-wrap:wrap; }
#local-consent-ui .lc-actions button { flex:1 1 150px; }
#local-consent-ui dialog { --lc-accent:#262626; --lc-on-accent:#fff; width:min(560px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 32px); overflow:hidden; padding:0; margin:auto; border:1px solid #e0e0dd; border-radius:20px; background:#fff; color:#262626; box-shadow:0 24px 80px #00000026; }
#local-consent-ui dialog[open] { display:flex; flex-direction:column; }
#local-consent-ui dialog::backdrop { background:#17171780; }
html:has(#local-consent-dialog[open]) { overflow:hidden; }
#local-consent-ui .lc-dialog-header { display:block; flex:none; position:static; padding:26px 28px 18px; background:#fff; border:0; }
#local-consent-ui .lc-dialog-header h2 { font-size:1.375rem; font-weight:650; letter-spacing:-.025em; line-height:1.25; margin:0 0 10px; }
#local-consent-ui .lc-dialog-header .lc-intro { font-size:.875rem; color:#626262; line-height:1.5; margin:0; }
#local-consent-ui .lc-dialog-body { min-height:0; overflow:auto; overscroll-behavior:contain; padding:0 28px 20px; }
#local-consent-ui .lc-necessary { border:1px solid #e5e5e2; border-radius:12px; background:#f6f6f4; padding:14px 16px; }
#local-consent-ui .lc-necessary-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:6px 12px; }
#local-consent-ui .lc-necessary h3 { font-size:.875rem; margin:0; }
#local-consent-ui .lc-badge { font-size:.6875rem; font-weight:600; white-space:nowrap; color:#525252; background:#e9e9e6; padding:3px 8px; border-radius:6px; }
#local-consent-ui .lc-necessary p { font-size:.8125rem; line-height:1.5; color:#626262; margin:8px 0 0; }
#local-consent-ui .lc-category { padding:10px 16px 16px; margin-top:12px; border:1px solid #e0e0dd; border-radius:12px; background:#fff; }
#local-consent-ui .lc-category p { font-size:.875rem; line-height:1.5; color:#626262; margin:2px 0 0; }
#local-consent-ui .lc-switch { display:flex; align-items:center; justify-content:space-between; gap:16px; font-weight:700; cursor:pointer; min-height:44px; }
#local-consent-ui .lc-toggle { position:relative; flex:0 0 48px; width:48px; height:44px; display:flex; align-items:center; justify-content:center; }
#local-consent-ui .lc-toggle input { position:absolute; inset:0; z-index:1; width:100%; height:100%; margin:0; padding:0; opacity:0; cursor:pointer; }
#local-consent-ui .lc-toggle-track { display:block; width:44px; height:26px; position:relative; border:1px solid #737373; border-radius:999px; background:#dededb; pointer-events:none; transition:background .15s; }
#local-consent-ui .lc-toggle-track::after { content:''; display:block; position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%; background:#fff; box-shadow:0 1px 3px #0003; transition:transform .15s; }
#local-consent-ui .lc-toggle input:checked + .lc-toggle-track { background:#262626; border-color:#262626; }
#local-consent-ui .lc-toggle input:checked + .lc-toggle-track::after { transform:translateX(18px); }
#local-consent-ui .lc-toggle input:focus-visible + .lc-toggle-track { outline:3px solid #737373; outline-offset:3px; }
#local-consent-ui .lc-dialog-body .lc-reload-notice { color:#626262; font-size:.75rem; line-height:1.5; margin:16px 2px 0; }
#local-consent-ui .lc-dialog-footer { display:block; flex:none; padding:18px 28px; border-top:1px solid #e5e5e2; background:#fff; }
#local-consent-ui .lc-dialog-footer .lc-actions { flex-wrap:nowrap; gap:10px; }
#local-consent-ui .lc-dialog-footer button { font-size:.875rem; min-height:46px; flex:1 1 0; padding:10px 12px; }
#local-consent-ui .lc-policy { display:table; font-size:.75rem; color:#525252; text-decoration:underline; text-underline-offset:3px; margin:8px auto 0; padding:4px 0; min-height:24px; }
#local-consent-ui .lc-launcher { position:fixed; bottom:max(16px,env(safe-area-inset-bottom)); right:max(24px,env(safe-area-inset-right)); display:flex; align-items:center; justify-content:center; width:44px; height:44px; min-width:44px; padding:0; border-radius:50%; box-shadow:0 4px 16px #14334620; }
#local-consent-ui .lc-launcher svg { display:block; width:22px; height:22px; pointer-events:none; }
#local-consent-ui .lc-status:not(:empty) { position:fixed; left:16px; bottom:calc(72px + env(safe-area-inset-bottom)); margin:0; padding:12px; max-width:min(420px,calc(100vw - 32px)); background:#fff; border:1px solid #526775; border-radius:8px; }
#local-consent-ui .lc-dialog-footer .lc-status:not(:empty) { position:static; font-size:.8125rem; margin:10px 0 0; max-width:none; }
#local-consent-ui .lc-dialog-footer .lc-status:empty { margin:0; }
@media(max-width:600px) { #local-consent-ui .lc-banner { right:16px; padding:20px; } #local-consent-ui .lc-launcher { right:max(16px,env(safe-area-inset-right)); } #local-consent-ui dialog { width:calc(100vw - 24px); max-height:calc(100dvh - 24px); border-radius:18px; } #local-consent-ui .lc-dialog-header { padding:22px 20px 16px; } #local-consent-ui .lc-dialog-body { padding:0 20px 18px; } #local-consent-ui .lc-dialog-footer { padding:14px 20px; } #local-consent-ui .lc-dialog-footer .lc-actions { flex-direction:column; gap:8px; } #local-consent-ui .lc-dialog-footer button { width:100%; flex:none; } }
@media(max-height:460px) { #local-consent-ui .lc-dialog-header { padding-top:12px; padding-bottom:10px; } #local-consent-ui .lc-dialog-footer { padding-top:10px; padding-bottom:10px; } }
@media(forced-colors:active) { #local-consent-ui .lc-toggle input { appearance:auto; opacity:1; position:static; width:24px; height:24px; } #local-consent-ui .lc-toggle-track { display:none; } }
@media(prefers-reduced-motion:reduce) { #local-consent-ui *,#local-consent-ui *::after { scroll-behavior:auto; transition:none; } }
