/**
 * Тема «Готическая»: шрифты, типографика и акценты поверх переменных в style.css.
 */

[data-theme="gothic"] {
    --font-body: 'Crimson Pro', Georgia, 'Times New Roman', serif;
    --font-heading: 'Cinzel', 'Crimson Pro', Georgia, serif;
    --font-brand: 'UnifrakturMaguntia', 'Cinzel', serif;
}

[data-theme="gothic"] body {
    font-family: var(--font-body);
    font-size: 15px;
    letter-spacing: 0.01em;
    background-image:
        radial-gradient(ellipse 120% 80% at 50% -20%, rgba(159, 18, 57, 0.14) 0%, transparent 55%),
        radial-gradient(ellipse 80% 50% at 100% 100%, rgba(68, 36, 52, 0.35) 0%, transparent 50%);
    background-attachment: fixed;
}

[data-theme="gothic"] h1,
[data-theme="gothic"] h2,
[data-theme="gothic"] h3,
[data-theme="gothic"] h4,
[data-theme="gothic"] .toolbar h2,
[data-theme="gothic"] .card h2,
[data-theme="gothic"] .modal-header h3,
[data-theme="gothic"] .sidebar-section-label {
    font-family: var(--font-heading);
    font-weight: 600;
    letter-spacing: 0.06em;
}

[data-theme="gothic"] body > header h1,
[data-theme="gothic"] #app-brand-title {
    font-family: var(--font-brand);
    font-weight: 400;
    font-size: 1.75rem;
    letter-spacing: 0.03em;
    line-height: 1.2;
}

[data-theme="gothic"] body > header .subtitle {
    font-family: var(--font-body);
    font-style: italic;
    letter-spacing: 0.02em;
}

[data-theme="gothic"] .tab,
[data-theme="gothic"] .btn,
[data-theme="gothic"] .form-control,
[data-theme="gothic"] label,
[data-theme="gothic"] .nav-label {
    font-family: var(--font-body);
}

[data-theme="gothic"] .tab.active .nav-label {
    font-weight: 600;
    letter-spacing: 0.03em;
}

[data-theme="gothic"] body > header {
    border-bottom-color: color-mix(in srgb, var(--primary) 45%, #2a1520);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.45);
}

[data-theme="gothic"] .tabs {
    border-color: color-mix(in srgb, var(--primary) 22%, var(--border));
    box-shadow:
        0 10px 28px -12px rgba(0, 0, 0, 0.65),
        inset 0 1px 0 rgba(201, 162, 39, 0.08);
}

[data-theme="gothic"] .sidebar-nav-section + .sidebar-nav-section {
    border-top-color: color-mix(in srgb, var(--primary) 28%, var(--border));
}

[data-theme="gothic"] .card {
    border-color: color-mix(in srgb, var(--primary) 18%, var(--border));
    box-shadow:
        var(--shadow-sm),
        inset 0 1px 0 rgba(201, 162, 39, 0.06);
}

[data-theme="gothic"] .tab:hover {
    border-color: color-mix(in srgb, var(--primary) 35%, var(--border));
}

[data-theme="gothic"] .tab.active {
    background: linear-gradient(135deg, #7f1d1d 0%, #9f1239 48%, #4c1d24 100%);
    box-shadow: 0 6px 18px -6px rgba(127, 29, 29, 0.75);
}

[data-theme="gothic"] .btn-primary {
    background: linear-gradient(180deg, var(--primary-light) 0%, var(--primary-dark) 100%);
    border-color: var(--primary-dark);
    font-weight: 600;
    letter-spacing: 0.04em;
}

[data-theme="gothic"] .btn-primary:hover {
    filter: brightness(1.08);
}

[data-theme="gothic"] code,
[data-theme="gothic"] pre,
[data-theme="gothic"] .monitoring-token-box {
    font-family: 'Crimson Pro', Georgia, serif;
}

[data-theme="gothic"] .task-module-item,
[data-theme="gothic"] .group-item {
    background: linear-gradient(135deg, var(--surface) 0%, var(--bg-secondary) 100%);
}

[data-theme="gothic"] [style*="background:#fff"],
[data-theme="gothic"] [style*="background: #fff"],
[data-theme="gothic"] [style*="background:#ffffff"],
[data-theme="gothic"] [style*="background: #ffffff"],
[data-theme="gothic"] [style*="background:white"],
[data-theme="gothic"] [style*="background: white"],
[data-theme="gothic"] [style*="background-color:#fff"],
[data-theme="gothic"] [style*="background-color: #fff"],
[data-theme="gothic"] [style*="background-color:#ffffff"],
[data-theme="gothic"] [style*="background-color: #ffffff"],
[data-theme="gothic"] [style*="background-color:white"],
[data-theme="gothic"] [style*="background-color: white"] {
    background: var(--surface) !important;
    color: var(--gray-800) !important;
}
