/* Custom CSS for Network Vulnerability Scanner */

/* General Styling */
body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

/* Custom Card Styles */
.card {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.card:hover {
    transform: translateY(-3px);
}

/* Feature Icons Animation */
.feature-icon {
    transition: transform 0.3s ease;
}

.card:hover .feature-icon {
    transform: scale(1.2);
}

/* Severity Badge Styles */
.severity-Critical, 
.severity-High, 
.severity-Medium, 
.severity-Low, 
.severity-Informational {
    padding: 0.35em 0.65em;
    font-weight: bold;
}

/* Results Page */
.result-container {
    transition: all 0.3s ease;
}

.collapsible-section {
    transition: all 0.3s ease;
}

/* Custom Accordion Styling */
.accordion-button:focus {
    box-shadow: none;
    border-color: rgba(13, 110, 253, 0.25);
}

.accordion-button:not(.collapsed)::after {
    transform: rotate(180deg);
}

/* Print Styles */
@media print {
    .navbar, 
    .footer, 
    .action-buttons,
    .accordion-button::after {
        display: none !important;
    }
    
    .accordion-collapse {
        display: block !important;
    }
    
    .card {
        break-inside: avoid;
    }
    
    .container {
        width: 100%;
        max-width: 100%;
    }
    
    body {
        color: #000;
        background: #fff;
    }
    
    .chart-container {
        height: 200px;
        page-break-inside: avoid;
    }
    
    .host-card {
        page-break-after: always;
    }
    
    .host-card:last-child {
        page-break-after: auto;
    }
}

/* Custom Form Styling */
.form-control:focus {
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

/* Loading Indicators */
.spinner-border {
    vertical-align: middle;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .report-label {
        min-width: 100px;
    }
    
    .action-buttons {
        flex-direction: column;
    }
    
    .action-buttons .btn {
        width: 100%;
        margin-bottom: 0.5rem;
    }
}

/* Fix for Flask date filter */
.jinja-date {
    white-space: nowrap;
}

/* Tooltip enhancement */
[data-bs-toggle="tooltip"] {
    cursor: help;
}

/* Custom focus styles for accessibility */
:focus-visible {
    outline: 2px solid #0d6efd;
    outline-offset: 2px;
}
