/**
 * Theme Coverage - Стили для всех элементов
 * Phase 15: CSS Themes Fix
 * Обеспечивает покрытие всех элементов стилями для всех тем
 */

/* ========== Scrollable Containers ========== */
/* Все scrollable контейнеры уже покрыты в scrollbars.css */

/* ========== Modal Windows ========== */
.modal-overlay {
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
}

[data-theme="high-contrast"] .modal-overlay {
    background: rgba(0, 0, 0, 0.8); /* Более контрастный */
}

.modal-content {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--border-radius, 8px);
    box-shadow: var(--shadow-lg);
}

[data-theme="high-contrast"] .modal-content {
    border: 2px solid var(--border); /* Толще граница */
}

/* ========== Dropdown Menus ========== */
.dropdown-menu {
    background: var(--surface);
    border: 1px solid var(--border);
    box-shadow: var(--shadow-md);
}

[data-theme="high-contrast"] .dropdown-menu {
    border: 2px solid var(--border);
}

.dropdown-item {
    color: var(--text-primary);
    transition: background 0.2s ease;
}

.dropdown-item:hover {
    background: var(--surface-hover);
    color: var(--text-primary);
}

[data-theme="high-contrast"] .dropdown-item:hover {
    background: var(--accent);
    color: var(--text-inverse);
}

/* ========== Tooltips ========== */
.tooltip {
    background: var(--text-primary);
    color: var(--text-inverse);
    border: 1px solid var(--border);
}

[data-theme="high-contrast"] .tooltip {
    border: 2px solid var(--border);
    background: var(--surface);
    color: var(--text-primary);
}

/* ========== Notifications ========== */
.notification {
    background: var(--surface);
    border-left: 4px solid var(--primary);
    box-shadow: var(--shadow-md);
}

.notification-success {
    border-left-color: var(--success);
}

.notification-error {
    border-left-color: var(--error);
}

.notification-warning {
    border-left-color: var(--warning);
}

.notification-info {
    border-left-color: var(--info);
}

[data-theme="high-contrast"] .notification {
    border-left-width: 6px; /* Толще */
    border: 2px solid var(--border);
}

/* ========== Forms ========== */
.input,
.select,
.textarea {
    background: var(--input-bg);
    border: 1px solid var(--input-border);
    color: var(--text-primary);
}

.input:focus,
.select:focus,
.textarea:focus {
    border-color: var(--input-focus);
    box-shadow: 0 0 0 3px var(--input-focus-shadow);
    outline: none;
}

[data-theme="high-contrast"] .input,
[data-theme="high-contrast"] .select,
[data-theme="high-contrast"] .textarea {
    border-width: 2px; /* Толще граница */
}

[data-theme="high-contrast"] .input:focus,
[data-theme="high-contrast"] .select:focus,
[data-theme="high-contrast"] .textarea:focus {
    border-width: 3px; /* Еще толще при фокусе */
    box-shadow: 0 0 0 4px var(--input-focus-shadow);
}

/* ========== Buttons ========== */
.btn {
    border: 1px solid transparent;
    transition: all 0.2s ease;
}

.btn-primary {
    background: var(--primary);
    color: var(--text-inverse);
    border-color: var(--primary);
}

.btn-primary:hover {
    background: var(--primary-dark);
    border-color: var(--primary-dark);
}

[data-theme="high-contrast"] .btn {
    border-width: 2px; /* Толще граница */
}

[data-theme="high-contrast"] .btn-primary {
    border-color: var(--primary);
}

[data-theme="high-contrast"] .btn-primary:hover {
    background: var(--accent);
    border-color: var(--accent);
}

/* ========== Cards ========== */
.card {
    background: var(--card-background);
    border: 1px solid var(--border);
    box-shadow: var(--shadow-sm);
}

[data-theme="high-contrast"] .card {
    border-width: 2px; /* Толще граница */
    box-shadow: var(--shadow);
}

/* ========== Tables ========== */
.table {
    border-collapse: collapse;
}

.table th,
.table td {
    border: 1px solid var(--border);
    padding: var(--spacing-sm);
}

.table th {
    background: var(--surface-hover);
    color: var(--text-primary);
}

[data-theme="high-contrast"] .table th,
[data-theme="high-contrast"] .table td {
    border-width: 2px; /* Толще граница */
}

/* ========== Lists ========== */
.list-item {
    border-bottom: 1px solid var(--border);
    padding: var(--spacing-sm);
}

.list-item:hover {
    background: var(--surface-hover);
}

[data-theme="high-contrast"] .list-item {
    border-bottom-width: 2px; /* Толще граница */
}

[data-theme="high-contrast"] .list-item:hover {
    background: var(--accent-alpha);
    border-bottom-color: var(--accent);
}

/* ========== Navigation ========== */
.nav-item {
    color: var(--text-secondary);
    transition: all 0.2s ease;
}

.nav-item:hover {
    background: var(--surface-hover);
    color: var(--text-primary);
}

.nav-item.active {
    background: var(--surface-active);
    color: var(--primary);
    border-left: 3px solid var(--primary);
}

[data-theme="high-contrast"] .nav-item.active {
    border-left-width: 4px; /* Толще */
    background: var(--accent-alpha);
    color: var(--accent);
}

/* ========== Code Blocks ========== */
code,
pre {
    background: var(--code-bg);
    color: var(--code-text);
    border: 1px solid var(--code-border);
}

[data-theme="high-contrast"] code,
[data-theme="high-contrast"] pre {
    border-width: 2px; /* Толще граница */
}

/* ========== Markdown Content ========== */
.markdown-content h1,
.markdown-content h2,
.markdown-content h3 {
    color: var(--text-primary);
    border-bottom: 2px solid var(--border);
}

[data-theme="high-contrast"] .markdown-content h1,
[data-theme="high-contrast"] .markdown-content h2,
[data-theme="high-contrast"] .markdown-content h3 {
    border-bottom-width: 3px; /* Толще */
    border-bottom-color: var(--accent);
}

.markdown-content a {
    color: var(--primary);
    border-bottom: 1px solid var(--primary);
}

[data-theme="high-contrast"] .markdown-content a {
    border-bottom-width: 2px; /* Толще */
    color: var(--accent);
    border-bottom-color: var(--accent);
}

/* ========== Badges ========== */
.badge {
    border: 1px solid transparent;
}

[data-theme="high-contrast"] .badge {
    border-width: 2px; /* Толще граница */
    border-color: var(--border);
}

/* ========== Progress Bars ========== */
.progress-bar {
    background: var(--surface-hover);
    border: 1px solid var(--border);
}

.progress-bar-fill {
    background: var(--primary);
}

[data-theme="high-contrast"] .progress-bar {
    border-width: 2px; /* Толще граница */
}

[data-theme="high-contrast"] .progress-bar-fill {
    border: 2px solid var(--primary);
}

