/* © 2026 Fine Print News. All rights reserved. See LICENSE.txt.
   Reporter's Notebook styles.
   Uses the app's color tokens when present; falls back to its light palette otherwise. */
.rn{--rn-surface:var(--surface,#fff);--rn-bg:var(--bg,#F3F5F4);--rn-ink:var(--ink,#14201D);--rn-muted:var(--muted,#5B6B67);
  --rn-line:var(--line,#D9E0DE);--rn-accent:var(--accent,#0D5C6E);--rn-accent-soft:var(--accent-soft,#DCEBEE);
  --rn-mark:var(--mark,#DDE4FF);--rn-yes:var(--yes,#12907E);--rn-partly:var(--partly,#8B7BEA);--rn-partly-soft:color-mix(in srgb,var(--rn-partly) 16%,var(--rn-surface));
  --rn-no:#566476;--rn-no-soft:#E9EEF4;
  font-family:var(--body,"IBM Plex Sans",system-ui,sans-serif);color:var(--rn-ink);display:grid;gap:14px;
  border:1px solid var(--rn-line);border-radius:8px;background:var(--rn-surface);padding:16px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .rn{--rn-no:#A9B6C8;--rn-no-soft:#1A2536}}
:root[data-theme="dark"] .rn{--rn-no:#A9B6C8;--rn-no-soft:#1A2536}
.rn *{box-sizing:border-box}
.rn-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}
.rn-kicker{font:500 .7rem var(--mono,ui-monospace,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--rn-accent)}
.rn-progress{display:flex;gap:12px;list-style:none;margin:0;padding:0;font-size:.78rem;color:var(--rn-muted)}
.rn-progress li{display:flex;align-items:center;gap:5px}
.rn-n{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;border:1px solid var(--rn-line);font-size:.68rem}
.rn-progress .current{color:var(--rn-ink);font-weight:600}
.rn-progress .current .rn-n{background:var(--rn-accent);border-color:var(--rn-accent);color:var(--rn-surface)}
.rn-progress .done .rn-n{background:var(--rn-accent-soft);border-color:var(--rn-accent-soft);color:var(--rn-accent)}
.rn-step{display:grid;gap:12px}
.rn-role{margin:0;font-family:var(--display,Georgia,serif);font-size:1.1rem;line-height:1.35}
.rn-h{margin:0;font-size:.9rem;font-weight:600}
.rn-hint{margin:0;font-size:.82rem;color:var(--rn-muted)}
.rn-options{display:grid;gap:6px}
.rn-option{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--rn-line);border-radius:6px;cursor:pointer;font-size:.9rem;line-height:1.4}
.rn-option:has(input:checked){border-color:var(--rn-accent);background:var(--rn-accent-soft)}
.rn-option input{margin-top:3px;accent-color:var(--rn-accent)}
.rn-text{width:100%;border:1px solid var(--rn-line);border-radius:6px;background:var(--rn-bg);color:var(--rn-ink);font:inherit;padding:10px}
.rn-spot{display:flex;flex-wrap:wrap;gap:8px}
.rn-chip{border:1px solid var(--rn-line);background:transparent;color:var(--rn-ink);border-radius:999px;padding:8px 12px;font:500 .84rem inherit;font-family:inherit;cursor:pointer}
.rn-chip[aria-pressed="true"]{background:var(--rn-ink);color:var(--rn-surface);border-color:var(--rn-ink)}
.rn-result{flex:1 1 100%;border-radius:6px;padding:10px 12px;border-left:4px solid;font-size:.86rem;background:var(--rn-bg)}
.rn-result p{margin:4px 0 0;line-height:1.45}
.rn-result-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.rn-badge{font:600 .66rem inherit;font-family:inherit;letter-spacing:.05em;text-transform:uppercase;padding:2px 7px;border-radius:3px;white-space:nowrap}
.rn-yes{border-color:var(--rn-yes)} .rn-yes .rn-badge{color:var(--rn-yes);background:var(--rn-accent-soft)}
.rn-partly{border-color:var(--rn-partly)} .rn-partly .rn-badge{color:var(--rn-partly);background:var(--rn-partly-soft)}
.rn-no{border-color:var(--rn-no)} .rn-no .rn-badge{color:var(--rn-no);background:var(--rn-no-soft)}
.rn-verdict{font-weight:600;color:var(--rn-ink)}
.rn-established{background:var(--rn-accent-soft);border-radius:6px;padding:12px 14px;display:grid;gap:6px}
.rn-established ul{margin:0;padding-left:18px;font-size:.88rem;display:grid;gap:4px}
.rn-quote{margin:0;font-family:var(--display,Georgia,serif);font-size:1.05rem;background:linear-gradient(transparent 60%,var(--rn-mark) 60%);justify-self:start;padding:0 3px}
.rn-find{display:grid;gap:8px}
.rn-link{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--rn-line);border-radius:6px;text-decoration:none;color:var(--rn-ink);font-size:.86rem}
.rn-link strong{color:var(--rn-accent)}
.rn-link span{color:var(--rn-muted)}
.rn-link.seen{border-style:dashed}
.rn-link.seen strong::after{content:"  · opened";font-weight:400;color:var(--rn-muted)}
.rn-done dl{margin:0;display:grid;gap:4px;font-size:.9rem}
.rn-done dt{font:500 .68rem var(--mono,ui-monospace,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--rn-muted);margin-top:6px}
.rn-done dd{margin:0}
.rn-nav{display:flex;gap:8px;flex-wrap:wrap}
.rn-btn{background:var(--rn-ink);color:var(--rn-surface);border:0;border-radius:6px;padding:9px 14px;font:600 .85rem inherit;font-family:inherit;cursor:pointer}
.rn-btn:disabled{opacity:.4;cursor:not-allowed}
.rn-ghost{background:transparent;color:var(--rn-ink);border:1px solid var(--rn-line)}
.rn button:focus-visible,.rn a:focus-visible,.rn input:focus-visible,.rn textarea:focus-visible{outline:2px solid var(--rn-accent);outline-offset:2px}
.rn-cta{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--accent,#3B5BDB);background:transparent;color:var(--accent,#3B5BDB);
  border-radius:999px;padding:8px 14px 8px 8px;font:600 .85rem var(--body,system-ui,sans-serif);cursor:pointer}
.rn-cta[aria-expanded="true"]{background:var(--accent,#0D5C6E);color:var(--surface,#fff)}
.rn-cta-icon{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--mark,#DDE4FF);color:var(--mark-ink,#1B2A6B);font-weight:700;font-size:.8rem}
.rn-cta:focus-visible{outline:2px solid var(--accent,#0D5C6E);outline-offset:2px}
.rn-panel{margin-top:12px}
.rn-cta-text{display:grid;text-align:left;line-height:1.2}
.rn-cta-text strong{font-weight:600}
.rn-cta-text small{font-size:.72rem;font-weight:500;opacity:.75}
.rn-community{display:grid;gap:10px;border-top:1px dashed var(--rn-line);padding-top:12px}
.rn-bars{display:grid;gap:9px}
.rn-barrow{display:grid;gap:4px}
.rn-barlabel{display:flex;justify-content:space-between;gap:10px;font-size:.84rem}
.rn-pct{font-variant-numeric:tabular-nums;font-weight:600}
.rn-bartrack{height:8px;border-radius:4px;background:var(--rn-line);overflow:hidden}
.rn-barfill{display:block;height:100%;border-radius:4px;background:var(--rn-accent)}
.rn-fill-yes{background:var(--rn-yes)} .rn-fill-partly{background:var(--rn-partly)} .rn-fill-no{background:var(--rn-no)}
.rn-error{border-color:var(--rn-no);color:var(--rn-no);font-size:.85rem}

/* ---- "What's missing?" swipeable cards ---- */
.rn{padding:14px 0 12px;gap:10px;overflow:hidden}
.rn-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;align-items:flex-start;outline:none;overscroll-behavior-x:contain}
.rn-track::-webkit-scrollbar{display:none}
.rn-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;padding:0 16px}
.rn-card{display:grid;gap:12px}
.rn-title{margin:0;font-family:var(--display,Georgia,serif);font-weight:800;font-size:1.25rem;letter-spacing:-.02em;line-height:1.15}
.rn-lede{margin:0;font-size:.93rem;line-height:1.5;max-width:60ch}
.rn-results{display:grid;gap:8px}
.rn-swipe{margin:0;font-size:.8rem;color:var(--rn-muted);font-weight:500}
.rn-established{margin:0;padding:12px 14px 12px 30px;background:var(--rn-accent-soft);border-radius:10px;display:grid;gap:6px;font-size:.92rem}
.rn-group{margin:6px 0 0;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--rn-muted)}
.rn-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 16px}
.rn-arrow{width:34px;height:34px;border-radius:50%;border:1px solid var(--rn-line);background:transparent;color:var(--rn-ink);font-size:1rem;cursor:pointer;display:grid;place-items:center}
.rn-arrow:disabled{opacity:.3;cursor:default}
.rn-dots{display:flex;gap:6px;align-items:center}
.rn-dot{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:var(--rn-line);cursor:pointer;transition:width .2s ease,background .2s ease}
.rn-dot[aria-selected="true"]{width:22px;background:var(--rn-accent)}
.rn-community{border:0;padding:0}
@media (prefers-reduced-motion:reduce){.rn-track{scroll-behavior:auto}.rn-dot{transition:none}}
.rn-track{transition:height .25s ease;overflow-y:hidden}
.rn .rn-badge{text-transform:none;letter-spacing:0;font-size:.72rem;font-weight:600}
.rn-result-top strong{min-width:0}
@media (prefers-reduced-motion:reduce){.rn-track{transition:none}}

/* ---- calmer results + clear navigation (UX pass) ---- */
.rn-results{gap:0;border:1px solid var(--rn-line);border-radius:12px;overflow:hidden}
.rn-row{border-top:1px solid var(--rn-line)}
.rn-row:first-child{border-top:0}
.rn-row summary{list-style:none;display:flex;align-items:center;gap:10px;padding:11px 12px;cursor:pointer;font-size:.9rem}
.rn-row summary::-webkit-details-marker{display:none}
.rn-row[open] summary{background:var(--rn-bg)}
.rn-row p{margin:0;padding:2px 12px 12px 30px;font-size:.86rem;line-height:1.5;color:var(--rn-muted);background:var(--rn-bg)}
.rn-row-label{flex:1;min-width:0;font-weight:500}
.rn-you{font-weight:400;color:var(--rn-muted);font-size:.8rem}
.rn-dotmark{flex:none;width:8px;height:8px;border-radius:50%}
.rn-row.rn-yes .rn-dotmark{background:var(--rn-yes)} .rn-row.rn-partly .rn-dotmark{background:var(--rn-partly)} .rn-row.rn-no .rn-dotmark{background:var(--rn-no)}
.rn-row .rn-badge{flex:none;background:transparent!important;padding:0;font-size:.74rem}
.rn-controls{padding:4px 16px 0}
.rn-back{background:none;border:0;color:var(--rn-muted);font:500 .85rem inherit;font-family:inherit;padding:10px 4px;cursor:pointer;min-width:44px;text-align:left}
.rn-next{background:var(--rn-ink);color:var(--rn-surface);border:0;border-radius:999px;padding:10px 16px;font:600 .85rem inherit;font-family:inherit;cursor:pointer;white-space:nowrap}
.rn-dots{flex:1;justify-content:center}
.rn-dot{position:relative}
.rn-dot::after{content:"";position:absolute;inset:-10px -4px}
.rn-cta.done .rn-cta-icon{background:var(--rn-yes);color:#fff}
.rn-cta.done .rn-cta-icon::before{content:"✓"} .rn-cta.done .rn-cta-icon{font-size:0} .rn-cta.done .rn-cta-icon::before{font-size:.8rem}
.rn-back:focus-visible,.rn-next:focus-visible,.rn-row summary:focus-visible{outline:2px solid var(--rn-accent);outline-offset:2px}

/* given → missing → overview */
.rn-sub{margin:4px 0 0;font-size:.74rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--rn-muted)}
.rn-qs{margin:0;padding-left:18px;display:grid;gap:6px;font-size:.92rem}
.rn-more summary{cursor:pointer;font-size:.86rem;font-weight:600;color:var(--rn-accent);padding:6px 0}
.rn-more .rn-find{margin-top:6px}
