/* ==========================================================
   YCSM ENTERPRISE SUPPORT WIDGET
   Version : 1.0
========================================================== */

:root{

    --ycsm-primary:#FF6A00;
    --ycsm-primary-dark:#E65100;
    --ycsm-secondary:#FF8A00;
    --ycsm-accent:#FFC107;

    --ycsm-white:#ffffff;
    --ycsm-text:#37474F;
    --ycsm-light:#FAFAFA;
    --ycsm-border:#ECECEC;

}

/* Floating Button */

#ycsm-widget-button{

    position:fixed;

    right:25px;

    bottom:25px;

    width:68px;

    height:68px;

    border:none;

    border-radius:50%;

    cursor:pointer;

    z-index:999999;

    color:#fff;

    font-size:28px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
    linear-gradient(
        135deg,
        var(--ycsm-primary-dark),
        var(--ycsm-primary),
        var(--ycsm-secondary)
    );

    box-shadow:
        0 15px 35px rgba(230,81,0,.35);

    transition:.35s;

}

#ycsm-widget-button:hover{

    transform:translateY(-5px) scale(1.05);

    box-shadow:
        0 22px 45px rgba(230,81,0,.45);

}

/* Pulse */

.ycsm-pulse{

    position:absolute;

    inset:0;

    border-radius:50%;

    animation:ycsmPulse 2s infinite;

    border:2px solid rgba(255,255,255,.45);

}

/* Popup */

#ycsm-widget-popup{

    position:fixed;

    right:25px;

    bottom:110px;

    width:380px;

    max-width:calc(100vw - 30px);

    display:none;

    overflow:hidden;

    border-radius:22px;

    background:#fff;

    border:1px solid var(--ycsm-border);

    box-shadow:
        0 30px 70px rgba(0,0,0,.20);

    z-index:999998;

    animation:popupShow .35s ease;

}

/* Header */

.ycsm-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px;

    color:#fff;

    background:
    linear-gradient(
        135deg,
        var(--ycsm-primary-dark),
        var(--ycsm-primary),
        var(--ycsm-secondary)
    );

}

#ycsm-widget-close{

    border:none;

    background:none;

    color:#fff;

    font-size:30px;

    cursor:pointer;

    line-height:1;

}

/* Body */

.ycsm-body{

    padding:22px;

    background:#fff;

}

/* Footer */

.ycsm-footer{

    padding:15px;

    background:#fafafa;

    border-top:1px solid #eee;

    text-align:center;

    font-size:13px;

    color:#777;

}

/* Animation */

@keyframes popupShow{

    from{

        opacity:0;

        transform:translateY(20px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

@keyframes ycsmPulse{

    0%{

        transform:scale(1);

        opacity:.9;

    }

    70%{

        transform:scale(1.55);

        opacity:0;

    }

    100%{

        opacity:0;

    }

}
/* ==========================================================
   SUPPORT HEADER
========================================================== */

.ycsm-support-info{

    display:flex;
    align-items:center;
    gap:14px;

}

.ycsm-avatar{

    width:52px;
    height:52px;

    border-radius:50%;

    background:rgba(255,255,255,.20);

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:24px;

    color:#fff;

    backdrop-filter:blur(10px);

    flex-shrink:0;

}

.ycsm-support-text h5{

    margin:0;

    color:#fff;

    font-size:18px;

    font-weight:700;

}

.ycsm-online{

    display:flex;
    align-items:center;
    gap:8px;

    margin-top:6px;

    font-size:13px;

    color:#FFF8E1;

}

.ycsm-online-dot{

    width:10px;
    height:10px;

    border-radius:50%;

    background:#2ECC71;

    animation:onlineBlink 1.4s infinite;

}

/* ==========================================================
   WELCOME SECTION
========================================================== */

.ycsm-welcome h4{

    margin:0 0 10px;

    color:var(--ycsm-primary-dark);

    font-size:22px;

    font-weight:700;

}

.ycsm-welcome p{

    margin-bottom:18px;

    line-height:1.8;

    color:#546E7A;

}

.ycsm-trust{

    display:flex;

    flex-direction:column;

    gap:10px;

    margin-bottom:22px;

}

.ycsm-trust span{

    display:flex;

    align-items:center;

    gap:10px;

    padding:11px 14px;

    background:#FFF8F1;

    border-radius:12px;

    border:1px solid rgba(255,106,0,.12);

    color:#455A64;

    font-size:14px;

}

.ycsm-trust i{

    color:var(--ycsm-primary);

}

/* ==========================================================
   MESSAGE
========================================================== */

.ycsm-message{

    padding:14px 16px;

    margin-bottom:20px;

    border-left:4px solid var(--ycsm-primary);

    background:#FFFDF8;

    border-radius:10px;

    color:#546E7A;

    line-height:1.8;

}

/* ==========================================================
   BUTTONS
========================================================== */

.ycsm-btn{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    width:100%;

    text-decoration:none;

    padding:15px;

    border-radius:14px;

    margin-bottom:14px;

    font-size:15px;

    font-weight:600;

    transition:.30s;

}

.ycsm-btn i{

    font-size:20px;

}

.ycsm-btn.whatsapp{

    color:#fff;

    background:linear-gradient(
        135deg,
        #25D366,
        #128C7E
    );

}

.ycsm-btn.whatsapp:hover{

    transform:translateY(-3px);

    box-shadow:
        0 15px 30px rgba(37,211,102,.35);

}

.ycsm-btn.email{

    color:#fff;

    background:linear-gradient(
        135deg,
        #455A64,
        #607D8B
    );

}

.ycsm-btn.email:hover{

    transform:translateY(-3px);

    box-shadow:
        0 15px 30px rgba(96,125,139,.30);

}

/* ==========================================================
   FOOTER
========================================================== */

.ycsm-footer small{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:8px;

    color:#607D8B;

}

/* ==========================================================
   ANIMATION
========================================================== */

@keyframes onlineBlink{

    0%{

        opacity:1;

    }

    50%{

        opacity:.25;

    }

    100%{

        opacity:1;

    }

}
/* ==========================================================
   MOBILE RESPONSIVE
========================================================== */

@media (max-width:768px){

    #ycsm-widget-button{

        right:18px;
        bottom:18px;

        width:60px;
        height:60px;

        font-size:24px;

    }

    #ycsm-widget-popup{

        left:15px;
        right:15px;

        bottom:90px;

        width:auto;
        max-width:none;

        border-radius:18px;

    }

    .ycsm-header{

        padding:15px;

    }

    .ycsm-avatar{

        width:45px;
        height:45px;

        font-size:20px;

    }

    .ycsm-support-text h5{

        font-size:16px;

    }

    .ycsm-online{

        font-size:12px;

    }

    .ycsm-body{

        padding:18px;

    }

    .ycsm-welcome h4{

        font-size:20px;

    }

    .ycsm-btn{

        padding:14px;

        font-size:14px;

    }

}

@media (max-width:480px){

    #ycsm-widget-popup{

        left:10px;
        right:10px;

        bottom:82px;

    }

    .ycsm-body{

        padding:16px;

    }

}

/* ==========================================================
   SCROLLBAR
========================================================== */

#ycsm-widget-popup{

    max-height:80vh;

    overflow-y:auto;

}

#ycsm-widget-popup::-webkit-scrollbar{

    width:6px;

}

#ycsm-widget-popup::-webkit-scrollbar-thumb{

    background:#d7d7d7;

    border-radius:10px;

}

/* ==========================================================
   GLASS EFFECT
========================================================== */

#ycsm-widget-popup{

    backdrop-filter:blur(18px);

    -webkit-backdrop-filter:blur(18px);

}

/* ==========================================================
   BUTTON ACTIVE
========================================================== */

.ycsm-btn:active{

    transform:scale(.98);

}

/* ==========================================================
   CLOSE BUTTON
========================================================== */

#ycsm-widget-close:hover{

    transform:rotate(90deg);

    transition:.30s;

}

/* ==========================================================
   ACCESSIBILITY
========================================================== */

#ycsm-widget-button:focus,
#ycsm-widget-close:focus,
.ycsm-btn:focus{

    outline:2px solid #FFC107;

    outline-offset:3px;

}