.restday-privacy-banner {
    position: fixed;
    z-index: 99999;
    right: 1rem;
    bottom: 1rem;
    left: 1rem;
    color: #102a43;
    background: #ffffff;
    border: 2px solid #102a43;
    box-shadow: 0 0.5rem 2rem rgba(16, 42, 67, 0.25);
}

.restday-privacy-content {
    max-width: 52rem;
    margin: 0 auto;
    padding: 1rem;
    font: 16px/1.5 Arial, sans-serif;
}

.restday-privacy-content h2 { margin: 0 0 0.5rem; font-size: 1.25rem; }
.restday-privacy-actions { display: flex; gap: 0.75rem; margin: 1rem 0; }
#restday-privacy-banner .restday-privacy-action,
#restday-privacy-banner .restday-privacy-settings,
#restday-privacy-banner .restday-privacy-details button,
#restday-privacy-preferences {
    min-height: 2.5rem;
    padding: 0.5rem 0.75rem;
    color: #ffffff !important;
    background-color: #102a43 !important;
    background-image: none !important;
    border: 1px solid #102a43;
    border-color: #102a43 !important;
    border-radius: 0;
    cursor: pointer;
}

#restday-privacy-banner .restday-privacy-action:hover,
#restday-privacy-banner .restday-privacy-action:focus-visible,
#restday-privacy-banner .restday-privacy-settings:hover,
#restday-privacy-banner .restday-privacy-settings:focus-visible,
#restday-privacy-banner .restday-privacy-details button:hover,
#restday-privacy-banner .restday-privacy-details button:focus-visible,
#restday-privacy-preferences:hover,
#restday-privacy-preferences:focus-visible {
    color: #ffffff !important;
    background-color: #163b5c !important;
    background-image: none !important;
    border-color: #163b5c !important;
}

#restday-privacy-banner button:focus-visible,
#restday-privacy-preferences:focus-visible {
    outline: 3px solid #f3b723;
    outline-offset: 2px;
}
.restday-privacy-action { flex: 1 1 0; }
.restday-privacy-details { margin-top: 0.75rem; }
.restday-privacy-details label { display: block; margin: 0.5rem 0; }
.restday-privacy-preferences { margin: 0.75rem; }

@media (min-width: 48rem) {
    .restday-privacy-banner { right: 2rem; bottom: 2rem; left: auto; width: min(36rem, calc(100% - 4rem)); }
}
