/* DASHBOARD */
.dashboard-loading {
      padding: 40px;
      text-align: center;
      color: var(--muted);
    }

    .dashboard-error {
      padding: 40px;
      text-align: center;
      color: #f87171;
    }

    .dashboard-wrap {
      padding: 24px;
      max-width: 1100px;
      margin: 0 auto;
    }

    .dashboard-title {
      font-size: 20px;
      font-weight: 700;
      margin-bottom: 20px;
    }

    .dashboard-stats {
      margin-bottom: 24px;
    }

    .dashboard-stat-clickable {
      cursor: pointer;
    }

    .dashboard-stat-muted {
      color: #94a3b8;
    }

    .dashboard-stat-green {
      color: #34d399;
    }

    .dashboard-stat-indigo {
      color: #818cf8;
    }

    .dashboard-stat-yellow {
      color: #fbbf24;
    }

    .dashboard-stat-red {
      color: #ef4444;
    }

    .dashboard-stat-orange {
      color: #f59e0b;
    }

    .dashboard-card-spaced {
      margin-bottom: 20px;
    }

    .dashboard-yearly-head {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 16px;
    }

    .dashboard-section-title-flat {
      margin-bottom: 0;
    }

    .dashboard-yearly-total {
      font-size: 13px;
      font-weight: 700;
      color: #34d399;
    }

    .dashboard-bars {
      display: flex;
      align-items: flex-end;
      gap: 5px;
      height: 100px;
      padding-top: 8px;
    }

    .dashboard-bar-col {
      flex: 1;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 4px;
    }

    .dashboard-bar-value {
      font-size: 10px;
      color: #34d399;
      font-weight: 600;
      min-height: 14px;
      text-align: center;
    }

    .dashboard-bar-label {
      font-size: 10px;
      color: var(--muted);
    }

    .dashboard-filter-card {
      margin-bottom: 20px;
      padding: 16px;
      display: flex;
      align-items: end;
      gap: 12px;
      flex-wrap: wrap;
    }

    .dashboard-filter-caption {
      font-size: 12px;
      color: var(--muted);
      font-weight: 600;
      min-width: 120px;
    }

    .dashboard-filter-label {
      display: block;
      font-size: 11px;
      color: var(--muted);
      margin-bottom: 6px;
    }

    .dashboard-filter-select {
      min-width: 120px;
    }

    .dashboard-filter-period {
      margin-left: auto;
      font-size: 13px;
      color: #a5b4fc;
      font-weight: 700;
    }

    .dashboard-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
    }

    .dashboard-empty {
      color: var(--muted);
    }

    .dashboard-item {
      margin-bottom: 14px;
    }

    .dashboard-item-head {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 12px;
      margin-bottom: 4px;
    }

    .dashboard-item-name {
      font-weight: 600;
    }

    .dashboard-item-amount {
      color: #34d399;
      font-weight: 700;
    }

    .dashboard-item-amount-accent {
      color: var(--accent2);
      font-weight: 700;
    }

    .dashboard-item-count {
      color: var(--muted);
      font-weight: 400;
    }

    .dashboard-progress {
      height: 6px;
      background: var(--surface2);
      border-radius: 99px;
      overflow: hidden;
      margin-bottom: 5px;
    }

    .dashboard-progress-object {
      background: var(--surface2);
      height: 6px;
      border-radius: 3px;
      overflow: hidden;
      margin-bottom: 5px;
    }

    .dashboard-bar-fill {
      width: 100%;
      border-radius: 4px 4px 0 0;
      transition: height .5s;
    }

    .dashboard-bar-fill-future {
      border: 1px dashed rgba(99, 102, 241, 0.3);
    }

    .dashboard-progress-fill {
      height: 100%;
      background: linear-gradient(90deg, #6366f1, #22d3ee);
      border-radius: 99px;
      transition: width .5s;
    }

    .dashboard-progress-fill-object {
      height: 100%;
      background: linear-gradient(90deg, #3b82f6, #8b5cf6);
      transition: width .3s;
    }

    .dashboard-chip-row {
      display: flex;
      gap: 8px;
      font-size: 10px;
    }

    .dashboard-chip-capex {
      background: #064e3b;
      color: #34d399;
      border: 1px solid rgba(52, 211, 153, .3);
      padding: 1px 7px;
      border-radius: 10px;
      font-weight: 700;
    }

    .dashboard-chip-additional {
      background: #7f1d1d;
      color: #fca5a5;
      border: 1px solid rgba(248, 113, 113, .3);
      padding: 1px 7px;
      border-radius: 10px;
      font-weight: 700;
    }

    .dashboard-status-row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 6px 0;
      border-bottom: 1px solid var(--border);
      font-size: 12px;
    }

    .dashboard-status-main {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .dashboard-status-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      display: inline-block;
    }

    .dashboard-status-count {
      font-weight: 700;
    }

    .dashboard-status-dot-muted {
      background: #94a3b8;
    }

    .dashboard-status-dot-cyan {
      background: #22d3ee;
    }

    .dashboard-status-dot-green {
      background: #34d399;
    }

    .dashboard-status-dot-yellow {
      background: #fbbf24;
    }

    .dashboard-status-dot-success {
      background: #10b981;
    }

    .dashboard-status-dot-orange {
      background: #fb923c;
    }

    .dashboard-status-dot-indigo {
      background: #818cf8;
    }

    .dashboard-status-dot-red {
      background: #f87171;
    }

    .dashboard-status-count-muted {
      color: #94a3b8;
    }

    .dashboard-status-count-cyan {
      color: #22d3ee;
    }

    .dashboard-status-count-green {
      color: #34d399;
    }

    .dashboard-status-count-yellow {
      color: #fbbf24;
    }

    .dashboard-status-count-success {
      color: #10b981;
    }

    .dashboard-status-count-orange {
      color: #fb923c;
    }

    .dashboard-status-count-indigo {
      color: #818cf8;
    }

    .dashboard-status-count-red {
      color: #f87171;
    }
