@charset "UTF-8";
:root {
  --primary-color: #2c3e50;
  --accent-color: #3498db;
  --bg-light: #f8f9fa;
  --border-color: #e0e4e8;
  --header-color: #6b6b6b;
  --table-mobile-tr: #ffffff;
  --table-mobile-tr-border: #e0e4e8;
  --table-mobile-td-border: rgba(224, 228, 232, 0.38);
  --table-mobile-label: #7f8c8d;
}

[data-bs-theme=dark] {
  --primary-color: #2c3e50;
  --accent-color: #3498db;
  --bg-light: #f8f9fa;
  --border-color: #434343;
  --header-color: #b7b7b7;
  --table-mobile-tr: #272626;
  --table-mobile-tr-border: #6b6b6b;
  --table-mobile-td-border: #4b4b4b;
  --table-mobile-label: #f7f7f7;
  --bs-table-bg: #2d2d2d;
}

.authuser {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  max-width: 1200px;
  margin: 20px auto;
  padding: 20px;
  color: var(--primary-color);
}

h3 {
  margin-bottom: 20px;
  font-weight: 600;
  border-left: 4px solid var(--accent-color);
  padding-left: 15px;
}

/* Контейнер для десктопа */
.tableCont {
  width: 100%;
  overflow-x: auto;
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
  border: 1px solid var(--border-color);
  /*background: white;*/
  transition: all 0.3s;
}

.table {
  width: 100%;
  border-collapse: collapse;
}

.table thead th {
  background-color: var(--bs-table-bg);
  color: var(--header-color);
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.5px;
  padding: 16px;
  border-bottom: 2px solid var(--border-color);
  text-align: left;
}

.table td {
  padding: 14px 16px;
  border-bottom: 1px solid var(--border-color);
  font-size: 14px;
}

/*.table tbody tr:nth-child(even) { background-color: #fafbfc; }*/
/*.table tbody tr:hover { background-color: #f1f7ff; }*/
.amount-cell {
  font-weight: 700;
  color: var(--accent-color);
  white-space: nowrap;
}

/* МОБИЛЬНЫЙ РЕЖИМ (через класс) */
.tableCont.is-mobile {
  border: none;
  background: transparent;
}

.tableCont.is-mobile .table thead {
  display: none;
}

.tableCont.is-mobile .table,
.tableCont.is-mobile tbody,
.tableCont.is-mobile tr,
.tableCont.is-mobile td {
  display: block;
  width: 100%;
}

.tableCont.is-mobile tr {
  background: var(--table-mobile-tr);
  margin-bottom: 12px;
  border: 1px solid var(--table-mobile-tr-border);
  border-radius: 13px;
  padding: 4px 4px 0 4px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.tableCont.is-mobile td {
  background: var(--bs-table-bg);
  margin-bottom: 5px;
  border: 1px solid var(--table-mobile-td-border);
  border-radius: 10px;
  padding: 12px;
  /*box-shadow: 0 2px 5px rgba(0,0,0,0.05);*/
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
}

.tableCont.is-mobile td:not(:has(span:empty))::before {
  content: attr(data-label);
  font-weight: 600;
  color: #7f8c8d;
  text-align: left;
  /*flex-shrink: 0;*/
  /*width: 40%;*/
}

.tableCont.is-mobile td::before {
  content: attr(data-label);
  position: static; /* Отменяем абсолютное позиционирование */
  font-weight: 600;
  color: var(--table-mobile-label);
  text-align: left;
  min-width: 100px; /* Минимальная ширина для заголовка */
  /*max-width: 150px; /* Максимальная ширина, чтобы не вытеснял текст */
  /*flex-shrink: 0; /* Заголовок не должен сжиматься */
}

.tableCont.is-mobile td span.cell-content {
  /*word-break: break-word; /* Перенос длинных слов */
  display: inline-block;
}

.tableCont.is-mobile td:has(span:empty) {
  display: none;
}

/* --- ИСПРАВЛЕНИЯ ДЛЯ МОБИЛЬНЫХ --- */
.tree-toggle {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: background-color 0.15s ease-in-out;
}

[data-bs-theme=dark] {
  --bs-light: #3d4c5b;
}

.tree-toggle:hover {
  background-color: var(--bs-light) !important;
}

/* Управление вращением стрелки через SVG */
.arrow-icon {
  transition: transform 0.2s ease-in-out;
  transform: rotate(0deg);
}

.tree-toggle[aria-expanded=true] .arrow-icon {
  transform: rotate(90deg) !important;
}

/* Управление сменой папок (Открытая / Закрытая) */
.folder-open {
  display: none;
}

.folder-closed {
  display: inline-block;
}

.tree-toggle[aria-expanded=true] .folder-open {
  display: inline-block;
}

.tree-toggle[aria-expanded=true] .folder-closed {
  display: none;
}

/* Геометрия структуры дерева */
.tree-branch {
  padding-left: 1.25rem;
  border-left: 1px dashed var(--bs-border-color);
}

.tree-table-container {
  min-width: 0;
  width: 100%;
}

@media screen and (max-width: 1200px) {
  .tree_table {
    padding-right: 0;
    padding-left: 0;
  }
}/*# sourceMappingURL=table.css.map */