.wpbp-bar {
    --wpbp-primary: #008EFA;
    --wpbp-secondary: #087BD2;
    --wpbp-text: #fff;
    --wpbp-btn-bg: #fff;
    --wpbp-btn-text: #007acb;
    --wpbp-height: 58px;
    --wpbp-height-mobile: 52px;
    --wpbp-max-width: 900px;
    --wpbp-font: 15px;
    --wpbp-font-mobile: 12px;
    --wpbp-radius: 7px;
    --wpbp-logo-width: 76px;
    --wpbp-z: 9999;
    --wpbp-duration: 450ms;

    position: relative;
    width: 100%;
    min-height: var(--wpbp-height);
    background: linear-gradient(110deg, var(--wpbp-secondary) 0%, var(--wpbp-primary) 48%, var(--wpbp-secondary) 100%);
    color: var(--wpbp-text);
    overflow: hidden;
    z-index: var(--wpbp-z);
    box-sizing: border-box;
    font-family: inherit;
}

.wpbp-bar *, .wpbp-bar *::before, .wpbp-bar *::after { box-sizing: border-box; }
.wpbp-bar.is-sticky { position: sticky; top: 0; }
body.admin-bar .wpbp-bar.is-sticky { top: 32px; }
.wpbp-bar.has-shadow { box-shadow: 0 5px 18px rgba(0,0,0,.10); }

.wpbp-inner {
    position: relative;
    z-index: 2;
    width: min(var(--wpbp-max-width), calc(100% - 32px));
    min-height: var(--wpbp-height);
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
}

.wpbp-message-wrap {
    min-width: 260px;
    height: 32px;
    overflow: hidden;
    display: flex;
    align-items: center;
    flex: 0 1 auto;
}

.wpbp-message {
    display: block;
    color: var(--wpbp-text);
    font-size: var(--wpbp-font);
    font-weight: 700;
    line-height: 1.6;
    white-space: nowrap;
    opacity: 1;
    transform: translateY(0);
    transition: transform var(--wpbp-duration) cubic-bezier(.65,0,.35,1), opacity var(--wpbp-duration) ease;
}

.wpbp-bar[data-animation="slide-up"] .wpbp-message.is-out { transform: translateY(-36px); opacity: 0; }
.wpbp-bar[data-animation="slide-up"] .wpbp-message.is-prep { transition: none; transform: translateY(36px); opacity: 0; }
.wpbp-bar[data-animation="slide-down"] .wpbp-message.is-out { transform: translateY(36px); opacity: 0; }
.wpbp-bar[data-animation="slide-down"] .wpbp-message.is-prep { transition: none; transform: translateY(-36px); opacity: 0; }
.wpbp-bar[data-animation="fade"] .wpbp-message.is-out { opacity: 0; transform: none; }
.wpbp-bar[data-animation="fade"] .wpbp-message.is-prep { transition: none; opacity: 0; transform: none; }
.wpbp-message.is-in { transform: translateY(0) !important; opacity: 1 !important; }

.wpbp-brand { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; }
.wpbp-brand img { display: block; width: var(--wpbp-logo-width); max-width: 22vw; height: auto; max-height: calc(var(--wpbp-height) - 16px); object-fit: contain; }

.wpbp-cta {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 68px;
    height: 30px;
    padding: 0 17px;
    border: 0;
    border-radius: var(--wpbp-radius);
    background: var(--wpbp-btn-bg);
    color: var(--wpbp-btn-text) !important;
    text-decoration: none !important;
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 4px 14px rgba(0,0,0,.12), inset 0 0 0 1px rgba(255,255,255,.5);
    transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.wpbp-cta:hover { transform: translateY(-2px); box-shadow: 0 7px 20px rgba(0,0,0,.18); filter: brightness(.99); }
.wpbp-cta:focus-visible, .wpbp-close:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

.wpbp-close {
    position: absolute;
    left: -2px;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.13);
    color: var(--wpbp-text);
    font: 400 22px/1 Arial, sans-serif;
    cursor: pointer;
    transition: background .2s ease;
}
.wpbp-close:hover { background: rgba(255,255,255,.24); }

.wpbp-shine {
    position: absolute;
    z-index: 1;
    top: -60px;
    left: -260px;
    width: 190px;
    height: 180px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.13), transparent);
    transform: rotate(20deg);
    pointer-events: none;
    animation: wpbp-shine 7s infinite ease-in-out;
}
@keyframes wpbp-shine {
    0% { left: -260px; }
    55%,100% { left: calc(100% + 260px); }
}

.wpbp-bar.is-dismissed { display: none !important; }

@media (max-width: 782px) {
    body.admin-bar .wpbp-bar.is-sticky { top: 46px; }
}

@media (max-width: 767px) {
    .wpbp-bar { min-height: var(--wpbp-height-mobile); }
    .wpbp-inner { width: calc(100% - 20px); min-height: var(--wpbp-height-mobile); gap: 10px; justify-content: space-between; }
    .wpbp-message-wrap { min-width: 0; flex: 1 1 auto; }
    .wpbp-message { font-size: var(--wpbp-font-mobile); overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
    .wpbp-brand img { max-height: calc(var(--wpbp-height-mobile) - 16px); max-width: 70px; }
    .wpbp-cta { min-width: 55px; height: 28px; padding: 0 12px; font-size: 11px; }
    .wpbp-close { position: static; transform: none; width: 24px; height: 24px; flex: 0 0 24px; font-size: 18px; }
}

@media (max-width: 420px) {
    .wpbp-brand { display: none; }
    .wpbp-inner { gap: 8px; }
}

@media (min-width: 768px) { .wpbp-bar.hide-desktop { display: none !important; } }
@media (max-width: 767px) { .wpbp-bar.hide-mobile { display: none !important; } }

@media (prefers-reduced-motion: reduce) {
    .wpbp-message, .wpbp-cta { transition: none !important; }
    .wpbp-shine { animation: none !important; display: none; }
}
