.consent-panel { position: fixed; z-index: 900; right: 20px; bottom: 20px; width: min(560px, calc(100% - 40px)); padding: 24px; color: #dce8ea; border: 1px solid rgb(255 255 255 / 16%); border-radius: 22px; background: var(--color-navy); box-shadow: 0 24px 70px rgb(2 14 24 / 38%); }
.consent-panel[hidden], .consent-panel [hidden] { display: none; }
.consent-panel h2 { margin: 0 36px 10px 0; color: #fff; font-size: 1.35rem; letter-spacing: -.02em; }
.consent-panel p { margin-bottom: 16px; color: #c2d1d5; font-size: .94rem; }
.consent-panel a { color: #fff; }
.consent-panel__close { position: absolute; top: 14px; right: 14px; width: 36px; height: 36px; padding: 0; color: #fff; border: 1px solid rgb(255 255 255 / 22%); border-radius: 50%; background: transparent; cursor: pointer; }
.consent-panel__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.consent-panel__choice { min-height: 48px; padding: 10px 14px; color: #fff; border: 1px solid rgb(255 255 255 / 48%); border-radius: 12px; background: rgb(255 255 255 / 8%); cursor: pointer; font-weight: 700; }
.consent-panel__choice:hover { background: rgb(255 255 255 / 14%); }
.consent-panel__manage { grid-column: 1 / -1; padding: 7px; color: #dce8ea; border: 0; background: transparent; text-decoration: underline; cursor: pointer; }
.consent-category { display: grid; grid-template-columns: 1fr auto; gap: 6px 18px; padding: 14px 0; border-top: 1px solid rgb(255 255 255 / 12%); }
.consent-category strong { color: #fff; }
.consent-category p { grid-column: 1 / -1; margin: 0; font-size: .86rem; }
.consent-category input { width: 22px; height: 22px; accent-color: var(--color-accent); }
.consent-panel__save { width: 100%; margin-top: 12px; }
.privacy-settings-button { padding: 0; color: #dce8ea; border: 0; background: transparent; cursor: pointer; font: inherit; text-decoration: underline; }
@media (max-width: 620px) { .consent-panel { right: 12px; bottom: 12px; width: calc(100% - 24px); max-height: calc(100vh - 24px); overflow: auto; padding: 20px; border-radius: 18px; } .consent-panel__actions { grid-template-columns: 1fr; } .consent-panel__manage { grid-column: auto; } }
