/**
 * Tournament Auto-Fill Feature Styles
 *
 * @version 1.0.0
 * @author Development Team
 */

/*
 * Auto-filled field highlight
 * Applied to fields that were auto-populated
 * Will be implemented in Phase 4
 */
.autofilled {
    background-color: #e3f2fd !important;
    border: 2px solid #2196f3 !important;
    transition: all 0.3s ease;
}

/*
 * Notification container
 * For success/error messages
 * Will be implemented in Phase 4
 */
.autofill-notification {
    position: fixed;
    top: 20px;
    right: 20px;
    background: #4caf50;
    color: white;
    padding: 15px 20px;
    border-radius: 4px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    z-index: 10000;
    animation: slideIn 0.3s ease;
    max-width: 400px;
}

.autofill-notification.error {
    background: #f44336;
}

.autofill-notification.warning {
    background: #ff9800;
}

.autofill-notification .close-btn {
    position: absolute;
    top: 5px;
    right: 10px;
    background: transparent;
    border: none;
    color: white;
    font-size: 20px;
    cursor: pointer;
    padding: 0;
    width: 20px;
    height: 20px;
    line-height: 20px;
}

/*
 * Slide-in animation for notifications
 */
@keyframes slideIn {
    from {
        transform: translateX(400px);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

/*
 * Slide-out animation for notifications
 */
@keyframes slideOut {
    from {
        transform: translateX(0);
        opacity: 1;
    }
    to {
        transform: translateX(400px);
        opacity: 0;
    }
}

.autofill-notification.hiding {
    animation: slideOut 0.3s ease;
}

/*
 * Loading state for price calculation
 * Reuse existing loading class if available
 */
.autofill-loading {
    opacity: 0.6;
    pointer-events: none;
}

/*
 * Mobile responsive styles
 */
@media (max-width: 768px) {
    .autofill-notification {
        top: 10px;
        right: 10px;
        left: 10px;
        max-width: none;
    }
}

/*
 * Phase 4: File Upload Section - New Design
 */
.tournament-file-upload-row {
    margin-bottom: 20px;
    align-items: center;
}

.tournament-upload-button {
    width: 100%;
    padding: 15px 20px;
    background: #8b5ba8;
    color: white;
    border: none;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.2s ease;
    text-transform: uppercase;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.tournament-upload-button:hover {
    background: #7a4d96;
    box-shadow: 0 4px 8px rgba(0,0,0,0.3);
    transform: translateY(-1px);
}

.tournament-upload-button:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.tournament-upload-description {
    display: flex;
    align-items: center;
}

.tournament-upload-description p {
    margin: 0;
    font-size: 13px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.9);
}

.autofill-status {
    margin-top: 15px;
    padding: 12px 16px;
    border-radius: 4px;
    font-size: 14px;
    line-height: 1.5;
    display: none;
    animation: fadeIn 0.3s ease;
}

.autofill-status.status-loading {
    background: #fff3e0;
    border: 1px solid #ff9800;
    color: #e65100;
    display: block;
}

.autofill-status.status-success {
    background: #e8f5e9;
    border: 1px solid #4caf50;
    color: #2e7d32;
    display: block;
}

.autofill-status.status-error {
    background: #ffebee;
    border: 1px solid #f44336;
    color: #c62828;
    display: block;
}

.autofill-status .status-icon {
    margin-right: 8px;
    font-size: 16px;
}

.autofill-status .status-message {
    font-size: 14px;
}

/*
 * Phase 4: Fade-in animation
 */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/*
 * Phase 4: Mobile responsive styles for file upload
 */
@media (max-width: 768px) {
    .tournament-file-upload-row {
        margin-bottom: 15px;
    }

    .tournament-upload-button {
        margin-bottom: 15px;
        padding: 16px 20px;
        font-size: 13px;
    }

    .tournament-upload-description p {
        font-size: 12px;
        text-align: left;
    }

    .autofill-status {
        font-size: 13px;
    }
}
