/* Role-based Help guides (built by scripts/build-help.js from docs/manual/USER_MANUAL.md).
   Used inside the app's Help Center and by the standalone /help/<role>-guide.html pages. */
/* keep wide screenshots/tables from stretching the app's flex layout past the viewport */
.main:has(#help-body) { min-width:0; }
.help-bar { display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:space-between; margin-bottom:6px; }
.help-bar .tabs { margin-bottom:0; flex:1; min-width:0; overflow-x:auto; }
.help-bar .tab { white-space:nowrap; }
.help-actions { display:flex; gap:8px; flex-wrap:wrap; }
.help-doc { max-width:920px; line-height:1.7; }
.help-doc .help-lede { font-size:1.05rem; color:var(--muted); margin:14px 0 18px; }
.help-toc { background:var(--skytint); border:1px solid var(--border); border-radius:14px; padding:14px 18px; margin-bottom:24px; }
body.dark .help-toc { background:var(--panel); }
.help-toc .eyebrow { font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin-bottom:6px; }
.help-toc > ul { list-style:none; columns:2 280px; column-gap:28px; }
.help-toc > ul > li { break-inside:avoid; margin-bottom:10px; }
.help-toc ul ul { list-style:none; margin-top:4px; }
.help-toc ul ul li { font-size:.9rem; padding:1px 0; }
.help-doc h1, .help-doc h2, .help-doc h3 { font-family:var(--disp); line-height:1.25; scroll-margin-top:80px; }
.help-doc h1.help-part { font-size:1.5rem; color:var(--sky-deep); border-bottom:3px solid var(--sky); padding-bottom:6px; margin:34px 0 14px; }
.help-doc h1:not(.help-part) { font-size:1.35rem; margin:28px 0 12px; }
.help-doc h2 { font-size:1.2rem; margin:30px 0 10px; padding-top:14px; border-top:1px solid var(--border); }
.help-doc h3 { font-size:1.02rem; margin:20px 0 8px; }
.help-doc p, .help-doc ul, .help-doc ol, .help-doc table, .help-doc blockquote, .help-doc pre { margin:0 0 12px; }
.help-doc ul, .help-doc ol { padding-left:22px; }
.help-doc li { margin:3px 0; }
.help-doc img { max-width:100%; height:auto; border:1px solid var(--border); border-radius:10px; margin:8px 0 14px; box-shadow:0 2px 10px rgba(0,0,0,.06); display:block; }
.help-doc table { border-collapse:collapse; width:100%; font-size:.9rem; display:block; overflow-x:auto; }
.help-doc th, .help-doc td { border:1px solid var(--border); padding:7px 10px; vertical-align:top; text-align:left; }
.help-doc th { background:var(--skytint); color:var(--ink); text-transform:none; letter-spacing:0; font-size:.85rem; }
body.dark .help-doc th { background:var(--panel); color:var(--text); }
.help-doc td img { margin:0; max-width:260px; }
.help-doc code { background:var(--skytint); padding:1px 6px; border-radius:5px; font-size:.86em; }
body.dark .help-doc code { background:var(--panel); }
.help-doc pre { background:var(--abyss); color:#EAF6FC; padding:12px 14px; border-radius:10px; overflow-x:auto; font-size:.82rem; }
.help-doc pre code { background:none; color:inherit; padding:0; }
.help-doc blockquote { border-left:4px solid var(--gold); padding:6px 14px; background:rgba(212,168,83,.1); border-radius:0 8px 8px 0; }
.help-doc hr { border:none; border-top:1px solid var(--border); margin:22px 0; }
/* Standalone pages */
body.help-page { background:var(--bg); }
.help-page-head { position:sticky; top:0; z-index:5; display:flex; gap:14px; align-items:center; padding:10px 20px; background:var(--panel-solid); border-bottom:1px solid var(--border); }
.help-page-head span { flex:1; font-family:var(--disp); font-weight:600; color:var(--sky-deep); }
.help-page-main { max-width:960px; margin:0 auto; padding:26px 16px 60px; }
.help-title { font-family:var(--disp); font-size:2rem; }
@media (max-width:640px) {
  .help-bar .tabs { flex:1 1 100%; }
  .help-page-head span { display:none; }
  .help-page-head { justify-content:space-between; }
  .help-title { font-size:1.5rem; }
}
@media print {
  .help-page-head, .help-toc { display:none; }
  .help-doc img { page-break-inside:avoid; box-shadow:none; }
  .help-doc h1.help-part { page-break-before:always; }
}
