/* JASANZ Web Application - Custom Styles */

body {
    background-color: #f8f9fa;
}

.navbar-brand {
    font-weight: 600;
}

/* Status badges */
.badge {
    font-size: 0.85em;
}

/* Tables */
.table th {
    white-space: nowrap;
}

.table td code {
    color: #495057;
    background-color: #e9ecef;
    padding: 0.15em 0.4em;
    border-radius: 3px;
    font-size: 0.9em;
}

/* Progress bar */
.progress {
    border-radius: 8px;
}

.progress-bar {
    font-weight: 600;
    font-size: 0.9em;
}

/* Cards */
.card-header h5 {
    font-size: 1.05rem;
}

/* Monospace inputs for cookie fields */
.font-monospace {
    font-size: 0.85em;
}

/* Count mismatch: Records vs API Count differ */
.count-mismatch {
    background-color: #f8d7da;
    color: #842029;
    font-weight: 700;
}

/* Analysis - KPI Cards */
.kpi-card {
    border-left: 4px solid #0d6efd;
    transition: transform 0.15s ease;
}

.kpi-card:hover {
    transform: translateY(-2px);
}

.kpi-label {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6c757d;
    margin-bottom: 0.25rem;
}

.kpi-value {
    font-size: 1.75rem;
    font-weight: 700;
    color: #212529;
}

/* Analysis - Chart containers */
.chart-container {
    position: relative;
    height: 320px;
}

/* Analysis - Dataset tab pills */
#datasetTabs .nav-link {
    cursor: pointer;
    margin-right: 0.25rem;
}

/* Analysis - Leaderboard table */
#leaderboardTable td,
#leaderboardTable th {
    vertical-align: middle;
}

/* Responsive table scroll on small screens */
@media (max-width: 768px) {
    .table-responsive {
        overflow-x: auto;
    }

    .chart-container {
        height: 260px;
    }

    .kpi-value {
        font-size: 1.4rem;
    }
}
