body { background:#f6f3ee; font-family: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; }
/* Сайдбар: мобиле — offcanvas поверх контента; десктоп — фиксированная колонка слева */
/* Мобиле: скрытый сайдбар убираем из потока (иначе оставляет пустое место до контента) */
@media (max-width: 991.98px) {
  .sidebar { position: fixed !important; bottom: 0; left: 0; }
}
@media (min-width: 992px) {
  .sidebar { background:#fffdf9; border-right:1px solid #e8e0d5; min-height:calc(100vh - 56px); width:230px; position:fixed !important; top:56px; left:0; bottom:0; z-index:100; visibility:visible !important; transform:none !important; }
  .content { margin-left:230px; }
}
.sidebar-link { color:#5c4d3a; padding:.55rem 1.1rem; font-size:.95rem; }
.sidebar-link:hover { background:#f1e9dd; color:#3e2f1d; }
.sidebar-link.active { background:#7a5c3e; color:#fff; border-radius:0 20px 20px 0; margin-right:8px; }
.card { border:1px solid #e8e0d5; box-shadow:0 1px 3px rgba(90,70,40,.06); }
.card-header { background:#fbf8f3; border-bottom:1px solid #e8e0d5; font-weight:600; color:#5c4d3a; }
.stat-card { border-left:4px solid #7a5c3e; }
.stat-number { font-size:1.7rem; font-weight:700; color:#4a3a26; }
.table thead th { background:#fbf8f3; color:#5c4d3a; white-space:nowrap; }
.btn-primary, .btn-primary:active { background:#7a5c3e; border-color:#7a5c3e; }
.btn-primary:hover { background:#65492f; border-color:#65492f; }
.badge { font-weight:500; }

/* Печать договоров */
.contract-doc { max-width:800px; margin:0 auto; background:#fff; padding:32px; }
.contract-doc p { margin:0 0 6pt 0; }
@media print {
  body { background:#fff; }
  .no-print { display:none !important; }
  .contract-doc { padding:0; max-width:none; }
}
