#twbp-root .twbp-banner {
    position: fixed;
    z-index: 9990;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    
    box-sizing: border-box;
    width: min(var(--twbp-width, 500px), calc(100% - 24px));
    max-height: calc(100dvh - 24px);
    overflow: auto;
    margin: 0;
    padding: 44px 0 0;
    border: 1px solid #aaa;
    border-radius: 0;
    background: #fff;
    color: #202020;
    box-shadow: 0 2px 8px #0002;
    font: 16px/1.4 system-ui, sans-serif;
}
#twbp-root .twbp-close {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    min-width: 44px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: #fff;
    color: #111;
    font: 30px/1 system-ui, sans-serif;
    cursor: pointer;
}
#twbp-root .twbp-close:hover { background: #eee; }
#twbp-root .twbp-close:focus-visible,
#twbp-root .twbp-offer:focus-visible { outline: 3px solid #174ca0; outline-offset: -3px; }
#twbp-root .twbp-offer {
    display: block;
    padding: 0;
    margin: 0;
    color: #16477c;
    text-decoration: underline;
    text-underline-offset: 2px;
}
#twbp-root .twbp-copy { display: block; padding: 8px 12px; min-width: 0; overflow-wrap: anywhere; }
#twbp-root .twbp-label { display: block; color: #444; font-size: 12px; }
#twbp-root .twbp-offer img {
    display: block;
    aspect-ratio: 1;
    width: 100%;
    height: auto;
    object-fit: contain;
    margin: 0;
    padding: 0;
    border: 0;
}
#twbp-root .twbp-sr {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

@media print { #twbp-root { display: none !important; } }
