/* TON Connect button states */
.ton-auth-link.connected {
    background-color: var(--btn-primary-bg-hover-color);
}

.ton-auth-link:disabled,
.ton-disconnect-link:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

.ton-auth-link .tm-button-label,
.ton-disconnect-link .tm-button-label {
    transition: all 0.3s ease;
}

/* Loading spinner */
.loading-spinner {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 8px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: #fff;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* Loading animation */
@keyframes connecting {
    0% { opacity: 1; }
    50% { opacity: 0.5; }
    100% { opacity: 1; }
}

.ton-auth-link:disabled .tm-button-label,
.ton-disconnect-link:disabled .tm-button-label {
    animation: connecting 1.5s infinite;
}

/* Show spinner when button is loading */
.ton-auth-link.loading .loading-spinner,
.ton-disconnect-link.loading .loading-spinner {
    display: inline-block;
}

/* Hide label when loading */
.ton-auth-link.loading .tm-button-label,
.ton-disconnect-link.loading .tm-button-label {
    display: none;
}

.ton-wallet-dropdown {
    display: none;
    position: absolute;
    z-index: 1001;
    min-width: 120px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    margin-top: 4px;
    right: 0;
}
.ton-wallet-disconnect {
    width: 100%;
    padding: 8px 16px;
    background: none;
    border: none;
    text-align: left;
    cursor: pointer;
    color: #d00;
    font-weight: 500;
    border-radius: 8px;
    transition: background 0.15s;
}
.ton-wallet-disconnect:hover {
    background: #f8d7da;
} 