/* ═══════════════════════════════════════════════════════════════════
   Pages: Pricing / Guardian / Avatar Provider
   ═══════════════════════════════════════════════════════════════════ */

.pricing-grid,
.avatar-provider-grid,
.guardian-grid,
.guardian-features {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
  gap: var(--fluid-grid-gap);
}

.price-card h2,
.price-card h3 { margin: 0 0 8px; font-size: var(--fs-h3); line-height: var(--lh-h3); }

.price-card strong {
  display: block;
  margin-bottom: 12px;
  font-size: 1.5rem;
  color: var(--primary-700);
}

.price-card .button { margin-top: 10px; width: 100%; }
.fy-pricing-notice { margin: 0 0 var(--sp-5); padding: 14px 16px; border: 1px solid var(--border-default); border-radius: var(--radius-m); background: color-mix(in srgb, var(--surface) 88%, var(--primary-50)); color: var(--color-ink); line-height: 1.55; }
.fy-pricing-page .pricing-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }

.guardian-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
}

.status-card span {
  display: block;
  margin: 10px 0 4px;
  font-size: 2rem;
  font-weight: var(--weight-extrabold);
  color: var(--color-accent-600);
}

.guardian-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--sp-4); border-radius: var(--radius-sm); }
.guardian-actions h2,
.guardian-empty-state h2,
.guardian-data-heading h2,
.guardian-section-heading h2 { margin: 8px 0; font-size: var(--fs-h3); line-height: var(--lh-h3); }
.guardian-actions p { max-width: 58ch; }
.guardian-actions .form-actions { justify-content: flex-end; margin: 0; }
.guardian-empty-state,
.guardian-data-section,
.guardian-feature-section { margin-bottom: var(--sp-5); }
.guardian-empty-state { padding: clamp(22px, 4vw, 42px); border: 1px dashed color-mix(in srgb, var(--primary-500) 42%, var(--border-default)); border-radius: var(--radius-l); background: linear-gradient(135deg, color-mix(in srgb, var(--surface) 90%, var(--primary-50)), var(--surface)); }
.guardian-empty-state p { max-width: 64ch; margin-bottom: var(--sp-4); color: var(--color-ink-soft); line-height: 1.65; }
.guardian-demo-notice { display: flex; align-items: flex-start; gap: 10px; margin: 0 0 var(--sp-5); padding: 14px 16px; border: 1px solid color-mix(in srgb, var(--primary-500) 35%, var(--border-default)); border-radius: var(--radius-m); background: color-mix(in srgb, var(--surface) 90%, var(--primary-50)); color: var(--color-ink); line-height: 1.55; }
.guardian-demo-notice strong { white-space: nowrap; color: var(--primary-700); }
.guardian-data-heading { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-3); margin-bottom: var(--sp-3); }
.guardian-data-heading h2 { margin-bottom: 0; }
.guardian-data-source,
.guardian-demo-label { display: inline-flex; align-items: center; width: max-content; padding: 3px 8px; border-radius: 999px; background: color-mix(in srgb, var(--primary-100) 70%, white); color: var(--primary-700); font-size: var(--fs-caption); font-style: normal; font-weight: var(--weight-semibold); }
.status-card { position: relative; min-height: 172px; }
.status-card .guardian-demo-label { margin-top: 10px; }
.guardian-feature-section > .guardian-section-heading { max-width: 70ch; margin-bottom: var(--sp-4); }
.guardian-feature-section > .guardian-section-heading p { color: var(--color-ink-soft); }
.guardian-features article { display: flex; min-height: 170px; flex-direction: column; }
.guardian-features article em { margin-top: auto; padding-top: var(--sp-3); color: var(--color-ink-soft); font-size: var(--fs-caption); font-style: normal; }

.avatar-provider-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
}

.provider-card h3 { margin-bottom: 8px; }

.feature-list { display: grid; gap: 12px; }

.feature-list article,
.provider-card,
.price-card,
.status-card {
  padding: 18px;
  border: 1px solid var(--border-default);
  border-radius: var(--radius-sm);
  background: var(--surface);
  box-shadow: var(--shadow-card);
}

.feature-list strong,
.feature-list span,
.provider-card span { display: block; }

.feature-list span,
.provider-card span { margin-top: 6px; color: var(--color-ink-soft); }

/* Responsive */
@media (max-width: 1120px) {
  .pricing-grid,
  .guardian-grid,
  .guardian-features,
  .avatar-provider-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .pricing-grid,
  .guardian-grid,
  .guardian-features,
  .avatar-provider-grid { grid-template-columns: 1fr; }
  .guardian-actions { grid-template-columns: 1fr; }
  .guardian-actions .form-actions { justify-content: flex-start; }
  .guardian-actions .button { width: 100%; }
  .guardian-demo-notice { flex-direction: column; }
  .guardian-data-heading { align-items: flex-start; flex-direction: column; }
}
