/* BeforeMechanic AI Reports — form.css
   Inherits theme tokens (--bm-*) when the BeforeMechanic theme is active,
   with fallbacks so it also looks right on other themes. */

.bmar-app {
  --bmar-accent: var(--bm-accent, #2bd9b4);
  --bmar-accent2: var(--bm-accent-2, #4d8cff);
  --bmar-surface: var(--bm-surface, #141b2e);
  --bmar-border: var(--bm-border, #243049);
  --bmar-text: var(--bm-text, #eaf0fb);
  --bmar-text-soft: var(--bm-text-soft, #aab6cf);
  --bmar-text-dim: var(--bm-text-dim, #6c7a98);
  --bmar-bg: var(--bm-bg, #0a0e1a);
}

/* Tier selector */
.bmar-tier-select { margin-bottom: 8px; }
.bmar-tier-label {
  display: block; font-size: .88rem; font-weight: 600;
  color: var(--bmar-text); margin-bottom: 10px;
}
.bmar-tier-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.bmar-tier-opt {
  display: flex; flex-direction: column; align-items: center; gap: 3px;
  padding: 14px 10px; border-radius: 12px; cursor: pointer;
  background: var(--bmar-bg); color: var(--bmar-text-soft);
  border: 1px solid var(--bmar-border);
  font-family: inherit; transition: all .2s ease;
}
.bmar-tier-opt:hover { border-color: var(--bmar-accent); }
.bmar-tier-opt.is-active {
  border-color: var(--bmar-accent);
  background: rgba(43, 217, 180, .08);
  box-shadow: 0 0 0 1px var(--bmar-accent);
}
.bmar-tier-opt .t { font-weight: 700; font-size: .98rem; color: var(--bmar-text); }
.bmar-tier-opt .p { font-size: .85rem; color: var(--bmar-text-dim); }
.bmar-tier-opt.is-active .p { color: var(--bmar-accent); }

/* Error */
.bmar-form-error {
  margin-top: 18px; padding: 12px 16px; border-radius: 10px;
  background: rgba(255, 90, 110, .1); border: 1px solid rgba(255, 90, 110, .3);
  color: #ff8a98; font-size: .92rem;
}

/* Loading */
.bmar-loading {
  text-align: center; padding: 48px 24px;
  background: var(--bmar-surface); border: 1px solid var(--bmar-border);
  border-radius: 18px;
}
.bmar-loading p { color: var(--bmar-text); font-weight: 600; margin: 18px 0 6px; }
.bmar-loading small { color: var(--bmar-text-dim); display: block; max-width: 420px; margin: 0 auto; }
.bmar-spinner {
  width: 46px; height: 46px; margin: 0 auto;
  border: 3px solid var(--bmar-border);
  border-top-color: var(--bmar-accent);
  border-radius: 50%;
  animation: bmar-spin .8s linear infinite;
}
@keyframes bmar-spin { to { transform: rotate(360deg); } }

/* Result wrapper spacing */
.bmar-result { margin-top: 4px; }

/* Validation note (admin/preview) */
.bmar-validation-note {
  margin-top: 16px; padding: 12px 16px; border-radius: 10px;
  background: rgba(43,217,180,.08); border: 1px solid rgba(43,217,180,.25);
  color: var(--bmar-text-soft); font-size: .88rem;
}

@media (max-width: 560px) {
  .bmar-tier-options { grid-template-columns: 1fr; }
}

/* Theme-matched admin test + consent blocks */
.bmar-test-banner {
  margin: 0 0 18px;
  padding: 14px 16px;
  border-radius: var(--bm-radius-sm, 12px);
  border: 1px solid rgba(43,217,180,.28);
  background: rgba(43,217,180,.08);
  color: var(--bmar-text-soft);
}
.bmar-test-banner strong { color: var(--bmar-accent); }
.bmar-consent {
  margin-top: 18px;
  padding: 14px 16px;
  border-radius: var(--bm-radius-sm, 12px);
  border: 1px solid var(--bmar-border);
  background: rgba(255,255,255,.025);
}
.bmar-consent label {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  color: var(--bmar-text-soft);
  font-size: .9rem;
  line-height: 1.55;
}
.bmar-consent input { margin-top: 4px; flex: 0 0 auto; }
.bmar-turnstile-wrap { margin-top: 18px; }


/* Dynamic pricing shortcode */
.bmar-pricing{margin:28px 0}.bmar-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.bmar-price-card{background:#fff;border:1px solid rgba(15,23,42,.10);border-radius:22px;padding:24px;box-shadow:0 14px 40px rgba(15,23,42,.08);display:flex;flex-direction:column;gap:12px}.bmar-price-card.is-featured{border-color:rgba(37,99,235,.45);box-shadow:0 18px 50px rgba(37,99,235,.16)}.bmar-price-card h3{margin:0;font-size:24px;line-height:1.2}.bmar-price-tag{display:inline-flex;align-self:flex-start;border-radius:999px;background:#eef4ff;color:#1d4ed8;font-weight:700;font-size:12px;padding:6px 10px}.bmar-price-amount{font-size:34px;font-weight:800;letter-spacing:-.03em}.bmar-price-amount span{font-size:15px;font-weight:700;color:#64748b;letter-spacing:0}.bmar-price-best{color:#475569;margin:0}.bmar-price-card ul{padding-left:19px;margin:4px 0 10px;color:#334155}.bmar-price-card li{margin:7px 0}.bmar-pricing-note{margin-top:16px;color:#64748b;font-size:14px}@media(max-width:900px){.bmar-pricing-grid{grid-template-columns:1fr}.bmar-price-card{padding:20px}}
