/* Posture uses the same EA shell classes for consistent layout */
.pa-container { max-width: 720px; margin: 24px auto; padding: 0 16px; }
.pa-card { border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: var(--color-surface); }
.pa-card__inner { padding: 16px 18px; }
.pa-title { font-size: 22px; font-weight: 800; color: var(--color-fg); margin: 0 0 6px; }
.pa-subtle { color: var(--color-fg-muted); }

/* Ensure EA shell spacing looks right on posture page */
.ea-wrap { max-width: 720px; margin: 24px auto; padding: 0 16px; font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif; scroll-margin-top: 96px; }
.ea-title { margin: 0 0 4px; font-size: 28px; font-weight: 800; color: #0f172a; }
.ea-subtitle { margin: 0 12px 12px 0; color: #475569; font-size: 14px; }
.ea-step { margin-top: 16px; padding: 0; border: 0; border-radius: 0; background: transparent; color: #0f172a; }
.ea-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }

/* Utilities used by step content */
.ea-card__inner { padding: 12px 16px; }
.ea-section-h3 { font-size: 18px; font-weight: 900; margin: 16px 0 8px; }
.ea-subtle { color: #475569; font-size: 13px; }
/* Ensure labels/rows match Eligibility visual language */
.ea-group { margin-top: 14px; }
.ea-sec-hdr { margin-top:10px; margin-bottom:6px; font-size:14px; font-weight:700; color:#0f172a; display:flex; align-items:center; gap:6px; }
.ea-row { display:grid; grid-template-columns:max-content 1fr; column-gap:12px; row-gap:10px; align-items:center; background: rgba(255,255,255,0.55); border:1px solid #d0dbe9; border-radius:12px; padding:12px; }
.ea-label { display:inline-flex; align-items:center; gap:8px; background: rgba(255,255,255,0.55); border:1px solid #d0dbe9; padding:8px 10px; border-radius:8px; white-space: nowrap; }
.ea-hint { margin-top: 6px; font-size: 12px; color: #475569; }
.ea-opt { display: contents; }
.ea-opt .ea-label { grid-column:1; align-self:center; }
.ea-opt .ea-hint { grid-column:2; align-self:center; }
.ea-hint--inline { margin-top: 0; }

/* Results table */
.pa-table { width: 100%; border-collapse: collapse; margin: 8px 0 12px; }
.pa-table th, .pa-table td { padding: 8px 6px; border-bottom: 1px solid #e2e8f0; font-size: 14px; }
.pa-table th { text-align: left; color:#0f172a; font-weight:700; }
.pa-score { display:inline-block; min-width:44px; padding:2px 8px; border-radius:999px; font-weight:700; background:#e5e7eb; color:#111827; }
.pa-score--green { background:#dcfce7; color:#166534; }
.pa-score--amber { background:#ffedd5; color:#9a3412; }
.pa-score--red { background:#fee2e2; color:#991b1b; }

@media (max-width: 767px) {
  .ea-wrap { margin: 12px auto; padding: 0 12px; }
  .pa-table th, .pa-table td { padding: 6px 4px; font-size: 13px; }
}

/* Results shell (align with EA) */
.ea-results-shell { max-width: 820px; margin: 16px auto; padding: 0 12px; }
.ea-card { border:1px solid #d8e3f0; border-radius:12px; background: rgba(255,255,255,0.6); }
.ea-card__inner { padding: 12px 16px; }
.ea-row-between { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px; }
.ea-eyebrow { font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:#64748b; font-weight:700; }
.ea-title-sm { font-size:18px; font-weight:700; color:#0f172a; margin-bottom:6px; }
.ea-divider { height:1px; background:#e2e8f0; margin:12px 0; }
.ea-sub-hdr { margin-top:6px; margin-bottom:4px; font-size:13px; font-weight:700; color:#1f2937; }
.ea-list { list-style:disc; padding-left:20px; margin:0; }
.ea-list__item { font-size:13px; line-height:1.6; color:#334155; }
.ea-disclaimer { margin-top: 10px; }

/* Badge styles (parity with EA) */
.ea-badge { display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border-radius:999px; font-weight:800; font-size:14px; }
.ea-badge--essential { background:#fee2e2; color:#991b1b; }
.ea-badge--important { background:#ffedd5; color:#9a3412; }
.ea-badge--out { background:#dcfce7; color:#166534; }
