.overlay {
            display: flex;
            position: fixed;
            top: 0; left: 0;
            width: 100%; height: 100%;
            background: rgba(0,0,0,0.5);
            align-items: center;
            justify-content: center;
            z-index: 999999;
            box-sizing: border-box;
            margin: 0; padding: 0;
            animation: gmaOverlayIn .3s ease;
        }
        @keyframes gmaOverlayIn { from { opacity: 0; } to { opacity: 1; } }
        @keyframes gmaOverlayOut { from { opacity: 1; } to { opacity: 0; } }
        .popup {
            background: #fff;
            padding: 10px;
            border-radius: 5px;
            text-align: center;
            position: relative;
            box-sizing: border-box;
            margin: 0;
            animation: gmaPopupIn .35s cubic-bezier(.22,1,.36,1);
        }
        @keyframes gmaPopupIn { from { opacity: 0; transform: scale(.9) translateY(10px); } to { opacity: 1; transform: scale(1) translateY(0); } }
        @keyframes gmaPopupOut { from { opacity: 1; transform: scale(1); } to { opacity: 0; transform: scale(.9); } }
        .popup p { margin: 0; padding: 0; }
        .popup p img { display: block; max-width: 100%; height: auto; }
        .popup p iframe { display: block; max-width: 100%; border: none; }
        .close-icon {
            position: absolute;
            top: -15px; right: -15px;
            cursor: pointer;
            font-size: 14px;
            display: none;
            color: #000;
            box-shadow: 0 2px 8px rgba(99,99,99,0.2);
            background: #fff;
            border-radius: 50%;
            width: 22px; height: 22px;
            line-height: 22px;
            transition: all 0.3s ease;
            z-index: 1;
            box-sizing: border-box;
            margin: 0; padding: 0;
            text-align: center;
        }
        .close-icon:hover { color: #555; background: #eee; transform: rotate(90deg); }
        #timer-container {
            position: absolute;
            top: -35px; right: -35px;
            width: 90px; height: 90px;
            box-sizing: border-box;
            margin: 0; padding: 0;
        }
        #progress-container {
            position: absolute;
            top: 0; left: 0;
            width: 100%; height: 100%;
            box-sizing: border-box;
            margin: 0; padding: 0;
        }
        .progress { transform: rotate(90deg) scale(-1,1); }
        .text {
            position: absolute;
            width: 100%; height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
            font-weight: bold;
            color: #333;
            box-sizing: border-box;
            margin: 0; padding: 0;
        }
        .overlay-circle { animation: overlayAnimation var(--gma-popup-duration, 10s) linear forwards; }
        @keyframes overlayAnimation { from { stroke-dashoffset: var(--gma-popup-circumference, 62.832); } to { stroke-dashoffset: 0; } }
        .overlay.gma-closing { animation: gmaOverlayOut .25s ease forwards; }
        .overlay.gma-closing .popup { animation: gmaPopupOut .25s ease forwards; }
        @media (max-width: 520px) {
            #timer-container { top: -28px; right: -28px; width: 70px; height: 70px; }
            #progress-container svg { width: 70px; height: 70px; }
            .text { font-size: 10px; }
        }
