/* The Overview's panels (Components/Pages/Overview): one look for their heads and footers. Palette variables only, so light and dark mode both work; everything wraps down to 360px and wide tables scroll inside their own box. */ .mv-ov ::deep .mv-ov-panel { min-width: 0; } .mv-ov ::deep .mv-ov-panel__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; margin-bottom: 8px; } .mv-ov ::deep .mv-ov-panel__title { margin: 0; min-width: 0; overflow-wrap: anywhere; } .mv-ov ::deep .mv-ov-panel__controls { flex: 0 1 320px; min-width: 200px; } .mv-ov ::deep .mv-ov-panel__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 16px; margin-top: 4px; } .mv-ov ::deep .mv-ov-typelinks { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; font-size: 0.875rem; } /* The first column: the period's cost, and under it what needs attention, together as tall as the type cards. */ .mv-ov ::deep .mv-ov-lead { display: flex; flex-direction: column; gap: 12px; height: 100%; } .mv-ov ::deep .mv-ov-lead .mv-metric { height: auto; } .mv-ov ::deep .mv-ov-lead .mv-metric:only-child { height: 100%; } .mv-ov ::deep .mv-ov-attention { flex: 1 1 auto; min-width: 0; } .mv-ov ::deep .mv-ov-card { height: 100%; } /* In the narrow first column: the icon beside the words, the action under them. */ .mv-ov ::deep .mv-ov-attention .mv-attention__item { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 8px; align-items: start; } .mv-ov ::deep .mv-ov-attention .mv-attention__icon { margin-top: 2px; } .mv-ov ::deep .mv-ov-attention .mv-attention__action { grid-column: 2; } /* The change table and the composition: names and status words wrap, amounts do not. The tone classes win over the table cell's own text colour; the total row is set apart. */ .mv-ov ::deep .mv-ov-amount { white-space: nowrap; } .mv-ov ::deep .mv-ov-changes th.mv-num, .mv-ov ::deep .mv-ov-changes td.mv-num, .mv-ov ::deep .mv-ov-composition th.mv-num, .mv-ov ::deep .mv-ov-composition td.mv-num { text-align: right; } .mv-ov ::deep .mv-ov-changes td.mv-change-good { color: var(--mud-palette-success); } .mv-ov ::deep .mv-ov-changes td.mv-change-bad { color: var(--mud-palette-error); } .mv-ov ::deep .mv-ov-changes td.mv-change-neutral { color: var(--mud-palette-text-secondary); } .mv-ov ::deep .mv-ov-total > td { font-weight: 600; border-top: 2px solid var(--mud-palette-lines-default); } @media (min-width: 600px) { .mv-ov ::deep .mv-ov-changes td.mv-num, .mv-ov ::deep .mv-ov-composition td.mv-num { white-space: nowrap; } } @media (max-width: 599.98px) { .mv-ov ::deep .mv-ov-changes .mud-table-row + .mud-table-row > td:first-child, .mv-ov ::deep .mv-ov-composition .mud-table-row + .mud-table-row > td:first-child { border-top: 1px solid var(--mud-palette-lines-default); } }