.usov-cookie-notice[hidden] { display: none !important; }
.usov-cookie-notice {
    position: fixed; z-index: 10000; left: 20px; bottom: 20px;
    width: calc(100% - 40px); max-width: 620px; box-sizing: border-box;
    max-height: calc(100vh - 40px); overflow: auto;
    padding: 22px; border: 1px solid #8b3742; border-radius: 12px;
    background: #fff; color: #212121; font: inherit;
    box-shadow: 0 6px 30px rgba(0,0,0,.15);
}
.usov-cookie-notice h2 { font-size: 18px; margin: 0 0 10px; }
.usov-cookie-notice p { margin: 0 0 14px; font-size: 14px; line-height: 1.6; }
.usov-cookie-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.usov-cookie-actions button {
    flex: 1 1 200px; padding: 12px 16px; font: inherit; font-size: 14px;
    border: 1px solid #8b3742; border-radius: 8px; color: #8b3742;
    background: #fff; cursor: pointer;
}
.usov-cookie-actions button:hover { background: #f8f0f1; }
.usov-cookie-actions button:focus-visible, .usov-cookie-settings:focus-visible { outline: 2px solid #8b3742; outline-offset: 3px; }
.usov-cookie-settings { display: block; margin: 12px auto; padding: 6px 12px; border: 0; background: none; text-decoration: underline; color: #8b3742; font: inherit; cursor: pointer; }
@media (max-width: 480px) { .usov-cookie-notice { padding: 16px; } .usov-cookie-actions button { flex-basis: 100%; } }
