.container,
main.container,
.content-container {
  width: min(100%, var(--v-page-max-width));
  margin-inline: auto;
  padding: calc(var(--v-header-h) + var(--v-section-gap)) var(--v-page-gutter) var(--v-section-gap);
}

.container > h1:first-of-type,
main > h1:first-of-type,
.page-title,
.content-title {
  margin: 0 0 var(--v-section-gap);
  color: var(--v-text-strong);
  font-family: var(--v-font-display);
  font-size: clamp(28px, 4vw, 48px);
  line-height: 1.05;
}

.dashboard,
.dashboard-user,
.settings-grid,
.apps-list {
  display: grid;
  gap: var(--v-panel-gap);
}

.panel,
.dashboard-box,
.card {
  position: relative;
  border: 1px solid var(--v-border);
  border-radius: var(--v-radius);
  background: var(--v-surface);
  color: var(--v-text);
  box-shadow: var(--v-shadow);
  overflow: hidden;
}

.panel,
.dashboard-box { padding: clamp(18px, 2.2vw, 30px); }
.panel + .panel { margin-top: var(--v-panel-gap); }
.panel-section > *:first-child { margin-top: 0; }
.panel-section > *:last-child { margin-bottom: 0; }
.text-muted { color: var(--v-text-muted); }
