/* CRM Помощница — тёмная деловая минималистичная тема (БАГ #8) */

:root {
    --bg-main: #0f0f1a;
    --bg-card: #16213e;
    --bg-nav: #0a0a14;
    --text-main: #e0e0e0;
    --text-muted: #8888aa;
    --accent: #5c6bc0;
    --border: #2a2a4a;
    --badge-bg: #1a1a2e;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    background: var(--bg-main);
    color: var(--text-main);
    font-size: 15px;
}

/* Навигация */
nav {
    background: var(--bg-nav) !important;
    border-bottom: 1px solid var(--border);
}

nav a {
    text-decoration: none;
    transition: color 0.2s;
}

nav a:hover {
    color: #fff !important;
}

/* Карточки и блоки */
details {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 8px 12px;
}

summary {
    cursor: pointer;
    color: var(--text-main);
}

/* Бейджи статусов — приглушённые */
.badge {
    display: inline-block;
    font-weight: normal;
    white-space: nowrap;
    padding: 3px 10px;
    border-radius: 4px;
    font-size: 0.8em;
    opacity: 0.85;
}

/* Поля ввода — тёмные */
input, select, textarea {
    background: var(--bg-card) !important;
    color: var(--text-main) !important;
    border: 1px solid var(--border) !important;
    border-radius: 4px !important;
}

input:focus, select:focus, textarea:focus {
    border-color: var(--accent) !important;
}

/* Кнопки — минималистичные */
button, [type="submit"] {
    background: var(--accent) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    opacity: 0.9;
    transition: opacity 0.2s;
}

button:hover, [type="submit"]:hover {
    opacity: 1;
}

/* БАГ #3: стилизация input[type=file] */
input[type="file"] {
    display: block !important;
    padding: 8px !important;
    border: 1px dashed var(--border) !important;
    border-radius: 6px !important;
    background: var(--bg-card) !important;
    color: var(--text-main) !important;
    cursor: pointer;
    width: 100%;
    margin-bottom: 8px;
}

input[type="file"]::-webkit-file-upload-button {
    background: var(--accent);
    color: #fff;
    border: none;
    border-radius: 4px;
    padding: 6px 12px;
    cursor: pointer;
    margin-right: 8px;
}

/* Чекбоксы */
input[type="checkbox"] {
    width: auto !important;
    accent-color: var(--accent);
}

/* Ссылки */
a {
    color: var(--accent);
}

a:hover {
    color: #fff;
}

/* Системные комментарии */
.comment.is-system {
    color: var(--text-muted);
    font-style: italic;
}

/* Адаптивность */
@media (max-width: 768px) {
    main.container {
        padding: 10px;
    }

    nav .container-fluid {
        flex-direction: column;
        align-items: stretch;
    }

    nav a {
        display: block;
        padding: 5px 0;
    }

    div[style*="grid-template-columns:2fr 1fr"] {
        grid-template-columns: 1fr !important;
    }

    div[style*="grid-template-columns:repeat(4, 1fr)"] {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* Плавные переходы для HTMX */
.htmx-request {
    opacity: 0.5;
    pointer-events: none;
}

/* Markdown-описание */
.markdown-body {
    line-height: 1.6;
    word-wrap: break-word;
}
.markdown-body p {
    margin: 0 0 0.8em 0;
}
.markdown-body ul, .markdown-body ol {
    margin: 0.4em 0 0.8em 1.5em;
    padding: 0;
}
.markdown-body li {
    margin-bottom: 0.3em;
}
.markdown-body strong {
    font-weight: 600;
    color: #a8b1ff;
}
.markdown-body code {
    background: #0d1117;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.9em;
    font-family: monospace;
}
.markdown-body pre {
    background: #0d1117;
    padding: 12px 16px;
    border-radius: 6px;
    overflow-x: auto;
    font-size: 0.85em;
}
.markdown-body h2 {
    margin: 1em 0 0.5em 0;
    font-size: 1.15em;
    color: #a8b1ff;
}
.markdown-body h3 {
    margin: 0.8em 0 0.4em 0;
    font-size: 1.05em;
    color: #c4c9ff;
}
.markdown-body blockquote {
    border-left: 3px solid #3a4a7a;
    padding: 6px 12px;
    margin: 0.5em 0;
    background: rgba(58,74,122,0.2);
    border-radius: 0 6px 6px 0;
}
