/* Human Audit — Custom Styles */

/* Waveform container */
.waveform-container {
    background: #1a1a2e;
    border-radius: 8px;
    padding: 10px;
    margin-bottom: 15px;
}

/* Segment list */
.segment-item {
    border-left: 4px solid #dee2e6;
    padding: 8px 12px;
    margin-bottom: 8px;
    transition: border-color 0.2s;
}

.segment-item.active {
    border-left-color: #0d6efd;
    background: #f0f7ff;
}

.segment-item.completed {
    border-left-color: #198754;
}

.segment-item.empty-marked {
    border-left-color: #6c757d;
    opacity: 0.7;
}

/* Segment time badge */
.segment-time {
    font-size: 0.75rem;
    color: #6c757d;
    font-family: monospace;
}

/* Comparison diff colors */
.diff-correct {
    /* no special styling */
}

.diff-substitution {
    background: #fff3cd;
    border-bottom: 2px solid #ffc107;
    padding: 0 2px;
}

.diff-deletion {
    background: #f8d7da;
    border-bottom: 2px solid #dc3545;
    text-decoration: line-through;
    padding: 0 2px;
}

.diff-insertion {
    background: #d1e7dd;
    border-bottom: 2px solid #198754;
    padding: 0 2px;
}

/* Autosave indicator */
.autosave-indicator {
    position: fixed;
    bottom: 20px;
    right: 20px;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    z-index: 1000;
    transition: opacity 0.3s;
}

.autosave-indicator.saved {
    background: #d1e7dd;
    color: #0f5132;
}

.autosave-indicator.saving {
    background: #fff3cd;
    color: #664d03;
}

.autosave-indicator.error {
    background: #f8d7da;
    color: #842029;
}

/* Hotkey hints */
.hotkey-panel {
    background: #f8f9fa;
    border-radius: 6px;
    padding: 10px 15px;
    font-size: 0.8rem;
}

.hotkey-panel kbd {
    background: #212529;
    color: #fff;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 0.75rem;
}

/* Progress bar for segments */
.segment-progress {
    height: 6px;
    border-radius: 3px;
}

/* QA flag badges */
.qa-badge {
    font-size: 0.7rem;
    margin-right: 3px;
}

/* Audio quality selector */
.audio-quality-group .btn {
    min-width: 100px;
}

/* Stats cards */
.stat-card {
    border-left: 4px solid;
    padding-left: 15px;
}

.stat-card.wer { border-left-color: #0d6efd; }
.stat-card.errors { border-left-color: #dc3545; }
.stat-card.auditor { border-left-color: #198754; }
.stat-card.calls { border-left-color: #6f42c1; }

/* Channel switcher */
.channel-switcher .btn-check:checked + .btn {
    font-weight: bold;
}

/* Mark buttons in comparison */
.mark-buttons .btn {
    min-width: 140px;
}

/* Login card */
.card.shadow {
    max-width: 400px;
}

/* Responsive table */
@media (max-width: 768px) {
    .table-responsive {
        font-size: 0.85rem;
    }
}
