/* Layout — Phase 5 expands. Phase 1 minimal. */

.container { max-width: 1024px; margin: 0 auto; padding: 0 var(--sp-6); }
.container-sm { max-width: 720px; margin: 0 auto; padding: 0 var(--sp-6); }
.container-md { max-width: 880px; margin: 0 auto; padding: 0 var(--sp-6); }

/* Card */
.card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: var(--sp-6);
  box-shadow: var(--shadow);
}

/* Stack utilities */
.stack { display: flex; flex-direction: column; }
.stack-2 > * + * { margin-top: var(--sp-2); }
.stack-3 > * + * { margin-top: var(--sp-3); }
.stack-4 > * + * { margin-top: var(--sp-4); }
.stack-6 > * + * { margin-top: var(--sp-6); }

/* Row */
.row { display: flex; gap: var(--sp-4); }
.row-tight { display: flex; gap: var(--sp-2); }
.row-wide { display: flex; gap: var(--sp-6); justify-content: space-between; align-items: center; }

/* Hidden */
[hidden], .hidden { display: none !important; }
