/* Модуль «Деньги»: журнал кассы в духе таблицы бюро.
   Цвета строк — те же, что в таблице кассы: поступление зелёным, списание
   красным, вывод прибыли — акцентом (синим), перевод — жёлтым; план бледнее
   и со штриховкой. Кегль, отступы и радиусы — только токенами. */

.dengi .table--wide { overflow-x: auto; }
.dengi__bar { display: flex; align-items: center; gap: var(--s-2); flex-wrap: wrap; margin-bottom: var(--s-3); }
.dengi__month { display: flex; align-items: center; gap: var(--s-1); }
.dengi__month b { min-width: 130px; text-align: center; font-weight: 600; }
.dengi__kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: var(--s-3); margin-bottom: var(--s-3); }
.dengi__kpis > .card + .card { margin-top: 0; }
.dengi__kpi { padding: var(--s-3) var(--s-4); }
.dengi__kpi.is-warn { background: var(--warn-soft); }
.dengi__kpi-l { font-size: var(--t-sm); color: var(--text-dim); }
.dengi__kpi-v { font-family: var(--mono); font-size: var(--t-xl); font-weight: 600; font-variant-numeric: tabular-nums; }
.dengi__kpi-v.is-in { color: var(--ok-fg); }
.dengi__kpi-v.is-out { color: var(--late-fg); }
.dengi__card { padding: 0; overflow: hidden; margin-bottom: var(--s-3); }
.dengi__card > .card__head, .dengi__card > .note { padding: var(--s-3) var(--s-4) 0; }
.dengi__card.dengi__form { padding: var(--s-4); }

.dengi__table { font-size: var(--t-sm); }
.dengi__table th, .dengi__table td { padding: var(--s-2) var(--s-3); white-space: nowrap; }
.dengi__table td.num, .dengi__table th.num { font-family: var(--mono); text-align: right; }
.dengi__purpose { white-space: normal !important; min-width: 160px; }
.dengi__row { cursor: pointer; }
.dengi__row--in td { background: color-mix(in srgb, var(--ok) 13%, var(--surface)); }
.dengi__row--out td { background: color-mix(in srgb, var(--late) 10%, var(--surface)); }
.dengi__row--div td { background: color-mix(in srgb, var(--accent) 14%, var(--surface)); }
.dengi__row--tr td { background: color-mix(in srgb, var(--warn) 18%, var(--surface)); }
.dengi__row.is-plan td {
  color: var(--text-dim); font-style: italic;
  background-image: repeating-linear-gradient(135deg, transparent 0 6px, var(--hover) 6px 12px);
}
.dengi__open td { background: color-mix(in srgb, var(--ok) 20%, var(--surface)); font-weight: 600; }
.dengi .is-neg { color: var(--late-fg); }
.dengi__act { text-align: right; }
.dengi__rep { color: var(--text-faint); margin-right: var(--s-2); }
.dengi__add td { background: var(--surface); vertical-align: top; }
.dengi__add .input, .dengi__add .select { min-width: 0; width: 100%; height: 32px; font-size: var(--t-sm); }
.dengi__add td:nth-child(1) { min-width: 140px; }
.dengi__add td:nth-child(3) { min-width: 110px; }
.dengi__in-sum { text-align: right; font-family: var(--mono); }
.dengi__chk { display: inline-flex; align-items: center; gap: var(--s-2); font-size: var(--t-sm); cursor: pointer; margin: var(--s-1) var(--s-3) var(--s-1) 0; }
.dengi__legend { display: flex; gap: var(--s-3); font-size: var(--t-sm); color: var(--text-dim); flex-wrap: wrap; }
.dengi__sw { display: inline-block; width: 12px; height: 12px; border-radius: var(--radius-sm); margin-right: var(--s-1); vertical-align: -2px; }
.dengi__sw--in { background: color-mix(in srgb, var(--ok) 35%, var(--surface)); }
.dengi__sw--out { background: color-mix(in srgb, var(--late) 30%, var(--surface)); }
.dengi__sw--div { background: color-mix(in srgb, var(--accent) 35%, var(--surface)); }
.dengi__sw--tr { background: color-mix(in srgb, var(--warn) 40%, var(--surface)); }
.dengi__sw--plan { background: repeating-linear-gradient(135deg, var(--surface) 0 3px, var(--border-strong) 3px 6px); }

.dengi__form .field { margin-bottom: var(--s-3); }
.dengi__del { margin-top: var(--s-2); color: var(--late-fg); }
.dengi__modal-wide { width: min(1240px, calc(100vw - 2 * var(--s-4))); max-width: none; }
.dengi__imp-wrap { max-height: 60vh; overflow: auto; border-radius: var(--radius); }
.dengi__imp-sel { height: 30px; font-size: var(--t-sm); min-width: 130px; }
.dengi__imp-q { white-space: normal !important; min-width: 240px; font-size: var(--t-sm); }
.dengi__imp-q > div { margin-top: var(--s-1); }

.dengi__split { display: grid; grid-template-columns: 320px 1fr; gap: var(--s-3); align-items: start; }
.dengi__split--even { grid-template-columns: 1fr 1fr; }
.dengi__klist { padding: var(--s-2); max-height: 75vh; overflow: auto; }
.dengi__kitem { display: block; width: 100%; text-align: left; border: 0; background: none; padding: var(--s-2) var(--s-3); border-radius: var(--radius); cursor: pointer; font: inherit; color: inherit; }
.dengi__kitem:hover:where([data-hover="mouse"] *) { background: var(--hover); }
.dengi__kitem.is-active { background: var(--accent-soft); }
.dengi__kitem.is-arch { opacity: .55; }
.dengi__kitem b { display: block; font-weight: 500; }
.dengi__kitem span { font-size: var(--t-sm); color: var(--text-dim); }
.dengi__grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--s-4); }
.dengi__roles { margin: 0 0 var(--s-3); }
.dengi__arch td { opacity: .55; }

@media (max-width: 900px) {
  .dengi__split, .dengi__split--even, .dengi__grid2 { grid-template-columns: 1fr; }
}
.dengi__kpi-n { font-size: var(--t-sm); color: var(--text-dim); }
.dengi__ml { margin-left: var(--s-2); }
.dengi__stack { display: flex; flex-direction: column-reverse; gap: var(--s-3); max-width: 1100px; }
.dengi__click { cursor: pointer; }

/* Правка прямо в таблице, как в Excel (владелец, 5.10.2026): ячейка — щелчком,
   рамка акцентом вокруг правимой, поле без своей рамки и фона. */
.dengi__row { cursor: default; }
.dengi__cell { cursor: cell; }
.dengi__cell:hover:where([data-hover="mouse"] *) { box-shadow: inset 0 0 0 1px var(--border-strong); }
.dengi__cell.is-editing { padding: 0 !important; box-shadow: inset 0 0 0 2px var(--accent); background: var(--surface) !important; background-image: none !important; }
.dengi__ed {
  width: 100%; min-width: 90px; height: 32px; border: 0; outline: 0; background: transparent;
  padding: 0 var(--s-3); font: inherit; font-style: normal; color: var(--text);
}
.dengi__ed.num { text-align: right; font-family: var(--mono); }
select.dengi__ed { cursor: pointer; }
.dengi__x {
  border: 0; background: none; color: var(--text-faint); cursor: pointer; font: inherit; font-size: var(--t-md);
  padding: 0 var(--s-1); margin-left: var(--s-1); border-radius: var(--radius-sm); opacity: 0;
}
.dengi__row:hover .dengi__x, .dengi__x:focus { opacity: 1; }
.dengi__x:hover:where([data-hover="mouse"] *) { color: var(--late-fg); background: var(--hover); }
