.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}
/* Org switcher dropdown caret – make it darker and more visible */
.org-switcher-toggle.dropdown-toggle::after {
    border-top-color: #111827; /* dark slate / near-black */
    opacity: 0.9;
}

/* BEGIN: TractionAI */

.tt-ai-thinking {
    font-size: 0.8rem;
    color: var(--bs-success, #00ac69); /* or your brand green */
}

.tt-ai-dots {
    display: inline-flex;
    gap: 0.25rem;
}

    .tt-ai-dots span {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: var(--bs-success, #00ac69);
        opacity: 0.4;
        transform: scale(0.8);
        animation: tt-ai-dot-bounce 1.3s infinite ease-in-out;
    }

        /* Stagger the dots */
        .tt-ai-dots span:nth-child(1) {
            animation-delay: 0s;
        }

        .tt-ai-dots span:nth-child(2) {
            animation-delay: 0.15s;
        }

        .tt-ai-dots span:nth-child(3) {
            animation-delay: 0.3s;
        }

@keyframes tt-ai-dot-bounce {
    0%, 100% {
        transform: translateY(0) scale(0.8);
        opacity: 0.4;
    }

    40% {
        transform: translateY(-2px) scale(1);
        opacity: 1;
    }

    60% {
        transform: translateY(-1px) scale(0.9);
        opacity: 0.8;
    }
}


/* END: TractionAI */