.today-dashboard {
  max-width: 1480px;
}

.today-header,
.today-panel > header,
.today-empty-workspace {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
}

.today-header {
  margin-bottom: .65rem;
}

.today-header h1,
.today-panel h2,
.today-empty-workspace h2 {
  margin: 0;
}

.today-header h1 {
  font-size: 1.65rem;
}

.today-header p,
.today-panel header p,
.today-empty-workspace p {
  margin: .1rem 0 0;
  color: var(--muted);
  font-size: .72rem;
}

.today-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .3rem;
}

.today-empty-workspace {
  margin-bottom: .6rem;
  padding: .55rem .7rem;
  border: 1px solid var(--border);
  border-left: 3px solid var(--brand-teal);
  border-radius: var(--radius);
  background: var(--surface);
}

.today-priority-grid,
.today-work-grid {
  display: grid;
  gap: .55rem;
}

.today-priority-grid {
  grid-template-columns: minmax(0, 1.45fr) repeat(2, minmax(240px, .75fr));
}

.today-work-grid {
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, .8fr);
  margin-top: .55rem;
}

.today-panel {
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface);
  overflow: hidden;
}

.today-panel > header {
  min-height: 42px;
  padding: .4rem .55rem;
  border-bottom: 1px solid var(--border);
  background: var(--surface-muted);
}

.today-main-panel > header {
  border-left: 3px solid var(--brand-teal);
}

.today-panel h2 {
  font-size: .91rem;
}

.today-panel > header > strong {
  min-width: 1.8rem;
  color: var(--brand-teal);
  font-size: 1.05rem;
  text-align: right;
}

.today-task-row,
.today-compact-list a,
.today-project-attention a {
  color: inherit;
  text-decoration: none;
}

.today-task-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: .55rem;
  min-height: 42px;
  padding: .35rem .55rem;
  border-top: 1px solid var(--border);
}

.today-task-row:first-child,
.today-compact-list > :first-child,
.today-project-attention > :first-child {
  border-top: 0;
}

.today-task-row:hover,
.today-task-row:focus-visible,
.today-compact-list a:hover,
.today-compact-list a:focus-visible,
.today-project-attention a:hover,
.today-project-attention a:focus-visible,
.today-item-row:hover,
.today-item-row:focus-visible,
.today-project-row:hover,
.today-project-row:focus-visible {
  background: color-mix(in srgb, var(--brand-teal) 6%, var(--surface));
}

.today-task-row span,
.today-task-row strong,
.today-task-row small,
.today-compact-list span,
.today-compact-list small,
.today-project-row span,
.today-project-row small {
  min-width: 0;
}

.today-task-row strong,
.today-task-row small,
.today-compact-list strong,
.today-compact-list small,
.today-project-row strong,
.today-project-row small {
  display: block;
}

.today-task-row small,
.today-compact-list small,
.today-project-row small,
.today-item-row small {
  margin-top: .08rem;
  color: var(--muted);
  font-size: .64rem;
}

.today-task-row > span:last-child {
  text-align: right;
}

.today-task-row .task-status {
  display: inline-block;
  padding: .12rem .28rem;
  border-radius: 3px;
  font-size: .62rem;
}

.today-clear-state {
  display: grid;
  gap: .1rem;
  margin: 0;
  padding: .85rem .55rem;
  color: var(--muted);
  font-size: .72rem;
}

.today-clear-state strong {
  color: var(--text);
  font-size: .82rem;
}

.today-compact-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .45rem;
  padding: .31rem .5rem;
  border-top: 1px solid var(--border);
  font-size: .72rem;
}

.today-compact-list a > b {
  color: var(--brand-coral);
  font-size: .67rem;
  white-space: nowrap;
}

.today-more-link {
  display: block;
  padding: .3rem .5rem;
  border-top: 1px solid var(--border);
  color: var(--muted);
  font-size: .66rem;
  font-weight: 750;
  text-align: right;
}

.today-panel .compact-empty {
  margin: 0;
  padding: .65rem .5rem;
}

.today-items-table,
.today-project-table {
  min-width: 0;
}

.today-items-head,
.today-item-row {
  display: grid;
  grid-template-columns: minmax(150px, 1.1fr) minmax(180px, 1.2fr) 82px 94px;
  align-items: center;
  gap: .4rem;
  padding: .3rem .5rem;
}

.today-items-head,
.today-project-head {
  color: var(--muted);
  font-size: .59rem;
  font-weight: 800;
  text-transform: uppercase;
}

.today-item-row {
  border-top: 1px solid var(--border);
  color: inherit;
  font-size: .68rem;
  text-decoration: none;
}

.today-item-row strong,
.today-item-row small {
  display: block;
}

.today-project-attention a {
  display: block;
  padding: .34rem .5rem;
  border-top: 1px solid var(--border);
  font-size: .7rem;
}

.today-project-attention ul {
  display: flex;
  flex-wrap: wrap;
  gap: .15rem .85rem;
  margin: .14rem 0 0;
  padding-left: 1rem;
  color: var(--muted);
  font-size: .64rem;
}

.today-projects-panel,
.today-finance-panel {
  margin-top: .55rem;
}

.today-project-head,
.today-project-row {
  display: grid;
  grid-template-columns: minmax(160px, 1.35fr) 88px minmax(130px, 1fr) 62px 92px 118px 92px;
  align-items: center;
  gap: .4rem;
  padding: .32rem .55rem;
}

.today-project-row {
  border-top: 1px solid var(--border);
  color: inherit;
  font-size: .69rem;
  text-decoration: none;
}

.today-project-head span:not(:first-child),
.today-project-row > span:not(:first-child) {
  text-align: right;
}

.today-finance-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
}

.today-finance-kpis > div {
  padding: .45rem .6rem;
  border-right: 1px solid var(--border);
}

.today-finance-kpis > div:last-child {
  border-right: 0;
}

.today-finance-kpis dt {
  color: var(--muted);
  font-size: .63rem;
}

.today-finance-kpis dd {
  margin: .08rem 0 0;
  font-size: .92rem;
  font-weight: 850;
}

.today-finance-kpis small {
  display: block;
  margin-top: .08rem;
  color: var(--muted);
  font-size: .6rem;
  font-weight: 500;
}

@media (max-width: 1100px) {
  .today-priority-grid {
    grid-template-columns: minmax(0, 1.4fr) minmax(230px, .8fr);
  }

  .today-priority-grid > :last-child {
    grid-column: 1 / -1;
  }

  .today-project-table {
    overflow-x: auto;
  }

  .today-project-head,
  .today-project-row {
    min-width: 850px;
  }
}

@media (max-width: 760px) {
  .today-header,
  .today-panel > header,
  .today-empty-workspace {
    align-items: flex-start;
    flex-direction: column;
  }

  .today-priority-grid,
  .today-work-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .today-priority-grid > :last-child {
    grid-column: auto;
  }

  .today-items-table {
    overflow-x: auto;
  }

  .today-items-head,
  .today-item-row {
    min-width: 620px;
  }

  .today-finance-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .today-finance-kpis > div:nth-child(2) {
    border-right: 0;
  }

  .today-finance-kpis > div:nth-child(-n+2) {
    border-bottom: 1px solid var(--border);
  }
}
