
    /* FULL SCREEN OVERLAY - CENTERS CONTENT */
    .overlay {
        display: none; 
        position: fixed;
        top: 0; left: 0;
        width: 100%; height: 100%;
        background: rgba(0, 0, 0, 0.85);
        /* FLEXBOX CENTERING */
        align-items: center; 
        justify-content: center;
        z-index: 10000;
        font-family: 'Inter', sans-serif;

    }

    .popup {
        background: #fff;
        width: 90%;
        min-width: 360px;
        max-width: 500px;
        max-height: 90%;
        padding: 40px 25px;
        position: relative;
        text-align: center;
        color: #000; 
        border: 4px solid #000;
        box-sizing: border-box;
        overflow-y: auto;
    }

    .trust-bar {
        display: flex;
        justify-content: space-around;
        font-size: 0.8rem;
        font-weight: 700;
        margin-bottom: 20px;
        padding: 10px 0;
        border-top: 1px solid #eee;
        border-bottom: 1px solid #eee;
    }

    .close {
        position: absolute;
        top: 0; 
        right: 0;
        background: #000; 
        border: none;
        font-size: 28px; 
        font-weight: bold;
        cursor: pointer; 
        color: #fff;
        width: 44px; /* Finger-friendly size for mobile */
        height: 44px;
        display: flex; 
        align-items: center; 
        justify-content: center;
        z-index: 100001;
    }

    .badge {
        display: inline-block; background: #eee; color: #000;
        font-size: 10px; font-weight: 800; padding: 4px 12px;
        margin-bottom: 15px; text-transform: uppercase;
    }

    .headline { font-size: 1.5rem; font-weight: 900; line-height: 1.2; margin-bottom: 10px; }
    .sub-headline { font-size: 0.95rem; margin-bottom: 20px; line-height: 1.4; }

    .price-area { background: #f9f9f9; padding: 15px; border: 1px solid #000; margin-bottom: 20px; }
    .price-line { display: flex; justify-content: space-between; align-items: center; margin-bottom: 5px; }
    .old-price { text-decoration: line-through; color: #666; font-size: 1rem; }
    .new-price { font-size: 1.4rem; font-weight: 900; }

    .logic-grid { text-align: left; margin-bottom: 20px; border-left: 3px solid #000; padding-left: 12px; }
    .logic-item p { font-size: 0.85rem; margin: 0; line-height: 1.4; }

    .progress-zone { margin-bottom: 25px; }
    .progress-text { font-size: 0.8rem; font-weight: 800; }
    .progress-bar { background: #eee; height: 12px; margin: 8px 0; border: 1px solid #000; }
    .progress-fill { background: #000; height: 100%; width: 0%; transition: width 1.5s ease; }
    .progress-note { font-size: 0.85rem; }

    .action-btn {
        background: #000; color: #fff; width: 100%;
        padding: 18px 10px; border: none; font-size: 0.95rem;
        font-weight: 800; text-transform: uppercase; cursor: pointer;
    }

    .footer-note { font-size: 0.7rem; color: #666; margin-top: 15px; }
