/* Shared layout primitives; the host page owns route, auth and mount lifecycle. */
.mlma-ui .mlma-shell { width: min(var(--mlma-content-width), calc(100% - 40px)); margin-inline: auto; }
.mlma-ui .mlma-page { min-height: 100vh; padding-block: clamp(32px,6vw,64px); background-color: var(--mlma-black); color: var(--mlma-ink); }
.mlma-ui .mlma-page-header { display: flex; justify-content: space-between; align-items: end; gap: var(--mlma-space-6); margin-bottom: var(--mlma-space-8); }
.mlma-ui .mlma-page-title { max-width: 18ch; margin: 0; color: var(--mlma-ink); font-size: clamp(2.8rem,7.2vw,5rem); font-weight: 800; line-height: .94; letter-spacing: -.065em; text-wrap: balance; }
.mlma-ui .mlma-page-intro { max-width: 620px; margin: var(--mlma-space-3) 0 0; color: var(--mlma-muted); }
.mlma-ui .mlma-section { margin-block: var(--mlma-space-12); padding-block: var(--mlma-space-8); border-block-start: 1px solid var(--mlma-line); }
.mlma-ui .mlma-section-heading { display: flex; align-items: end; justify-content: space-between; gap: var(--mlma-space-4); margin-bottom: var(--mlma-space-4); }
.mlma-ui .mlma-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: var(--mlma-space-4); }
.mlma-ui .mlma-span-8 { grid-column: span 8; }
.mlma-ui .mlma-span-6 { grid-column: span 6; }
.mlma-ui .mlma-span-4 { grid-column: span 4; }
.mlma-ui .mlma-stack { display: grid; align-content: start; gap: var(--mlma-space-4); }
@media (max-width: 760px) {
  .mlma-ui .mlma-shell { width: min(var(--mlma-content-width), calc(100% - 28px)); }
  .mlma-ui .mlma-page { padding-block: 28px 48px; }
  .mlma-ui .mlma-page-header { align-items: start; flex-direction: column; gap: var(--mlma-space-4); margin-bottom: var(--mlma-space-6); }
  .mlma-ui .mlma-page-title { font-size: clamp(2.5rem,13vw,4rem); }
  .mlma-ui .mlma-section { margin-block: var(--mlma-space-8); padding-block: var(--mlma-space-6); }
  .mlma-ui :is(.mlma-span-8,.mlma-span-6,.mlma-span-4) { grid-column: span 12; }
}
