#sats-cookie-notice,
#sats-cookie-notice * { box-sizing: border-box; }
#sats-cookie-notice[hidden] { display: none !important; }
#sats-cookie-notice {
    position: fixed;
    right: 16px;
    bottom: 24px;
    bottom: calc(24px + env(safe-area-inset-bottom, 0px));
    left: 16px;
    z-index: 900;
    display: flex;
    align-items: center;
    gap: 20px;
    width: auto;
    max-width: 960px;
    margin: 0 auto;
    padding: 18px 20px;
    color: #333;
    font: 14px/1.45 Arial, sans-serif;
    text-align: left;
    background: rgba(255, 255, 255, .97);
    border: 1px solid #d9e1ea;
    border-radius: 20px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, .18);
}
#sats-cookie-notice .sats-cookie-text { flex: 1; margin: 0; padding: 0; font: inherit; color: inherit; }
#sats-cookie-notice .sats-cookie-text a { color: inherit; text-decoration: underline; }
#sats-cookie-notice button { font-family: inherit; cursor: pointer; }
#sats-cookie-notice button:focus-visible,
#sats-cookie-notice a:focus-visible { outline: 3px solid #e4a218; outline-offset: 3px; }
#sats-cookie-notice .sats-cookie-close {
    position: absolute;
    top: -10px;
    right: -6px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    min-width: 0;
    margin: 0;
    padding: 0;
    color: #294b69;
    font-size: 28px;
    line-height: 1;
    background: #fff;
    border: 2px solid #294b69;
    border-radius: 50%;
}
#sats-cookie-notice .sats-cookie-accept {
    flex: 0 0 auto;
    min-width: 132px;
    min-height: 44px;
    margin: 0;
    padding: 10px 22px;
    color: #fff;
    font-size: 15px;
    line-height: 1.3;
    background: #294b69;
    border: 0;
    border-radius: 10px;
}
.sats-policy-footer { clear: both; display: block; padding: 16px; text-align: center; font: 14px/1.5 Arial, sans-serif; }
.sats-policy-footer a { color: inherit; text-decoration: underline; }
@media (max-width: 767px) {
    #sats-cookie-notice { right: 12px; left: 12px; flex-direction: column; align-items: stretch; gap: 12px; padding: 16px; font-size: 13px; border-radius: 16px; }
    #sats-cookie-notice .sats-cookie-accept { align-self: flex-end; min-height: 40px; }
}
