/* Safety4Seniors: a practical reading guide, with a distinct place to act.
   Brand/activity: forest. Reading: paper. Caution: amber. No external assets. */
:root {
  --forest:#183f38;
  --ink:#253b35;
  --teal:var(--forest);
  --paper:#f6f2e8;
  --sheet:#fffdf6;
  --muted:#526159;
  --line:#cecdbb;
  --soft:#e7edde;
  --sage:#d6e2cd;
  --on-forest:#fffaf0;
  --caution-bg:#fff0cc;
  --caution-ink:#624316;
  --caution-line:#9a6b20;
  --control-line:#748276;
  --focus:#8c5b13;
}
html { font-size:18px; scroll-behavior:smooth; }
body { border-top:4px solid var(--forest); font-size:1rem; line-height:1.65; }
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible { outline-color:var(--focus); }
.wrap { width:min(1120px,calc(100% - 72px)); }
.site-header { padding:22px 0; gap:18px; border-bottom-color:var(--control-line); }
.brand { gap:12px; font-size:1.25rem; letter-spacing:-.5px; }
.brand-mark { display:block; width:48px; height:48px; padding:0; border-radius:0; background:transparent; }
.brand-name { font-family:Georgia,'Times New Roman',serif; line-height:1.3; }
.brand-caption { font-family:Arial,Helvetica,sans-serif; color:var(--muted); font-size:.72rem; font-weight:400; letter-spacing:0; margin-top:4px; }
.site-nav a { font-size:.88rem; padding:10px 14px; border:0; border-bottom:3px solid transparent; border-radius:6px 6px 0 0; }
.site-nav a:hover { background:var(--soft); }
.site-nav a[aria-current=page] { background:var(--forest); color:var(--on-forest); border-bottom-color:var(--forest); border-radius:6px; }
.site-nav a[aria-current=page]:focus-visible { outline-offset:4px; }
h1 { font-family:Georgia,'Times New Roman',serif; font-weight:400; line-height:1.1; }
.eyebrow { color:var(--forest); font-size:.72rem; font-weight:700; letter-spacing:1.5px; }
.lead { font-size:1.13rem; line-height:1.65; color:var(--muted); }
.primary,.secondary { border-radius:8px; min-height:54px; font-size:1rem; }
.primary { background:var(--forest); color:var(--on-forest); border-color:var(--forest); box-shadow:none; }
.primary:hover { background:#102e28; }
.secondary, textarea, .option, .self-check-option { border-color:var(--control-line); }
.secondary { background:var(--sheet); }
.welcome { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); gap:64px; align-items:center; max-width:none; padding:52px 0 44px; }
.welcome h1 { font-size:clamp(2.4rem,4.1vw,3.15rem); line-height:1.13; letter-spacing:-1.1px; margin:0 0 22px; }
.welcome h1 em { color:#506344; font-weight:400; }
.welcome .lead { max-width:480px; }
.welcome .small-note { font-size:.9rem; margin-top:18px; }
.home-check { padding:32px; background:var(--forest); color:var(--on-forest); border:1px solid var(--forest); border-radius:10px; }
.home-check > .eyebrow { margin:0 0 16px; color:var(--sage); }
.home-check h2 { font-family:Georgia,'Times New Roman',serif; font-size:1.65rem; font-weight:400; line-height:1.25; margin:0 0 14px; }
.home-check > p:not(.eyebrow) { font-size:1rem; margin:0 0 22px; }
.home-check .primary { min-width:230px; min-height:54px; margin-top:0; padding:14px 20px; background:var(--on-forest); border-color:var(--on-forest); color:var(--forest); }
.home-check .primary:hover { background:var(--sage); border-color:var(--sage); }
.home-check p.small-note { margin:20px 0 0; padding-top:18px; border-top:1px solid #6f8879; font-size:.85rem; color:var(--sage); }
.home-check a:focus-visible,.practice-round button:focus-visible,.practice-round summary:focus-visible,.practice-round a:focus-visible { outline-color:var(--on-forest); }
.section-heading { margin-bottom:10px; }
.section-heading h2 { font-family:Georgia,'Times New Roman',serif; font-weight:400; font-size:1.55rem; }
.task-section { max-width:none; }
.task-list { border-top:1px solid var(--line); }
.task-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:6px 28px; padding:24px 0; border-bottom:1px solid var(--line); text-decoration:none; }
.task-row h3 { font-size:1.1rem; line-height:1.4; margin:0; }
.task-row p { grid-column:1; margin:0; font-size:1rem; color:var(--muted); }
.task-row .card-action { grid-column:2; grid-row:1 / 3; display:flex; align-items:center; gap:14px; font-size:.95rem; text-decoration:underline; font-weight:700; color:var(--teal); }
.task-row:hover { background:var(--soft); }
.task-row:focus-visible { outline:3px solid var(--focus); outline-offset:4px; }
.plain-note { font-size:.9rem; margin-top:28px; padding:22px 0; }
.page-heading { padding:44px 0 28px; }
.page-heading h1 { font-size:clamp(1.9rem,3.4vw,2.65rem); letter-spacing:-.7px; }
.page-heading .lead { max-width:650px; }
.checker-layout { max-width:760px; }
.checker-heading { text-align:left; }
.checker-heading .lead { margin:0; }
.checker-heading .scope-note { border-left:3px solid var(--caution-line); padding-left:12px; font-size:.94rem; }
.submission-card { border:1px solid var(--line); border-top:4px solid var(--forest); padding:28px 34px; background:var(--sheet); border-radius:8px; box-shadow:0 3px 12px #183f3808; }
.form-topline { display:flex; align-items:center; gap:9px; padding-bottom:16px; border-bottom:1px solid var(--line); }
.form-intro { font-size:.85rem; }
.step-number { width:26px; height:26px; background:var(--soft); border-color:var(--control-line); font-size:.8rem; margin-right:8px; }
.channel-question { margin:22px 0; }
.channel-question legend,label { font-size:1rem; }
.option { border-radius:8px; font-size:1rem; min-height:52px; background:white; }
.option.active { background:var(--soft); color:var(--forest); border-color:var(--forest); }
.hint,#input-hint,.screenshot-hint,.form-footnote { font-size:.85rem; line-height:1.55; }
.channel-question .hint { margin-bottom:0; }
textarea { margin-top:10px; min-height:178px; font-size:1rem; background:white; border-radius:6px; padding:16px; }
.character-count { font-size:.75rem; }
.ocr-button { border-radius:8px; min-height:52px; font-size:.95rem; }
.ocr-tools { border-top:1px solid var(--line); padding-top:16px; margin-top:18px; }
#check-button { margin-top:12px; font-size:1rem; }
.form-footnote { text-align:center; margin-bottom:0; }
.checker-limits,#demo-tools { max-width:760px; border:0; border-top:1px solid var(--line); background:transparent; padding:0; margin-top:20px; }
.demo-tools > summary { min-height:54px; padding:16px 0; font-size:.95rem; }
.demo-tools > summary span { font-size:.85rem; }
.result { max-width:820px; margin:32px auto 0; }
.result > .eyebrow { margin-top:24px; }
.result-banner,.result-banner.mismatch,.result-banner.match.risky { color:var(--caution-ink); border:1px solid var(--caution-line); border-left-width:5px; background:var(--caution-bg); border-radius:8px; padding:26px; gap:20px; align-items:flex-start; }
.result-banner.match,.result-banner.unknown { color:var(--ink); background:var(--sheet); border-color:var(--control-line); border-left-color:var(--control-line); }
.result-banner h1 { font-size:clamp(1.65rem,3vw,2.25rem); line-height:1.2; letter-spacing:-.7px; margin:8px 0 12px; }
.state-label { font-size:.76rem; letter-spacing:1px; text-transform:uppercase; font-weight:700; }
.state-symbol { flex:0 0 42px; width:42px; height:42px; border-radius:50%; font-size:1.4rem; }
#result-description { font-size:1rem; line-height:1.6; margin:0; }
.action-note,.action-note.high-risk { color:var(--ink); display:block; padding:24px; border:1px solid var(--line); border-top:3px solid var(--forest); border-radius:8px; background:var(--sheet); margin:24px 0 20px; }
.action-note h2,.result-limits h2 { font-size:1.12rem; margin:0 0 14px; }
.action-groups { list-style:decimal; padding-left:26px; margin:0; display:block; }
.action-group { padding:18px 0 18px 8px; background:transparent; border:0; border-top:1px solid var(--line); border-radius:0; position:static; }
.action-group:first-child { border-top:0; padding-top:0; }
.action-group::marker { font-weight:700; color:var(--teal); }
.action-group::before { content:none; }
.action-group h3 { font-size:1.05rem; margin:0 0 8px; }
.group-reasons { list-style:none; padding:0; margin:0; font-size:.94rem; color:var(--muted); }
.group-reasons li + li { margin-top:6px; }
.protective-step { margin:12px 0 0; font-size:1rem; }
.result-limits { padding:18px 22px; border-left:3px solid var(--control-line); background:var(--soft); margin:20px 0 24px; }
.result-limits h2 { margin-bottom:6px; font-size:.96rem; }
.result-limits ul { list-style:none; margin:0; padding:0; font-size:.9rem; }
.group-reasons li,.result-limits li { overflow-wrap:anywhere; }
.result-limits li + li { margin-top:8px; }
.why,.evidence-details,.trusted-help { margin:0; border:0; border-top:1px solid var(--line); border-radius:0; background:transparent; padding:0; }
.why > summary,.evidence-details > summary,.trusted-help > summary { display:list-item; min-height:60px; padding:17px 4px; font-size:1rem; font-weight:700; color:var(--teal); }
.trusted-help > summary h2 { font-family:Arial,Helvetica,sans-serif; font-size:1rem; font-weight:700; }
.why[open],.evidence-details[open],.trusted-help[open] { padding-bottom:20px; }
.why-list { padding:0 0 0 22px; }
.why-list > li { font-size:1rem; padding:10px 0; border:0; background:transparent; }
.why-words,.why-quote,.why-source { font-size:.9rem; }
.trusted-body { padding:0 0 10px; }
.trusted-intro,.trusted-route p,.trusted-limit { font-size:.94rem; }
.trusted-routes { display:block; }
.trusted-route { padding:18px 0; border:0; border-bottom:1px solid var(--line); border-radius:0; background:transparent; }
.next-steps { padding:0; background:transparent; border-left:0; }
.next-steps ol,.next-steps .warning { font-size:.95rem; }
.recovery-link { padding:16px 20px; margin:22px 0; font-size:.95rem; border-radius:6px; background:var(--caution-bg); border-color:var(--caution-line); color:var(--caution-ink); }
.annotated { padding:0; }
.result-bottom { border-top:1px solid var(--line); padding-top:24px; margin-top:12px; }
.result-bottom .primary { width:100%; }
.urgent-step { color:var(--caution-ink); background:var(--caution-bg); border-color:var(--caution-line); border-left-width:5px; border-radius:8px; padding:22px; margin-bottom:28px; }
.urgent-step .step-number { color:var(--caution-ink); background:transparent; border-color:var(--caution-line); }
.urgent-step h2 { font-size:1.15rem; }
.urgent-step p { font-size:1rem; }
.recovery-layout { grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr); gap:44px; }
.recovery-layout h2 { font-size:1.35rem; }
.section-intro { font-size:.95rem; margin:8px 0 22px; }
.help-form { padding:0 0 22px; background:transparent; border:0; border-bottom:1px solid var(--line); border-radius:0; }
.help-form label { font-size:.98rem; }
.help-form .search-status { border-top:1px solid var(--line); margin-top:14px; padding-top:12px; }
.recovery-options { gap:0; }
.recovery-options > details { border:0; border-top:1px solid var(--line); padding:0; border-radius:0; background:transparent; }
.payment-routes details { border:0; border-left:2px solid var(--line); padding:0 0 0 18px; border-radius:0; background:transparent; }
.recovery-options summary { font-size:1rem; padding:20px 0; }
.recovery-options > details[open] > summary { color:var(--teal); }
.recovery-options > details[open] > .detail-body { padding:4px 18px 18px; background:var(--soft); border-radius:0 0 6px 6px; }
.topic-first { display:block; font-size:.88rem; font-weight:400; margin:7px 0 0 18px; line-height:1.55; color:var(--muted); }
.detail-body { font-size:.95rem; }
.detail-body .help-steps { padding-left:22px; }
.detail-body a.help-source { display:inline; font-size:.8rem; }
.topic-support { border-top:1px solid var(--control-line); margin-top:24px; padding-top:20px; }
.topic-support h3 { margin:0 0 12px; font-size:1.1rem; }
.topic-support p { margin:10px 0; }
.detail-body .topic-support .helpline-call { display:inline-flex; min-height:52px; padding:12px 18px; margin:8px 0; }
.topic-support .small-note { font-size:.85rem; }
.help-draft { font-size:.85rem; color:var(--caution-ink); background:var(--caution-bg); border-radius:4px; }
.helpline-option,.hotline-card { border-radius:8px; padding:22px; background:var(--sheet); border-color:var(--line); }
.helpline-first { background:var(--soft); border-color:#a8b49d; }
.helpline-call { background:var(--forest); border-color:var(--forest); color:var(--on-forest); }
.helpline-option p,.helpline-stack .helpline-option p { font-size:.94rem; }
.helpline-stack .helpline-option h2 { font-size:1.3rem; }
.helpline-call { font-size:1rem; }
.follow-through { gap:30px; padding:26px 0; margin-top:32px; border:0; border-top:1px solid var(--line); border-radius:0; background:transparent; }
.today-list label { font-size:.96rem; }
.learn-page { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.95fr); gap:0 44px; align-items:start; }
.learn-page > .page-heading,.learn-page > .page-jumps { grid-column:1 / -1; }
.signs-column { grid-column:1; grid-row:3; min-width:0; }
.signs-column .section-heading { margin-bottom:8px; }
.signs-column .section-heading h2 { font-size:1.55rem; }
.signs-column .section-heading p { margin:8px 0 0; font-size:.9rem; color:var(--muted); }
.signs-column .source-note { font-size:.85rem; margin:20px 0 0; }
.learning-grid { display:block; max-width:none; }
.lesson-card { padding:20px 0; border:0; border-top:1px solid var(--line); border-radius:0; background:transparent; }
.lesson-card h3 { font-family:Georgia,'Times New Roman',serif; font-weight:400; font-size:1.32rem; line-height:1.35; margin:0 0 10px; }
.lesson-card p { font-size:1rem; max-width:68ch; margin:8px 0 0; }
.lesson-card .lesson-action { border:0; border-left:3px solid #8a9b7a; margin-top:14px; padding:0 0 0 12px; font-size:1rem; }
.page-jumps { gap:8px 22px; }
.page-jumps a { font-size:.9rem; min-height:48px; padding:10px 4px; border:0; border-bottom:2px solid var(--control-line); border-radius:0; background:transparent; text-decoration:none; }
.page-jumps a:hover { background:var(--soft); border-bottom-color:var(--forest); text-decoration:underline; }
.learn-page > .practice-round { grid-column:2; grid-row:3; margin:0; padding:28px; color:var(--on-forest); background:var(--forest); border:1px solid var(--forest); border-radius:10px; }
.learn-page > .practice-round > h2 { margin-bottom:14px; }
.learn-page > .practice-round > .eyebrow { color:var(--sage); margin-bottom:12px; }
.learn-page > .practice-round > .section-intro { color:var(--on-forest); margin-bottom:22px; }
.learn-page .practice-item,.learn-page .practice-done { padding:0; border:0; border-radius:0; background:transparent; }
.learn-page .practice-count { color:var(--sage); font-size:.9rem; }
.learn-page .practice-message { padding:20px; border:0; border-left:3px solid var(--sage); border-radius:0 6px 6px 0; background:var(--sheet); color:var(--ink); }
.learn-page .practice-answer { border-color:var(--sage); border-radius:6px; background:var(--sheet); color:var(--ink); }
.learn-page .practice-answer a { text-decoration:underline; }
.learn-page .practice-answer a:focus-visible,.learn-page .practice-answer summary:focus-visible { outline-color:var(--focus); }
.learn-page .practice-choices { gap:10px; }
.learn-page .practice-choices button,.learn-page .practice-next { padding:12px 10px; background:var(--sheet); color:var(--forest); border-color:var(--sheet); }
.learn-page .practice-choices button:hover,.learn-page .practice-next:hover { background:var(--soft); border-color:var(--soft); }
.learn-page .practice-choices button[aria-pressed=true] { background:var(--sage); color:var(--forest); border-color:var(--sage); }
.learn-page .practice-done p { color:var(--on-forest); }
.learn-page > .scam-guide { grid-column:1 / -1; margin-top:48px; padding-top:36px; border-top:1px solid var(--line); }
.learn-page > .alone-note { grid-column:1 / -1; margin-top:40px; }
.practice-round,.scam-guide { margin-top:42px; }
.practice-list,.practice-done { max-width:820px; }
.practice-item,.practice-done { padding:22px; border-radius:4px; }
.practice-message { border-radius:4px; }
.practice-answer { border-radius:4px; }
.practice-round > h2,.scam-guide > h2,.alone-note h2 { font-size:1.65rem; }
.alone-note { border-radius:8px; background:var(--soft); border-color:#a8b49d; }
.practice-message { font-size:1.15rem; }
.practice-choices button,.practice-feedback,.practice-verdict { font-size:1rem; }
.practice-answer summary { font-size:.95rem; }
.guide-list { max-width:820px; }
.guide-list summary { font-size:1.05rem; }
.guide-list summary .guide-hook { font-size:.9rem; }
.reading-page { max-width:850px; }
.reading-page > section { border:0; margin:0 0 26px; }
.reading-page p { font-size:1rem; }
.about-essentials { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; max-width:none; margin:0 0 36px; padding:26px; border:1px solid var(--line); border-top:3px solid var(--forest); border-radius:8px; background:var(--sheet); }
.about-essential { padding:0 22px; background:transparent; border:0; border-left:1px solid var(--line); border-radius:0; min-width:0; }
.about-essential:first-child { border-left:0; padding-left:0; }
.about-essential:last-child { padding-right:0; }
.about-essential h2 { font-size:1.05rem; margin:0 0 12px; line-height:1.4; }
.about-essential p { font-size:1rem; margin:0; }
.result-definitions { gap:0; }
.result-definitions > div { padding:18px 0; border:0; border-top:1px solid var(--line); border-radius:0; background:transparent; }
.result-definitions dt { font-size:1rem; }
.result-definitions dd { font-size:.94rem; }
.about-more { border-top:1px solid var(--line); }
.about-more > summary { min-height:60px; padding:17px 0; font-weight:700; }
.about-more p { margin:0 0 18px; }
.site-footer { margin-top:42px; border-top:2px solid var(--forest); font-size:.9rem; padding:28px 0; }
.footer-brand { font-family:Georgia,'Times New Roman',serif; font-size:1.15rem; }
.footer-note { font-size:.75rem; max-width:260px; }
.result-scope { margin:14px 0 0; padding-top:12px; border-top:1px solid currentColor; font-size:.9rem; }
@media (max-width:1000px) { .site-header { flex-direction:column; align-items:flex-start; } .site-nav { width:100%; } .site-nav a { padding:10px 12px; } }
@media (max-width:760px) {
  .wrap { width:calc(100% - 36px); }
  .site-header { padding:18px 0 14px; gap:14px; }
  .brand-caption { display:none; }
  .site-nav { display:grid; grid-template-columns:1fr 1fr; gap:4px; }
  .site-nav a { font-size:.88rem; justify-content:flex-start; }
  .welcome { grid-template-columns:1fr; gap:28px; padding:34px 0 32px; }
  .welcome h1 { font-size:2.5rem; letter-spacing:-.8px; }
  .home-check { padding:24px; border-radius:10px; }
  .home-check .primary { width:100%; min-width:0; }
  .task-row { grid-template-columns:1fr; gap:8px; padding:20px 0; }
  .task-row .card-action { grid-column:1; grid-row:auto; justify-content:space-between; }
  .page-heading { padding:32px 0 24px; }
  .page-heading h1 { font-size:2.1rem; }
  .submission-card { padding:22px 18px; }
  .result-banner { padding:22px 18px; gap:12px; }
  .state-symbol { width:32px; height:32px; flex-basis:32px; font-size:1.15rem; }
  .result-banner h1 { font-size:1.8rem; }
  .action-note,.action-note.high-risk { padding:20px; }
  .recovery-layout,.follow-through { grid-template-columns:1fr; gap:26px; }
  .helpline-options { grid-template-columns:1fr; }
  .helpline-stack { gap:16px; }
  .follow-through { padding:22px 0; }
  .about-essentials { grid-template-columns:1fr; padding:22px; }
  .about-essential,.about-essential:first-child,.about-essential:last-child { padding:18px 0; border-left:0; border-top:1px solid var(--line); }
  .about-essential:first-child { border-top:0; padding-top:0; }
  .about-essential:last-child { padding-bottom:0; }
  .practice-choices { grid-template-columns:1fr; }
  .footer-note { text-align:left; max-width:none; }
}
@media (max-width:900px) {
  .learn-page { display:block; }
  .learn-page > .practice-round { margin-top:30px; padding:24px; }
  .learn-page > .scam-guide { margin-top:36px; padding-top:28px; }
  .welcome { gap:32px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media (forced-colors:active) {
  .result-banner,.action-group,.result-limits,.about-essential,.home-check,.learn-page > .practice-round { border:1px solid CanvasText; }
  .site-nav a[aria-current=page],.option.active,.learn-page .practice-choices button[aria-pressed=true] { outline:2px solid CanvasText; outline-offset:-4px; }
}
@media print {
  html { font-size:12pt; } body { background:white; }
  .wrap { width:100%; } .site-header,.site-footer { display:none!important; }
  .page-heading { padding-top:0; } .page-heading h1 { font-size:24pt; }
  .recovery-layout,.follow-through,.learn-page { display:block; }
  .home-check,.about-essentials,.learn-page > .practice-round { background:white; color:black; }
  .home-check *,.learn-page > .practice-round * { color:black!important; border-color:#555!important; }
  .action-group,.result-limits,.urgent-step,.help-topic-card,.helpline-option { background:white; break-inside:avoid; box-shadow:none; }
  .topic-support { break-inside:avoid; }
  .detail-body .topic-support .helpline-call { background:white; color:black; border-color:black; }
}
