/* Compact cash-task cards (not table→block — that blew up Pro/desktop). */
.cash-tasks-view-compact {
  max-height: none;
}

.cash-tasks-view-compact .cash-task-compact-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.cash-tasks-view-compact .cash-task-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 5.5rem 7.5rem;
  grid-template-areas:
    "dir amt deal act"
    "meta meta deal act";
  column-gap: 12px;
  row-gap: 6px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid rgba(127, 127, 127, .16);
  border-radius: 8px;
  background: color-mix(in srgb, var(--tg-theme-secondary-bg-color, rgba(127, 127, 127, .08)) 92%, transparent);
  min-height: 64px;
  box-sizing: border-box;
  cursor: default;
}

.cash-tasks-view-compact .cash-task-row.is-drill { cursor: pointer; }
.cash-tasks-view-compact .cash-task-row.is-unassigned {
  box-shadow: inset 3px 0 0 #e48a26;
}
html[data-theme="dark"] .cash-tasks-view-compact .cash-task-row {
  border-color: rgba(255, 255, 255, .08);
  background: color-mix(in srgb, var(--tg-theme-secondary-bg-color, rgba(16, 20, 28, .72)) 88%, transparent);
}

.cash-tasks-view-compact .cash-task-dir {
  grid-area: dir;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.cash-tasks-view-compact .cash-task-amt {
  grid-area: amt;
  font-size: 15px;
  font-weight: 700;
  color: var(--tg-theme-text-color, #111);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cash-tasks-view-compact .cash-task-deal-cell {
  grid-area: deal;
  justify-self: end;
  text-align: right;
  font-size: 12px;
  font-weight: 650;
  white-space: nowrap;
  padding: 0;
}
.cash-tasks-view-compact .cash-task-desk,
.cash-tasks-view-compact .cash-task-date {
  display: none !important;
}
.cash-tasks-view-compact .cash-task-meta {
  grid-area: meta;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  min-width: 0;
}
.cash-tasks-view-compact .cash-task-client {
  flex: 0 1 auto;
  max-width: none;
  font-size: 12px;
  color: var(--ui-muted-strong);
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cash-tasks-view-compact .cash-task-status-cell { flex: 0 0 auto; font-size: 11px; }
.cash-tasks-view-compact .cash-task-acts {
  grid-area: act;
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0;
}
.cash-tasks-view-compact .cash-task-acts .act {
  width: 100%;
  max-width: 7.5rem;
  min-width: 0;
  min-height: 36px;
  padding: 4px 12px;
}
.cash-tasks-view-compact .cash-task-wait { display: none; }

@media (max-width: 700px) {
  .cash-tasks-view-compact .cash-task-row {
    grid-template-columns: minmax(0, 1fr) 7.25rem;
    grid-template-areas:
      "dir act"
      "amt act"
      "deal act"
      "meta meta";
    column-gap: 10px;
    row-gap: 4px;
    padding: 12px;
    min-height: 0;
  }
  .cash-tasks-view-compact .cash-task-amt {
    font-size: 16px;
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
  }
  .cash-tasks-view-compact .cash-task-deal-cell { justify-self: start; }
}

.cash-task-status {
  font-size: 10.5px;
  font-weight: 650;
  white-space: nowrap;
  padding: 2px 6px;
  border-radius: 8px;
}

.cash-task-status.is-assigned {
  color: #168c58;
  background: rgba(32, 164, 103, .12);
}

.cash-task-status.is-wait {
  color: #a45b09;
  background: rgba(228, 138, 38, .14);
}

.cash-task-row.is-unassigned td {
  background: color-mix(in srgb, rgba(228, 138, 38, .06) 100%, transparent);
}

.cash-tasks-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 11px;
}

.cash-tasks-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 10px 12px;
  text-align: left;
  font-size: 10.5px;
  font-weight: 650;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: var(--tg-theme-hint-color, #68717d);
  background: var(--tg-theme-bg-color, #fff);
  border-bottom: 1px solid rgba(127, 127, 127, .14);
  white-space: nowrap;
}

.cash-tasks-table td {
  padding: 10px 12px;
  vertical-align: middle;
  border-bottom: 1px solid rgba(127, 127, 127, .08);
  font-variant-numeric: tabular-nums;
  line-height: 1.35;
  min-height: 44px;
}

.cash-tasks-table tbody tr:last-child td { border-bottom: 0; }

.cash-task-row.is-drill { cursor: pointer; }

.cash-task-row.is-drill:hover td,
.cash-task-row.is-drill:focus-visible td,
.cash-tasks-view-compact .cash-task-row.is-drill:hover,
.cash-tasks-view-compact .cash-task-row.is-drill:focus-visible {
  background: rgba(51, 144, 236, .08);
}

.cash-task-dir { font-weight: 650; white-space: nowrap; }
.cash-task-amt { white-space: nowrap; font-weight: 700; }
.cash-task-client,
.cash-task-desk {
  max-width: 22ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cash-tasks-table td.cash-task-deal-cell,
.cash-tasks-table td.cash-task-acts {
  padding-left: 12px;
  padding-right: 12px;
}

.cash-task-deal {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  min-height: 32px;
  font-weight: 650;
  cursor: pointer;
  text-decoration: none;
}

.cash-task-acts {
  text-align: right;
  white-space: nowrap;
}

.cash-task-acts .act,
.cash-task-act {
  min-height: 32px;
  min-width: 0;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 650;
  text-decoration: none;
}

.cash-create {
  position: relative;
  display: inline-block;
  z-index: 11;
  flex: 0 0 auto;
}

.cash-create-btn,
.cash-post-btn,
.cash-more-btn {
  list-style: none;
  cursor: pointer;
  min-height: var(--ui-control-h, 44px);
  padding: 0 var(--ui-space-3, 12px);
  border-radius: var(--ui-radius-sm, 8px);
  border: none;
  background: var(--tg-theme-secondary-bg-color, #eee);
  color: inherit;
  font: inherit;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.15;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.cash-create-btn {
  color: #fff;
  background: var(--pos, #1a8d3e);
}

.cash-more-btn {
  border-color: rgba(127, 127, 127, .22);
  background: rgba(127, 127, 127, .06);
}

.cash-create-btn::-webkit-details-marker,
.cash-post-btn::-webkit-details-marker,
.cash-more > summary::-webkit-details-marker { display: none; }

.cash-create-popover {
  position: absolute;
  right: 0;
  top: calc(100% + 4px);
  z-index: 12;
  display: grid;
  grid-template-columns: minmax(180px, 260px) auto;
  gap: 5px;
  width: max-content;
  max-width: calc(100vw - 24px);
  padding: 7px;
  border: 1px solid rgba(127, 127, 127, .20);
  border-radius: 8px;
  background: var(--tg-theme-bg-color, #fff);
  box-shadow: 0 12px 32px rgba(0, 0, 0, .18);
}

.cash-create input,
.cash-create button { min-height: 32px; box-sizing: border-box; }

.cash-reg-head,
.cash-zone-head {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  margin-bottom: 6px;
}

.cash-reg-tools {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  width: 100%;
  margin-left: 0;
}

.cash-reg-title {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
}

.cash-post {
  margin-top: 6px;
}

.cash-post > summary {
  display: inline-flex;
  align-items: center;
  width: fit-content;
}

.cash-post[open] > summary {
  margin-bottom: 6px;
}

.cash-float-panel {
  margin-top: 6px;
  padding: 8px;
  border: 1px solid rgba(127, 127, 127, .16);
  border-radius: 8px;
  background: rgba(127, 127, 127, .04);
}

.cash-float-panel.is-hidden[hidden] { display: none !important; }

.cash-float-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 6px;
}

.cash-float-head b { font-size: 12.5px; }

.cash-float-form .fin-modal-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  margin-bottom: 6px;
}

.cash-status,
.cash-move-field > :where(span, label),
.cash-closed-note,
.fin-modal-form > .frow > label,
.fin-modal-grid > .frow > label,
.fin-modal-note,
.cash-shift-counts > :where(.frow, .ecosystem-field-row) > label {
  font-size: var(--ui-secondary-size);
}

.cash-balance-table .led-col-asset b {
  font-size: var(--ui-body-size);
}

.cash-move-form {
  grid-template-columns: minmax(90px, .75fr) minmax(110px, .9fr) minmax(110px, .9fr)
    minmax(150px, 1.4fr) auto;
  gap: 7px;
  padding: 9px;
}

body.pro #grid.shift-grid {
  width: min(100%, 1200px);
  max-width: none;
}

.shift-count-row > td::before {
  font-size: var(--ui-secondary-size);
}

.cash-move-field > input,
.cash-move-field > select,
.cash-move-form > .cd-save {
  height: 38px !important;
  min-height: 38px;
  max-height: 38px;
}

