/* ==========================================================================
   Layout Components: Container, Grid, Stack (MUI-inspired)
   ========================================================================== */

/* 1. Container */
.mc-container {
  width: 1140px;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  box-sizing: border-box;
}

.mc-container--fluid {
  max-width: 100%;
  padding-left: 32px;
  padding-right: 32px;
}

.mc-container--sm {
  max-width: 860px;
}

.mc-container--lg {
  max-width: 1400px;
}

/* 2. Responsive Grid */
.mc-grid {
  display: grid;
  gap: 28px;
  width: 100%;
}

.mc-grid--1 { grid-template-columns: 1fr; }
.mc-grid--2 { grid-template-columns: repeat(2, 1fr); }
.mc-grid--3 { grid-template-columns: repeat(3, 1fr); }
.mc-grid--4 { grid-template-columns: repeat(4, 1fr); }

/* Responsive Grid Breakpoints */
@media (max-width: 1024px) {
  .mc-grid--4 { grid-template-columns: repeat(2, 1fr); }
  .mc-grid--3 { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
  .mc-grid--4,
  .mc-grid--3,
  .mc-grid--2 {
    grid-template-columns: 1fr;
  }
}

/* 3. Stack (Flex Container) */
.mc-stack {
  display: flex;
  gap: 16px;
}

.mc-stack--row { flex-direction: row; align-items: center; }
.mc-stack--col { flex-direction: column; }
.mc-stack--wrap { flex-wrap: wrap; }
.mc-stack--center { justify-content: center; }
.mc-stack--between { justify-content: space-between; }
