/* Custom Styles for Gated PDF Proposal Generator */

/* File Dropzones */
.file-dropzone {
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.file-dropzone:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(229, 52, 59, 0.05);
}

.file-dropzone.active-upload {
    border-color: #e5343b !important;
    background-color: rgba(254, 242, 242, 0.4) !important;
    box-shadow: 0 0 15px rgba(229, 52, 59, 0.1) !important;
}

.file-dropzone.active-upload svg {
    color: #e5343b !important;
    transform: scale(1.05);
}

/* Status Badges */
.status-badge {
    transition: all 0.2s ease;
}

.status-badge.uploaded {
    background-color: #fef2f2 !important;
    color: #8a1f23 !important;
    border-color: #e28e91 !important;
}

.status-badge.pending {
    background-color: #fffbeb !important;
    color: #b45309 !important;
    border-color: #fde68a !important;
}

/* Focus and inputs styling */
input:focus, select:focus, textarea:focus {
    box-shadow: 0 0 0 3px rgba(229, 52, 59, 0.15) !important;
    border-color: #e5343b !important;
}

/* Form layouts micro-animations */
.grid > div {
    animation: fadeInUp 0.4s ease forwards;
    opacity: 0;
    transform: translateY(10px);
}

.grid > div:nth-child(1) { animation-delay: 0.05s; }
.grid > div:nth-child(2) { animation-delay: 0.1s; }
.grid > div:nth-child(3) { animation-delay: 0.15s; }
.grid > div:nth-child(4) { animation-delay: 0.2s; }
.grid > div:nth-child(5) { animation-delay: 0.25s; }

@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Override modern browser standard scrollbars (like Firefox & Chrome 121+) */
* {
    scrollbar-width: thin !important;
    scrollbar-color: #e5343b rgb(218, 218, 218) !important;
}

/* Custom Webkit scrollbar globally and for specific containers/inputs */
::-webkit-scrollbar {
    width: 8px !important;
    height: 8px !important;
}
::-webkit-scrollbar-track {
    background: #18181b !important;
    border-radius: 9999px !important;
}
::-webkit-scrollbar-thumb {
    background: #e5343b !important;
    border-radius: 9999px !important;
    border: none !important;
    background-clip: border-box !important;
}
::-webkit-scrollbar-thumb:hover {
    background: #ff4d55 !important;
}

/* Specific elements like selects, textareas and image gallery div scrollbars */
select::-webkit-scrollbar,
textarea::-webkit-scrollbar,
div::-webkit-scrollbar {
    width: 6px !important;
    height: 6px !important;
}
select::-webkit-scrollbar-track,
textarea::-webkit-scrollbar-track,
div::-webkit-scrollbar-track {
    background: transparent !important;
    border-radius: 9999px !important;
}
select::-webkit-scrollbar-thumb,
textarea::-webkit-scrollbar-thumb,
div::-webkit-scrollbar-thumb {
    background: #e5343b !important;
    border-radius: 9999px !important;
    border: none !important;
    background-clip: border-box !important;
}
select::-webkit-scrollbar-thumb:hover,
textarea::-webkit-scrollbar-thumb:hover,
div::-webkit-scrollbar-thumb:hover {
    background: #ff4d55 !important;
}

/* Custom styling for compile button to bypass Tailwind build purging */
#btnGenerate {
    background-color: #e5343b !important;
    color: #ffffff !important;
    transition: all 0.3s ease !important;
}

#btnGenerate:hover:not(:disabled) {
    background-color: #c91818 !important;
}

#btnGenerate:disabled {
    background-color: #e5e5e5 !important;
    color: #999999 !important;
    cursor: not-allowed !important;
    box-shadow: none !important;
    transform: none !important;
}
