.ai-button-flow {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 0.5em 1em;
    gap: 0.7em;
    font-weight: 800;
    letter-spacing: 0.02em;
    text-align: center;
    color: rgb(34, 8, 74);
    background: linear-gradient(135deg, #baf9ff 0%, #bfb5ff 15%, #ff96b4 30%, #ffd497 45%, transparent 60%);
    background-size: 300% 100%;
    background-position: right;
    border: 2px solid rgb(134, 78, 218);
    border-radius: 0.6em;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(134, 78, 218, 0.2), inset 0 0 0 rgba(255, 255, 255, 0);
    transition:
        background-position 0.6s cubic-bezier(0.25, 1, 0.75, 1),
        border-color 0.4s ease,
        box-shadow 0.4s ease,
        transform 0.2s ease;
}

.ai-button-flow:hover {
    text-decoration: none;
    background-position: left;
    border-color: #bfb5ff;
    box-shadow: 0 6px 16px rgba(134, 78, 218, 0.35), inset 0 0 8px rgba(255, 255, 255, 0.3);
    transform: translateY(-2px);
}

.ai-button-flow::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent 30%, rgba(255, 255, 255, 0.6) 50%, transparent 70%);
    background-size: 200% 100%;
    filter: blur(4px);
    z-index: 2;
    pointer-events: none;
    transition: opacity 0.3s ease;
    opacity: 0;
}

.ai-button-flow:hover::after {
    animation: shine 1.2s ease forwards;
    opacity: 1;
}

.ai-button-flow .label {
    text-shadow: 0 0 4px rgba(255, 255, 255, 0.8);
    transition: text-shadow 0.3s ease;
}

.ai-button-flow:hover .label {
    text-shadow: 0 0 8px rgba(255, 255, 255, 0.9);
}

.ai-button-flow svg {
    width: 2em;
    height: 2em;
    fill: currentColor;
    color: inherit;
    filter: drop-shadow(0 0 3px rgba(255, 255, 255, 0.7));
    transition: filter 0.3s ease;
}

.ai-button-flow:hover svg {
    filter: drop-shadow(0 0 6px rgba(255, 255, 255, 1));
}

@keyframes shine {
    from {
        background-position: 150% 0%;
    }

    to {
        background-position: -250% 0%;
    }
}