/*
 * Отсылка к визуальному языку 1С:Предприятие 8.3: тёплый фон, жёлтые акценты «лента команд»,
 * чёткая сетка таблиц, компактность. Совместимо с Bootstrap 5.
 */

:root {
  --erp-frame: #7a7668;
  --erp-panel-bg: #f7f6f3;
  --erp-toolbar: linear-gradient(to bottom, #fffef6 0%, #fde9a9 48%, #f6d867 52%, #fff4c9 100%);
  --erp-border: #bcb59c;
  --erp-header-text: #1a1205;
  --erp-link: #0b4d8c;
}

html {
  font-size: 14px;
}

body {
  min-height: 100vh;
  background: repeating-linear-gradient(
    135deg,
    #ebe8df,
    #ebe8df 2px,
    #e8e5dc 2px,
    #e8e5dc 4px
  );
  color: #222;
}

.erp-body {
  /* уже применимо к любой странице */
}

.erp-rounded {
  border-radius: 2px !important;
}

.navbar-dark.bg-dark,
.navbar.bg-dark {
  background: linear-gradient(to bottom, #4a472f 0%, #2f2e24 55%, #1f1e17 100%) !important;
  border-bottom: 1px solid #0d0d0d;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.navbar-brand {
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #fffef0 !important;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.35);
}

/* Панели как окна конфигурации */
.card,
.table {
  --bs-card-border-radius: 2px;
  border-radius: 2px;
}

.card {
  background-color: var(--erp-panel-bg);
  border-color: var(--erp-border);
  box-shadow: 1px 1px 0 #c8c4b8, 2px 2px 6px rgba(0, 0, 0, 0.05);
}

.erp-panel.card {
  border: 1px solid var(--erp-border);
}

.card-header:not(.erp-toolbar) {
  background: linear-gradient(to bottom, #faf9f4, #eae7dd);
  border-bottom-color: var(--erp-border);
  font-weight: 600;
  color: var(--erp-header-text);
}

.erp-toolbar {
  background: var(--erp-toolbar) !important;
  border-bottom: 1px solid #c9a632 !important;
  color: #1a1405 !important;
}

/* Командная панель под заголовком */
.btn-primary {
  --bs-btn-bg: #fcf3d9;
  --bs-btn-border-color: #998c6f;
  --bs-btn-color: #1f1a09;
  --bs-btn-hover-bg: #fde9a9;
  --bs-btn-hover-border-color: #7a6844;
  --bs-btn-hover-color: #080602;
}

.btn-success {
  --bs-btn-bg: #e9f6e5;
  --bs-btn-border-color: #689f38;
  --bs-btn-color: #1f3312;
}

.btn-outline-secondary {
  --bs-btn-border-color: var(--erp-border);
  --bs-btn-color: #353028;
}

/* Табличная часть */
.table {
  border-color: #c9c6ba;
}

.table thead th {
  background: linear-gradient(to bottom, #f3f2ec, #e2dfd4);
  border-color: var(--erp-border);
  font-weight: 600;
  font-size: 0.92rem;
  color: #2a2820;
  white-space: nowrap;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-accent-bg: rgba(253, 250, 240, 0.65);
}

.table-hover tbody tr:hover > * {
  --bs-table-bg-state: rgba(255, 240, 180, 0.45);
}

/* Боковое меню как панель навигации 1С */
.list-group-item,
.list-group-item-action {
  border-radius: 0 !important;
}

.list-group .list-group-item,
.list-group a.list-group-item-action {
  background-color: #fbfaf6;
  border-color: var(--erp-border);
  color: var(--erp-header-text);
  font-size: 0.95rem;
}

.list-group-item.active,
.list-group-item-action.active {
  background-color: #fff6c8 !important;
  border-left: 4px solid #e4b931 !important;
  color: #1f1a07 !important;
  font-weight: 600;
}

.list-group-item.text-secondary.fw-semibold,
.list-group .list-group-item.text-secondary.fw-semibold {
  background: linear-gradient(to bottom, #f2efe5, #e6e3d8);
}

a.list-group-item-action:hover {
  background-color: #fff9e0 !important;
}

.form-control,
.form-select {
  border-color: #a9a091;
  border-radius: 2px;
  background-color: #fffef9;
}

.form-control:focus,
.form-select:focus {
  border-color: #cba432;
  box-shadow: 0 0 0 0.2rem rgba(228, 185, 49, 0.25);
}

.text-muted small,
small.text-muted {
  color: #5c574a !important;
}

.details summary,
.modal-header {
  /* мелкая полировка */
}

/* Боковое меню: сворачируемые разделы (<details>) */
.erp-sidebar {
  font-size: 0.92rem;
}

.erp-sidebar > a.home-link {
  margin-bottom: 0.55rem;
  border-radius: 2px;
  border: 1px solid var(--erp-border);
  font-weight: 600;
  display: block;
  padding: 0.5rem 0.85rem;
  text-decoration: none;
  color: inherit;
}

.erp-sidebar > a.home-link.active {
  background: #fff9c4 !important;
  border-left: 3px solid #d4a017;
  padding-left: calc(0.85rem - 3px);
  color: inherit;
}

.erp-sidebar details.erp-sidebar-section {
  border: 1px solid var(--erp-border);
  border-radius: 2px;
  margin-bottom: 0.38rem;
  background: var(--erp-panel-bg, #fcfbf8);
}

.erp-sidebar details.erp-sidebar-section > summary {
  list-style: none;
  cursor: pointer;
  padding: 0.45rem 0.65rem;
  font-weight: 600;
  color: var(--erp-header-text, #38352e);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  user-select: none;
  background: linear-gradient(to bottom, #faf9f4, #eae7dd);
  border-radius: 2px;
}

.erp-sidebar details.erp-sidebar-section[open] > summary {
  border-bottom: 1px solid var(--erp-border);
  border-radius: 2px 2px 0 0;
}

.erp-sidebar details.erp-sidebar-section > summary::-webkit-details-marker {
  display: none;
}

.erp-sidebar .erp-sidebar-chevron {
  flex-shrink: 0;
  font-size: 0.75rem;
  opacity: 0.65;
  transition: transform 0.15s ease;
}

.erp-sidebar details.erp-sidebar-section[open] .erp-sidebar-chevron {
  transform: rotate(180deg);
}

.erp-sidebar .erp-sidebar-items {
  border-radius: 0 0 2px 2px;
}

.erp-sidebar .erp-sidebar-items a.list-group-item {
  border-width: 0 0 1px 0;
  border-radius: 0 !important;
  padding: 0.42rem 0.65rem 0.42rem 1.65rem;
  font-size: 0.905rem;
  font-weight: normal;
}

.erp-sidebar .erp-sidebar-items a.list-group-item:last-child {
  border-bottom: 0 !important;
}

.erp-sidebar .erp-sidebar-items a.list-group-item.active {
  background: #fff9c4 !important;
  border-left: 3px solid #d4a017;
  padding-left: calc(1.65rem - 3px);
  color: inherit;
}

.erp-sidebar .erp-sidebar-items a.list-group-item i.bi {
  margin-right: 0.4rem;
  opacity: 0.92;
}

footer.admin-debug-footer {
  border-color: var(--erp-border) !important;
}

a {
  color: var(--erp-link);
}

/* ---------- Экран списка / журнала (командная панель + таблица) ---------- */

.erp-page-head .erp-screen-title {
  font-weight: 600;
  color: var(--erp-header-text);
  letter-spacing: 0.01em;
}

.erp-command-panel.card {
  border-color: #c9a632;
  box-shadow: 1px 1px 0 #c8c4b8;
}

.erp-command-panel .card-body {
  background: transparent !important;
}

.erp-command-panel .btn-sm {
  font-weight: 600;
  padding: 0.28rem 0.65rem;
}

.erp-filter-bar {
  background: var(--erp-panel-bg);
  border: 1px solid var(--erp-border);
  border-radius: 2px;
  padding: 0.5rem 0.75rem;
  margin-bottom: 0.75rem;
}

.erp-table-panel {
  border: 1px solid var(--erp-border);
  border-radius: 2px;
  background: #fffef9;
  box-shadow: 1px 1px 0 #c8c4b8, 2px 2px 6px rgba(0, 0, 0, 0.04);
  overflow: hidden;
}

.erp-table-panel .table {
  margin-bottom: 0;
}

.erp-table-panel .table thead th {
  border-top: none;
}

/* ---------- Типовая форма элемента справочника / документа ---------- */

.card.erp-form-document {
  border-color: var(--erp-border);
}

.card.erp-form-document > .card-header.erp-toolbar {
  font-weight: 600;
  font-size: 0.95rem;
}

.erp-form-section-title {
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #5c574a;
  margin-bottom: 0.65rem;
  padding-bottom: 0.25rem;
  border-bottom: 1px dotted #c9c6ba;
}

.erp-form-actions {
  background: linear-gradient(to bottom, #f5f3ec, #ebe8df);
  border-top: 1px solid var(--erp-border);
  padding: 0.65rem 0;
  margin-top: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
}

/* Плитки на «главной финансов» и др. */
.erp-metric-tile.card {
  transition: box-shadow 0.12s ease;
}

.erp-metric-tile.card:hover {
  box-shadow: 2px 2px 0 #b8a870, 3px 3px 10px rgba(0, 0, 0, 0.08);
}

/* Главная ERP: блок быстрых ссылок */
.erp-home-quick.card {
  max-width: 32rem;
}

.erp-home-quick .list-group-item {
  padding-top: 0.55rem;
  padding-bottom: 0.55rem;
}

/* Select2 + кнопка «+» у справочников */
.erp-field-with-plus .select2-container {
  flex: 1;
  min-width: 0;
}

.erp-field-with-plus > .btn.erp-ref-plus {
  flex-shrink: 0;
  padding-left: 0.65rem;
  padding-right: 0.65rem;
  font-weight: 600;
}
