.dashboard { padding: clamp(16px, 4vw, 26px); }
.dashboard h2 { margin: 0; }
.dashboard-grid { display: grid; gap: 22px; margin-top: 18px; }
.energy { display: flex; align-items: center; gap: 16px; }
.energy-ring {
  width: 108px;
  aspect-ratio: 1;
  flex: none;
  border-radius: 50%;
  padding: 9px;
  background: conic-gradient(#69c7ef var(--filled), #e7eff3 0);
}
.energy-ring > div {
  display: grid;
  place-content: center;
  text-align: center;
  height: 100%;
  border-radius: 50%;
  background: white;
}
.energy-ring strong { font-size: 1.35rem; }
.energy-ring span { font-size: .8rem; }
.energy-label { font-weight: 650; }
.energy-label .muted { font-weight: normal; }
.macro-chart {
  --carbs: #f5cc49;
  --proteins: #f29447;
  --fats: #a3d884;
  display: flex;
  align-items: center;
  gap: 16px;
}
.macro-pie { width: 108px; aspect-ratio: 1; flex: none; border-radius: 50%; background: #e7efe8; }
.macro-legend { display: grid; gap: 5px; padding: 0; margin: 6px 0 0; list-style: none; font-size: .88rem; }
.macro-legend li { display: flex; align-items: baseline; gap: 6px; }
.macro-legend small { white-space: nowrap; }
.macro-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--dot); flex: none; }
.entry-picker { display: grid; gap: 8px; min-width: 0; }
.entry-picker [hidden] { display: none; }
.entry-tabs { margin: 0; }
.entry-results { display: grid; gap: 5px; }
.entry-results:empty { display: none; }
.entry-results button { text-align: left; }
.entry-selected { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; padding: 10px; background: #f2f6f2; border-radius: 10px; }
.entry-selected strong { flex: 1; }
.entry-selected small { flex-basis: 100%; }
[data-entry-save]:disabled { opacity: .55; cursor: default; }
.catalog-filters { margin-top: 12px; }
.catalog-card .actions { margin-top: 12px; }
.catalog-card h3 { margin: 0; }
#moreFoods { margin-top: 14px; }
@media (min-width: 650px) {
  .dashboard-grid { grid-template-columns: 1fr 1fr; }
}
.diary-header { margin-bottom: 16px; }
.diary-header h1 { margin-bottom: 4px; }
.diary-header p { margin: 0 0 12px; }
.diary-header button:disabled { opacity: .55; cursor: default; }
dialog { max-height: calc(100dvh - 24px); overflow: auto; }
.dialog-toolbar { display: flex; justify-content: flex-end; margin-bottom: 8px; }
