/* ProBuh CRM v2.0 — дизайн-система (§10), шар поверх Bootstrap 5.
   Стиль: Linear / Notion / Stripe — чисто, спокійно, багато повітря. */

:root {
    /* Нейтральні */
    --bg-body:       #F8FAFC;
    --bg-card:       #FFFFFF;
    --bg-subtle:     #F1F5F9;
    --border:        #E5E7EB;

    /* Текст */
    --text-primary:   #0F172A;
    --text-secondary: #475569;
    --text-muted:     #94A3B8;

    /* Бренд (probuh.com.ua) */
    --brand-primary:  #1E3A8A;
    --brand-hover:    #1B3478;
    --brand-accent:   #10B981;
    --brand-gold:     #C9A961;

    /* Перевизначення Bootstrap */
    --bs-body-bg:        var(--bg-body);
    --bs-body-color:     var(--text-primary);
    --bs-border-color:   var(--border);
    --bs-border-radius:  .5rem;
    --bs-link-color:     var(--brand-primary);
    --bs-link-hover-color: var(--brand-hover);
    --bs-font-sans-serif: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

body {
    background: var(--bg-body);
    color: var(--text-primary);
    font-family: var(--bs-font-sans-serif);
    font-size: 14px;
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 { color: var(--text-primary); font-weight: 600; letter-spacing: -.01em; }

/* ── Топбар ─────────────────────────────────────────────────────────── */
.app-navbar {
    background: var(--brand-primary) !important;
    box-shadow: 0 1px 0 rgba(0,0,0,.06);
}
.app-navbar .navbar-brand { font-weight: 700; letter-spacing: -.02em; }
.app-navbar .nav-link { color: rgba(255,255,255,.78) !important; font-weight: 500; border-radius: .375rem; padding: .35rem .7rem; }
.app-navbar .nav-link:hover { color: #fff !important; background: rgba(255,255,255,.1); }

/* ── Картки ─────────────────────────────────────────────────────────── */
.card {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: .625rem;
    box-shadow: 0 1px 2px rgba(15,23,42,.04);
}
.card-header { background: var(--bg-card); border-bottom: 1px solid var(--border); font-weight: 600; }
.shadow-sm { box-shadow: 0 1px 3px rgba(15,23,42,.07) !important; }

/* ── Кнопки ─────────────────────────────────────────────────────────── */
.btn { font-weight: 500; }
.btn-primary {
    --bs-btn-bg: var(--brand-primary);
    --bs-btn-border-color: var(--brand-primary);
    --bs-btn-hover-bg: var(--brand-hover);
    --bs-btn-hover-border-color: var(--brand-hover);
    --bs-btn-active-bg: var(--brand-hover);
    --bs-btn-disabled-bg: var(--brand-primary);
}
.btn-outline-primary {
    --bs-btn-color: var(--brand-primary);
    --bs-btn-border-color: var(--brand-primary);
    --bs-btn-hover-bg: var(--brand-primary);
    --bs-btn-hover-border-color: var(--brand-primary);
}
a { text-decoration: none; }
a:hover { text-decoration: underline; }

/* ── Таблиці ────────────────────────────────────────────────────────── */
.table > thead th {
    background: var(--bg-subtle);
    color: var(--text-secondary);
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.table-hover > tbody > tr:hover > * { background: var(--bg-subtle); }

/* ── Форми ──────────────────────────────────────────────────────────── */
.form-control, .form-select { border-color: var(--border); }
.form-control:focus, .form-select:focus {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 3px rgba(30,58,138,.12);
}
.form-label { font-weight: 500; color: var(--text-secondary); }

/* ── Вкладки ────────────────────────────────────────────────────────── */
.nav-tabs .nav-link { color: var(--text-secondary); font-weight: 500; }
.nav-tabs .nav-link.active { color: var(--brand-primary); font-weight: 600; }

/* ── Тост-сповіщення (§10.6.3) ──────────────────────────────────────── */
.toast-stack { position: fixed; right: 1rem; bottom: 1rem; z-index: 1090; }
.app-toast {
    min-width: 260px; margin-top: .5rem; padding: .7rem 1rem;
    background: var(--bg-card); border: 1px solid var(--border);
    border-left: 4px solid var(--brand-accent);
    border-radius: .5rem; box-shadow: 0 6px 20px rgba(15,23,42,.14);
    animation: toastIn .18s ease;
}
.app-toast.is-error { border-left-color: #DC2626; }
@keyframes toastIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

/* Великі цільові області — комфорт при 10-годинній роботі (§3) */
.btn-sm { padding: .28rem .6rem; }
