/* ==========================================================================
   Medical Disclaimer (Views/Home/MedicalDisclaimer.cshtml). Additions on top of the
   shared legal layout (css/legal.css): the summary accent, the contraception callout,
   the "When to seek medical care" panel, helplines and the thin progress bar.
   Rules are `.md .x` (plus `.lg`) so they outrank mypariva.css and legal.css.
   ========================================================================== */

/* ---------- Thin reading progress (only on this page) ---------- */
.md .md-progress { position: fixed; z-index: 1100; top: 0; left: 0; right: 0; height: 3px; pointer-events: none; }
.md .md-progress span { display: block; height: 100%; width: 100%; background: var(--lp-madder); transform: scaleX(0); transform-origin: 0 50%; }

/* ---------- Hero ---------- */
.md .md-hero__sub { max-width: 60ch; font-size: 17px; line-height: 1.6; }
.md .md-hero__mark { width: 104px; height: 104px; }
.md .md-hero__heart { fill: rgba(var(--lp-madder-rgb), .08); stroke: var(--lp-madder); stroke-width: 2.5; stroke-linejoin: round; }
.md .md-hero__pulse { fill: none; stroke: var(--lp-madder); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }

/* ---------- Summary: a quiet berry accent, not a warning ---------- */
.md .md-summary { border-left: 3px solid var(--lp-madder); border-radius: 4px 16px 16px 4px; }
.md .md-summary p { color: var(--lp-ink); }

/* ---------- Factors list: two columns where there is room ---------- */
.md .lg-doc .md-factors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 28px; }
@media (max-width: 700px) { .md .lg-doc .md-factors { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Contraception callout (one of the two emphasised blocks) ---------- */
.md .md-callout { display: flex; gap: 14px; align-items: flex-start; margin-top: 16px; padding: 18px 20px; border-radius: 14px; background: rgba(var(--lp-madder-rgb), .07); border: 1px solid rgba(var(--lp-madder-rgb), .22); }
.md .md-callout > i { flex: 0 0 auto; font-size: 20px; line-height: 1.5; color: var(--lp-madder); }
.md .lg-doc .md-callout p { margin: 0; }
.md .md-callout + p { margin-top: 16px; }

/* ---------- When to seek medical care ---------- */
.md .md-care { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; margin-top: 20px; }
.md .md-care__group { padding: 20px 22px; border-radius: 16px; background: var(--lp-paper); border: 1px solid var(--lp-line); }
.md .md-care__group--urgent { background: rgba(var(--lp-madder-rgb), .07); border-color: rgba(var(--lp-madder-rgb), .3); }
.md .lg-doc .md-care h3, .md .lg-doc .md-support h3 { display: flex; align-items: flex-start; gap: 10px; font-family: var(--lp-sans); font-size: 16px; font-weight: 700; letter-spacing: 0; line-height: 1.35; color: var(--lp-ink); }
.md .md-care h3 i, .md .md-support h3 i { flex: 0 0 auto; margin-top: 1px; font-size: 18px; color: var(--lp-madder); }
.md .lg-doc .md-care ul { margin-top: 12px; gap: 8px; }
.md .lg-doc .md-care li { font-size: 16px; line-height: 1.55; }
.md .lg-doc .md-care__emergency { margin-top: 14px; padding-top: 12px; border-top: 1px solid rgba(var(--lp-madder-rgb), .2); font-size: 16px; }
.md .md-support { margin-top: 16px; padding: 20px 22px; border-radius: 16px; border: 1px solid var(--lp-line); }
.md .lg-doc .md-support h3 + p { margin-top: 8px; }
.md .lg-doc .md-support ul { margin-top: 12px; gap: 8px; }
.md .lg-doc .md-support ul + p { margin-top: 12px; }
@media (max-width: 760px) { .md .md-care { grid-template-columns: minmax(0, 1fr); } }
/* Phones: keep the tools on one row; both policies are linked in section 11 and the footer. */
@media (max-width: 560px) { .md .lg-tools a.lg-tool { display: none; } }

/* ---------- Acknowledgement + register ---------- */
.md .lg-doc .md-ack { margin-top: 20px; padding: 16px 20px; border-radius: 12px; background: var(--lp-paper); border: 1px solid var(--lp-line); font-size: 16px; }
.md .lg-doc .md-cta { margin-top: 20px; }
.md .lg-doc .md-cta .lp-btn { color: var(--lp-action-text); text-decoration: none; }
.md .lg-doc .md-cta .lp-btn:hover { color: var(--lp-surface); }

@media print {
  .md .md-progress, .md .md-cta { display: none !important; }
  .md .md-callout, .md .md-care__group, .md .md-support, .md .lg-doc .md-ack { background: none; border: 1px solid #bbb; }
  .md .md-care { display: block; }
  .md .md-care__group + .md-care__group { margin-top: 10pt; }
  .md .md-care__group, .md .md-support { break-inside: avoid; }
}
