/* Upload Loading Spinner and Tick Styles */
.upload-status-container {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-left: 10px;
    vertical-align: middle;
}

.spinner-circle {
    width: 18px;
    height: 18px;
    border: 2px solid rgba(0, 0, 0, 0.1);
    border-top: 2px solid #ec167f; /* Theme pink */
    border-radius: 50%;
    animation: upload-spin 0.7s linear infinite;
    display: none;
}

.tick-icon {
    color: #28a745 !important; /* Green tick */
    font-size: 20px;
    display: none;
    animation: tick-appear 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@keyframes upload-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes tick-appear {
    0% { transform: scale(0); opacity: 0; }
    100% { transform: scale(1); opacity: 1; }
}

/* Ensure inputs and status are inline */
#horoInput, #photoInput {
    display: inline-block !important;
    width: auto !important;
    max-width: 100%;
}
