/* Единая тёмная тема для внутренних страниц сайта. */
html.dark {
    color-scheme: dark;
    --bg: #121212;
    --surface: #1e1e1e;
    --surface-alt: #242424;
    --text: #e0e0e0;
    --text-muted: #b8c2cc;
    --text-strong: #f0f0f0;
    --muted: #b8c2cc;
    --strong: #f0f0f0;
    --border: #333333;
    --border-strong: #4a5560;
    --primary: #5dade2;
    --primary-hover: #85c1e9;
    --primary-dark: #85c1e9;
    --accent: #ff7b72;
    --accent-hover: #ff9a92;
    --danger: #ff7b72;
    --ok: #58d68d;
    --warn: #f5b041;
    --sidebar: #121a21;
    --sidebar-text: #c9d6df;
    --shadow: rgba(0, 0, 0, .4);
    --shadow-strong: rgba(0, 0, 0, .6);
    --download-bg: #1a232c;
    --download-text: #ffffff;
    --download-muted: #c9d2da;
}

html.dark body {
    background: var(--bg);
    color: var(--text);
}

html.dark h1,
html.dark h2,
html.dark h3,
html.dark h4,
html.dark .topbar h1,
html.dark .login-card h1,
html.dark .login-card .brand,
html.dark .card b,
html.dark .panel h2,
html.dark .modal-head h3 {
    color: var(--text-strong);
}

html.dark p,
html.dark li,
html.dark td,
html.dark .review .text,
html.dark .muted,
html.dark .lead {
    color: var(--text);
}

html.dark .muted,
html.dark .date,
html.dark .review .extra,
html.dark .topbar .who,
html.dark .card small,
html.dark .empty,
html.dark .num,
html.dark .row .k,
html.dark .updated {
    color: var(--text-muted);
}

html.dark .device,
html.dark .row .v {
    color: var(--text-strong);
}

html.dark .info {
    border-color: var(--border);
}

html.dark .card.good b { color: #58d68d; }
html.dark .card.bad b { color: #ff7b72; }

html.dark a { color: var(--primary); }

html.dark .card,
html.dark .panel,
html.dark .modal,
html.dark .login-card,
html.dark .container,
html.dark .modal-convert-box,
html.dark .review,
html.dark .features-box,
html.dark .main-plan,
html.dark .problem-card,
html.dark .trust-item,
html.dark .step,
html.dark .faq-item,
html.dark .review-card,
html.dark .period-card {
    background: var(--surface);
    border-color: var(--border);
}

html.dark .meta div,
html.dark .hash,
html.dark .box,
html.dark .msg-box,
html.dark .bulk-bar,
html.dark .p-features {
    background: #242424;
    border-color: #3a3a3a;
    color: var(--text-muted);
}

html.dark .note {
    background: #3a2f14;
    border-color: #5a4720;
    color: #f5d78e;
}

html.dark .honest {
    background: #1e3a2a;
    border-color: #2e5a40;
    color: #a9dfbf;
}

html.dark input,
html.dark select,
html.dark textarea {
    background: #242424;
    color: var(--text);
    border-color: #3a3a3a;
}

html.dark input::placeholder,
html.dark textarea::placeholder {
    color: #8d99a5;
}

html.dark .btn.sec,
html.dark .quick button {
    background: #2a2a2a;
    color: var(--text-strong);
    border-color: #3a3a3a;
}

html.dark a.btn-download {
    background: #c0392b;
    color: #ffffff;
    border-color: #c0392b;
}

html.dark a.btn-download:hover {
    background: #a93226;
    color: #ffffff;
}

html.dark .btn.sec:hover,
html.dark .quick button:hover {
    background: #343434;
}

html.dark .modal-overlay,
html.dark .overlay {
    background: rgba(0, 0, 0, .7);
}

html.dark th {
    background: #242424;
    color: var(--text-strong);
}

html.dark tr:hover td {
    background: #242424;
}

html.dark .pill.green {
    background: #1e4d2b;
    color: #a9dfbf;
}

html.dark .pill.red {
    background: #4a1f1a;
    color: #ffb3ad;
}

html.dark .pill.blue {
    background: #1b3a4b;
    color: #aed6f1;
}

html.dark .pill.orange {
    background: #4a3512;
    color: #f8c471;
}

html.dark .pill.gray {
    background: #2a2a2a;
    color: #b8c2cc;
}

html.dark .login-screen {
    background: linear-gradient(135deg, #101820, #1c2b36);
}

html.dark .login-msg {
    background: #4a1f1a;
    color: #ffb3ad;
}

html.dark .msg-box.admin {
    background: #1b3a4b;
    border-color: #2a5a70;
}

html.dark .msg.err {
    background: #4a1f1a;
    border-color: #6a2c26;
    color: #ffb3ad;
}

html.dark .msg.ok {
    background: #1e3a2a;
    border-color: #2e5a40;
    color: #a9dfbf;
}

html.dark .toast {
    background: #f0f0f0;
    color: #141414;
}

html.dark .sidebar {
    background: var(--sidebar);
}

.site-theme-toggle {
    position: fixed;
    left: 18px;
    bottom: 18px;
    z-index: 9999;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid var(--border, #d0d7de);
    background: var(--surface, #fff);
    color: var(--text, #222);
    font-size: 19px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 6px 20px rgba(0, 0, 0, .18);
    transition: transform .15s ease, background .15s ease;
}

.site-theme-toggle:hover {
    transform: translateY(-1px);
}

html.dark .site-theme-toggle {
    background: #242424;
    color: #f0f0f0;
    border-color: #3a3a3a;
}

@media print {
    .site-theme-toggle { display: none; }
}

/* Уведомление о технических cookies. */
.cookie-notice {
    position: fixed;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 250;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    background: var(--surface, #fff);
    color: var(--text, #2f3b45);
    border: 1px solid var(--border, #dfe5ea);
    border-radius: 12px;
    box-shadow: 0 12px 34px rgba(0, 0, 0, .18);
    font-size: .9em;
    line-height: 1.5;
}

.cookie-notice-text { flex: 1; }
.cookie-notice a { color: var(--primary, #2471a3); }

.cookie-notice-btn {
    flex: 0 0 auto;
    border: 0;
    border-radius: 8px;
    padding: 9px 16px;
    background: var(--primary, #2471a3);
    color: #fff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.cookie-notice-btn:hover { filter: brightness(.94); }

html.dark .cookie-notice {
    background: #1e1e1e;
    color: #e0e0e0;
    border-color: #3a3a3a;
}

@media (min-width: 760px) {
    .cookie-notice {
        left: auto;
        right: 24px;
        max-width: 520px;
    }
}

@media print {
    .cookie-notice { display: none; }
}
