    #ai-chat-widget {
        --widget-button-color: #f97316;
        --widget-form-color: #ffffff;
        --widget-text-color: #18181b;
        --widget-user-bubble: #f97316;
        --widget-bot-bubble: #f4f4f5;
        position: fixed;
        right: 20px;
        bottom: 100px;
        z-index: 99999;
        font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    }

    #ai-chat-button {
        width: 56px;
        height: 56px;
        border: none;
        border-radius: 50%;
        background: var(--widget-button-color);
        color: #fff;
        cursor: pointer;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18);
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #ai-chat-button svg {
        width: 24px;
        height: 24px;
    }

    #ai-chat-window {
        display: none;
        position: absolute;
        bottom: 72px;
        right: 0;
        width: min(320px, calc(100vw - 40px));
        background: var(--widget-form-color);
        border-radius: 16px;
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.16);
        overflow: hidden;
        color: var(--widget-text-color);
    }

    #ai-chat-widget.is-open #ai-chat-window {
        display: flex;
        flex-direction: column;
    }

    #ai-chat-header {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 14px 16px;
        border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    }

    #ai-chat-avatar {
        width: 36px;
        height: 36px;
        border-radius: 50%;
        object-fit: cover;
        flex-shrink: 0;
    }

    #ai-chat-title {
        flex: 1;
        min-width: 0;
        font-size: 15px;
        font-weight: 600;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    #ai-chat-close {
        border: none;
        background: transparent;
        color: inherit;
        font-size: 20px;
        cursor: pointer;
        line-height: 1;
    }

    #ai-chat-messages {
        min-height: 220px;
        max-height: 320px;
        overflow-y: auto;
        padding: 16px;
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .ai-chat-message {
        max-width: 85%;
        padding: 10px 12px;
        border-radius: 14px;
        font-size: 13px;
        line-height: 1.4;
        word-break: break-word;
    }

    .ai-chat-message--bot {
        align-self: flex-start;
        background: var(--widget-bot-bubble);
    }

    .ai-chat-message--user {
        align-self: flex-end;
        background: var(--widget-user-bubble);
    }

    #ai-chat-footer {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 12px 16px 16px;
        border-top: 1px solid rgba(0, 0, 0, 0.06);
    }

    #ai-chat-input {
        flex: 1;
        min-width: 0;
        border: 1px solid #e4e4e7;
        border-radius: 999px;
        background: #fafafa;
        padding: 8px 14px;
        font-size: 13px;
        color: var(--widget-text-color);
    }

    #ai-chat-send {
        width: 36px;
        height: 36px;
        border: none;
        border-radius: 50%;
        background: var(--widget-button-color);
        color: #fff;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #ai-chat-send svg {
        width: 16px;
        height: 16px;
    }

    .ai-chat-typing span {
        display: inline-block;
        width: 6px;
        height: 6px;
        margin: 0 2px;
        border-radius: 50%;
        background: currentColor;
        animation: ai-widget-typing 1.2s infinite;
    }

    .ai-chat-typing span:nth-child(2) { animation-delay: 0.15s; }
    .ai-chat-typing span:nth-child(3) { animation-delay: 0.3s; }

    @keyframes ai-widget-typing {
        0%, 80%, 100% { opacity: 0.3; transform: translateY(0); }
        40% { opacity: 1; transform: translateY(-3px); }
    }