
.eyk-chatbot,
.eyk-chatbot * {
    box-sizing: border-box;
}

.eyk-chatbot {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 99999;
    font-family: "Poppins", Arial, sans-serif;
}

.eyk-chatbot-toggle {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 0;
    border-radius: 999px;
    padding: 14px 18px;
    background: linear-gradient(135deg, #d90429, #8f0018);
    color: #fff;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 14px 35px rgba(217, 4, 41, .35);
    transition: transform .2s ease, box-shadow .2s ease;
}

.eyk-chatbot-toggle:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 40px rgba(217, 4, 41, .45);
}

.eyk-chatbot-toggle-icon {
    font-size: 22px;
    line-height: 1;
}

.eyk-chatbot-panel {
    position: absolute;
    right: 0;
    bottom: 68px;
    width: min(390px, calc(100vw - 28px));
    height: min(620px, calc(100vh - 110px));
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 22px;
    background: #111317;
    color: #fff;
    box-shadow: 0 28px 80px rgba(0,0,0,.48);
    opacity: 0;
    transform: translateY(18px) scale(.97);
    pointer-events: none;
    transition: opacity .22s ease, transform .22s ease;
}

.eyk-chatbot-panel.is-open {
    opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;
}

.eyk-chatbot-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 17px 18px;
    background: linear-gradient(135deg, #d90429, #790014);
}

.eyk-chatbot-brand {
    display: flex;
    align-items: center;
    gap: 11px;
}

.eyk-chatbot-avatar {
    width: 43px;
    height: 43px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(255,255,255,.16);
    font-size: 22px;
}

.eyk-chatbot-brand strong,
.eyk-chatbot-brand small {
    display: block;
}

.eyk-chatbot-brand strong {
    font-size: 15px;
}

.eyk-chatbot-brand small {
    margin-top: 3px;
    font-size: 12px;
    color: rgba(255,255,255,.82);
}

.eyk-chatbot-online-dot {
    display: inline-block;
    width: 7px;
    height: 7px;
    margin-right: 4px;
    border-radius: 50%;
    background: #59e391;
}

.eyk-chatbot-close {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.12);
    color: #fff;
    cursor: pointer;
    font-size: 15px;
}

.eyk-chatbot-quick {
    display: flex;
    gap: 7px;
    overflow-x: auto;
    padding: 11px 12px;
    background: #171a1f;
    border-bottom: 1px solid rgba(255,255,255,.07);
    scrollbar-width: none;
}

.eyk-chatbot-quick::-webkit-scrollbar {
    display: none;
}

.eyk-chatbot-quick button {
    flex: 0 0 auto;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 999px;
    padding: 8px 11px;
    background: #23272e;
    color: #fff;
    font-size: 12px;
    cursor: pointer;
}

.eyk-chatbot-messages {
    flex: 1;
    overflow-y: auto;
    padding: 17px 14px;
    background:
        radial-gradient(circle at 15% 10%, rgba(217,4,41,.08), transparent 32%),
        #111317;
}

.eyk-message {
    display: flex;
    gap: 8px;
    margin-bottom: 13px;
    align-items: flex-end;
}

.eyk-message-user {
    justify-content: flex-end;
}

.eyk-message-avatar {
    flex: 0 0 auto;
    width: 29px;
    height: 29px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #252a31;
    font-size: 14px;
}

.eyk-message-bubble {
    max-width: 82%;
    padding: 11px 13px;
    border-radius: 15px;
    font-size: 13.5px;
    line-height: 1.55;
    white-space: pre-line;
}

.eyk-message-bot .eyk-message-bubble {
    background: #22262d;
    border-bottom-left-radius: 5px;
    color: #f4f4f4;
}

.eyk-message-user .eyk-message-bubble {
    background: linear-gradient(135deg, #d90429, #a0001c);
    border-bottom-right-radius: 5px;
    color: #fff;
}

.eyk-typing {
    display: inline-flex;
    gap: 4px;
    align-items: center;
    min-width: 52px;
}

.eyk-typing span {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #b9bec7;
    animation: eykTyping 1.1s infinite ease-in-out;
}

.eyk-typing span:nth-child(2) { animation-delay: .15s; }
.eyk-typing span:nth-child(3) { animation-delay: .30s; }

@keyframes eykTyping {
    0%, 80%, 100% { transform: translateY(0); opacity: .4; }
    40% { transform: translateY(-5px); opacity: 1; }
}

.eyk-chatbot-form {
    display: flex;
    gap: 9px;
    padding: 12px;
    background: #171a1f;
    border-top: 1px solid rgba(255,255,255,.07);
}

.eyk-chatbot-form input {
    flex: 1;
    min-width: 0;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 13px;
    padding: 12px 13px;
    background: #252a31;
    color: #fff;
    outline: none;
}

.eyk-chatbot-form input:focus {
    border-color: #d90429;
    box-shadow: 0 0 0 3px rgba(217,4,41,.14);
}

.eyk-chatbot-form button {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 13px;
    background: #d90429;
    color: #fff;
    font-size: 19px;
    cursor: pointer;
}

.eyk-chatbot-footer {
    padding: 7px 10px 10px;
    text-align: center;
    background: #171a1f;
    color: #777e88;
    font-size: 10px;
}

@media (max-width: 600px) {
    .eyk-chatbot {
        right: 12px;
        bottom: 12px;
    }

    .eyk-chatbot-toggle-text {
        display: none;
    }

    .eyk-chatbot-toggle {
        width: 56px;
        height: 56px;
        justify-content: center;
        padding: 0;
    }

    .eyk-chatbot-panel {
        position: fixed;
        left: 10px;
        right: 10px;
        bottom: 78px;
        width: auto;
        height: min(640px, calc(100vh - 96px));
    }
}
