/* Rahmah v2: banners and callouts not covered by the per-screen sheets.
   Square surfaces, a 3px Fig rule on the start edge, no gradients or shadows, AA text.
   Selectors are class or exact-inline-style matches, so nothing outside these elements changes.
   Scoped sheets that load earlier use id selectors and still win where they apply. */

/* Video / review / iddah banners (also used by #dash-review-status-banner and #dash-iddah-notice on the dashboard) */
.video-reminder-banner { background: var(--bym-surface-soft); border: 1px solid var(--bym-rule); border-inline-start: 3px solid var(--bym-primary); border-radius: 0; padding: 14px 16px; font-size: 1rem; line-height: 1.5; color: var(--bym-text); }
.video-reminder-banner strong { color: var(--bym-primary); font-weight: 600; }
.video-reminder-banner a.vrb-cta { display: inline-flex; align-items: center; min-height: 44px; color: var(--bym-primary); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.video-reminder-banner a.vrb-cta:hover { text-decoration-thickness: 2px; }
.video-reminder-banner.dash-pending-intro { background: var(--bym-surface-soft); border-color: var(--bym-rule); border-inline-start-color: var(--bym-success); }
.video-reminder-banner.dash-pending-intro strong { color: var(--bym-success); }
.video-reminder-banner :focus-visible { outline: 3px solid var(--bym-focus); outline-offset: 2px; }

/* Guidance disclaimer (inline-styled box on the guidance section) */
#guidance-disclaimer-banner { background: var(--bym-surface-soft) !important; border: 1px solid var(--bym-rule) !important; border-inline-start: 3px solid var(--bym-primary) !important; border-radius: 0 !important; color: var(--bym-text) !important; font-size: 1rem !important; line-height: 1.55 !important; }

/* Chapter stripe and empty states */
.chapter-stripe-banner { background: var(--bym-surface-soft); color: var(--bym-primary); border-bottom: 1px solid var(--bym-rule); font-family: var(--font-ui); font-size: .875rem; font-weight: 600; letter-spacing: .04em; }
.tracker-empty { color: var(--bym-text-muted); font-style: normal; font-size: .9375rem; }

/* Reworded / new question notes on the dashboard chapter overview (the questionnaire sheet styles the same notes in its own screen) */
.ch-cleared-note, .ch-new-note { font-family: var(--font-display); font-size: .875rem; font-weight: 600; color: var(--bym-human-text); }

/* AI disclosure line above analyses */
.ai-disclosure { background: var(--bym-surface-soft); border: 1px solid var(--bym-rule); border-inline-start: 3px solid var(--bym-primary); border-radius: 0; color: var(--bym-text); font-size: .9375rem; line-height: 1.55; }

/* Pool matches banner (dashboard and pool screen) */
.pool-matches-banner-box { background: var(--bym-surface-soft); border: 1px solid var(--bym-rule); border-inline-start: 3px solid var(--bym-primary); border-radius: 0; color: var(--bym-text); font-size: 1rem; line-height: 1.5; padding-inline-end: 52px; }
.pool-matches-banner-box b { color: var(--bym-primary); }
.pool-matches-banner-dismiss { width: 44px; height: 44px; top: 0; right: 0; display: grid; place-items: center; color: var(--bym-primary); font-size: 1.5rem; cursor: pointer; }
.pool-matches-banner-dismiss:focus-visible { outline: 3px solid var(--bym-focus); outline-offset: -3px; }

/* Tag help and essentials help callout (one floating card shared by both) */
.tag-help-callout { background: var(--bym-surface); border: 1px solid var(--bym-border); border-inline-start: 3px solid var(--bym-primary); border-radius: 4px; box-shadow: none; font-family: var(--font-ui); }
.tag-help-callout .tag-help-label { font-family: var(--font-ui); font-size: var(--bym-text-xs, .8125rem); font-weight: 600; letter-spacing: 0; text-transform: none; }
.tag-help-callout .tag-help-label.red { color: var(--bym-error); }
.tag-help-callout .tag-help-label.amber { color: #7a5530; }
.tag-help-callout .tag-help-label.cherry { color: #8c4a47; }
.tag-help-callout .tag-help-label.essential { color: var(--bym-primary); }
.tag-help-callout .tag-help-text { font-family: var(--font-ui); font-size: .9375rem; line-height: 1.5; color: var(--bym-text); }
.tag-help-callout .tag-help-close { min-height: 44px; padding: 0 24px; border-radius: 4px; background: var(--bym-primary); background-image: none; color: var(--bym-on-primary); border: 1px solid var(--bym-primary); font-weight: 600; transform: none; }
.tag-help-callout :focus-visible { outline: 3px solid var(--bym-focus); outline-offset: 2px; }

/* Inline-styled old gold boxes: partner-profile-incomplete banner, resume-session card, Ready to Meet launch card.
   These are matched on their exact inline background so no other element is touched. */
div[style*="background:#fff8eb"] { background: var(--bym-surface-soft) !important; border: 1px solid var(--bym-rule) !important; border-inline-start: 3px solid var(--bym-primary) !important; border-radius: 0 !important; }
div[style*="background:#fff8eb"] [style*="color:#8a6020"], div[style*="background:#fff8eb"] [style*="color:#6a5020"] { color: var(--bym-text) !important; font-size: 1rem !important; }
div[style*="linear-gradient(135deg,#fdfaf3,#EFD8D0)"] { background: var(--bym-surface-soft) !important; border: 1px solid var(--bym-rule) !important; border-radius: 0 !important; }
div[style*="background:#fff8eb"] .btn { min-height: 44px !important; font-size: .9375rem !important; }
