MelissaRelatorios: chart + tabela 50/50 + min-height mobile
Wrappa "Sessoes por mes/semana" e "Sessoes no periodo" em .mr-charts-row flex 50/50 lado a lado em desktop. Mobile empilha (column) e a tabela ganha min-height: 360px pra nao colapsar pra ~50px em telas curtas. Chart wrap/skel viram flex: 1 dentro do card-chart pra acompanhar a altura compartilhada da row. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -429,8 +429,9 @@ onBeforeUnmount(() => {
|
|||||||
<span>{{ loadError }}</span>
|
<span>{{ loadError }}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="mr-charts-row">
|
||||||
<!-- Gráfico -->
|
<!-- Gráfico -->
|
||||||
<div class="mr-card">
|
<div class="mr-card mr-card--chart">
|
||||||
<div class="mr-card__head">
|
<div class="mr-card__head">
|
||||||
<div class="mr-card__icon">
|
<div class="mr-card__icon">
|
||||||
<i class="pi pi-chart-bar" />
|
<i class="pi pi-chart-bar" />
|
||||||
@@ -528,6 +529,7 @@ onBeforeUnmount(() => {
|
|||||||
</Column>
|
</Column>
|
||||||
</DataTable>
|
</DataTable>
|
||||||
</div>
|
</div>
|
||||||
|
</div><!-- /.mr-charts-row -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
@@ -912,6 +914,20 @@ onBeforeUnmount(() => {
|
|||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Row 50/50 — chart + tabela lado a lado em desktop */
|
||||||
|
.mr-charts-row {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
gap: 12px;
|
||||||
|
flex: 1;
|
||||||
|
min-height: 0;
|
||||||
|
}
|
||||||
|
.mr-charts-row > .mr-card {
|
||||||
|
flex: 1 1 50%;
|
||||||
|
min-width: 0;
|
||||||
|
min-height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
/* Card-base */
|
/* Card-base */
|
||||||
.mr-card {
|
.mr-card {
|
||||||
background: var(--m-bg-soft);
|
background: var(--m-bg-soft);
|
||||||
@@ -920,6 +936,22 @@ onBeforeUnmount(() => {
|
|||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
|
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
|
||||||
}
|
}
|
||||||
|
.mr-card--chart {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.mr-card--chart .mr-card__body {
|
||||||
|
flex: 1;
|
||||||
|
min-height: 0;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.mr-card--chart .mr-chart-wrap,
|
||||||
|
.mr-card--chart .mr-chart-skel {
|
||||||
|
flex: 1;
|
||||||
|
height: auto;
|
||||||
|
min-height: 200px;
|
||||||
|
}
|
||||||
.mr-card--table {
|
.mr-card--table {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
min-height: 0;
|
min-height: 0;
|
||||||
@@ -1165,5 +1197,20 @@ onBeforeUnmount(() => {
|
|||||||
.mr-page__title-icon { display: none; }
|
.mr-page__title-icon { display: none; }
|
||||||
.mr-menu-btn--mobile-only { display: inline-flex; }
|
.mr-menu-btn--mobile-only { display: inline-flex; }
|
||||||
.mr-stats { grid-template-columns: repeat(3, 1fr); }
|
.mr-stats { grid-template-columns: repeat(3, 1fr); }
|
||||||
|
/* Em mobile empilha chart + tabela; tabela ganha min-height pra
|
||||||
|
nao colapsar pra ~50px em telas curtas. */
|
||||||
|
.mr-charts-row {
|
||||||
|
flex-direction: column;
|
||||||
|
flex: 1 0 auto;
|
||||||
|
}
|
||||||
|
.mr-card--chart .mr-chart-wrap,
|
||||||
|
.mr-card--chart .mr-chart-skel {
|
||||||
|
height: 240px;
|
||||||
|
min-height: 240px;
|
||||||
|
}
|
||||||
|
.mr-card--table {
|
||||||
|
min-height: 360px;
|
||||||
|
flex: 1 0 360px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
Reference in New Issue
Block a user