/* Custom Styles beyond Tailwind utilities */

/* Hide scrollbar for tab navigation */
.scrollbar-hide::-webkit-scrollbar {
    display: none;
}
.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Base animations */
.fade-in {
    animation: fadeIn 0.4s ease-out forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Form focus states refinement */
.form-input:focus {
    outline: none;
}

/* CV Print Styles */
@media print {
    body * {
        visibility: hidden;
    }
    #cvPanel, #cvPanel * {
        visibility: visible;
    }
    #cvPanel {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        margin: 0;
        padding: 0;
        box-shadow: none !important;
        background: white !important;
    }
    
    .cv-wrapper {
        background: white !important;
        padding: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }
    
    #cvDocument {
        width: 100% !important;
        max-width: 100% !important;
        box-shadow: none !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    /* Hide buttons inside CV panel during print */
    #cvPanel button, #cvPanel .bg-gray-50\/50 {
        display: none !important;
    }
}

/* Custom Drag/Drop active state */
.drag-active {
    border-color: #6875f5 !important; /* brand-500 */
    background-color: #f0f5ff !important; /* brand-50 */
}

/* Ensure parsed prose text looks good */
.prose p {
    margin-bottom: 1em;
    line-height: 1.6;
}
.prose h3 {
    margin-top: 1.5em;
    margin-bottom: 0.5em;
    font-weight: 600;
    font-family: 'Outfit', sans-serif;
}
.prose ul {
    list-style-type: disc;
    padding-left: 1.5em;
    margin-bottom: 1em;
}
.prose li {
    margin-bottom: 0.25em;
}
