.lunetic-consent-panel {
  position: fixed; z-index: 99999; right: max(16px, env(safe-area-inset-right));
  bottom: calc(90px + env(safe-area-inset-bottom)); width: min(480px, calc(100vw - 32px));
  max-height: calc(100dvh - 120px); overflow: auto; padding: 18px;
  background: #191a21; color: #fff; border: 1px solid #888; border-radius: 4px;
  box-shadow: 0 10px 36px #0008; font: 14px/1.5 system-ui, sans-serif;
}
.lunetic-consent-panel[hidden] { display: none; }
.lunetic-consent-panel h2 { margin: 0 0 8px; font: 700 19px/1.3 system-ui, sans-serif; }
.lunetic-consent-panel p { margin: 0 0 12px; }
.lunetic-consent-panel a { color: #9adff0; text-decoration: underline; }
.lunetic-consent-panel label { display: flex; align-items: flex-start; gap: 8px; color: #fff; font: inherit; font-weight: 600; }
.lunetic-consent-panel input[type=checkbox] { position: static; opacity: 1; pointer-events: auto; margin: 4px 0; width: 18px; height: 18px; flex-shrink: 0; accent-color: #c36ef2; }
.lunetic-consent-panel .lunetic-consent-detail { font-size: 12px; margin: 6px 0 12px; color: #ddd; }
.lunetic-consent-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.lunetic-consent-actions button { min-height: 44px; padding: 8px; border: 1px solid #aaa; background: #f7f7f7; color: #171717; cursor: pointer; font: 600 13px/1.3 system-ui, sans-serif; }
.lunetic-consent-actions button:last-child { grid-column: 1 / -1; background: transparent; color: #fff; }
.lunetic-consent-panel :focus-visible, .lunetic-consent-settings:focus-visible { outline: 3px solid #9adff0; outline-offset: 3px; }
.lunetic-consent-settings { display: inline-block; margin: 0; padding: 10px 0; border: 0; background: transparent; color: inherit; text-decoration: underline; cursor: pointer; font: inherit; }
