#custom-ui-overlay {
    position: fixed; inset: 0; background: rgba(0,0,0,0.8);
    backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
    z-index: 99999; display: flex; align-items: center; justify-content: center;
    opacity: 0; pointer-events: none; transition: opacity 0.4s ease;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
#custom-ui-overlay.active { opacity: 1; pointer-events: auto; }
.custom-ui-card {
    background: #fff; padding: 30px; border-radius: 20px; text-align: center;
    max-width: 500px; width: 90%; box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5);
    transform: scale(0.95); transition: transform 0.4s ease;
}
#custom-ui-overlay.active .custom-ui-card { transform: scale(1); }
.custom-ui-slide { display: none; animation: fadeIn 0.5s ease forwards; }
.custom-ui-slide.active { display: block; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

.custom-ui-title { font-size: 22px; font-weight: bold; color: #1d1d1f; margin-bottom: 10px; }
.custom-ui-text { font-size: 15px; color: #666; line-height: 1.5; }
.custom-ui-video iframe { width: 100%; aspect-ratio: 16/9; border-radius: 12px; border: none; }
.custom-ui-banner img { max-width: 100%; border-radius: 12px; cursor: pointer; transition: transform 0.2s; }
.custom-ui-banner img:hover { transform: scale(1.02); }
.custom-ui-spinner { width: 40px; height: 40px; border: 4px solid #f3f3f3; border-top: 4px solid #0071e3; border-radius: 50%; animation: spin 1s linear infinite; margin: 0 auto 20px auto; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
