/* ERP36T — knowledge base pages (/docs/), written by .tools/build-docs.py.
   Loaded after erp36t.css on the docs pages only. */

/* ---------- index: hero and search ---------- */
.kb-hero h1{font-size:clamp(30px,5vw,48px);margin-bottom:14px}
.kb-find input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}   /* Escape clears the search */
.kb-find{position:relative;margin-top:26px;max-width:580px}
.kb-find svg{position:absolute;left:16px;top:25px;transform:translateY(-50%);width:18px;height:18px;
  fill:none;stroke:#A19E99;stroke-width:2;stroke-linecap:round;pointer-events:none}
.kb-find input{width:100%;min-height:50px;padding:12px 16px 12px 46px;font:inherit;font-size:16px;color:#fff;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-lg);
  transition:border-color var(--e-fast),box-shadow var(--e-fast),background var(--e-fast)}
.kb-find input::placeholder{color:#A19E99}
.kb-find input:focus{outline:none;border-color:var(--accent);background:rgba(255,255,255,.12);box-shadow:0 0 0 3px rgba(253,126,40,.28)}
.kb-count{display:block;min-height:1.3em;margin-top:10px;font-size:13px;color:var(--muted-dark)}

/* ---------- index: document cards ---------- */
.kb-grid{display:grid;gap:18px;grid-template-columns:1fr}
@media(min-width:720px){.kb-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1040px){.kb-grid{grid-template-columns:repeat(3,1fr)}}
.kb-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:22px 22px 18px;
  background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);
  transition:transform var(--e-lift),box-shadow var(--e-lift),border-color var(--e-lift)}
.kb-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:#EBB58E}
.kb-card:focus-within{border-color:#EBB58E;box-shadow:var(--shadow-md)}
.kb-card .card-num{margin-bottom:10px}
.kb-card h2{font-size:20px;line-height:1.22;margin-bottom:10px}
/* the title link covers the whole card; the section links sit above it */
.kb-card h2 a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.kb-card h2 a:focus-visible{outline:none}
.kb-card h2 a:focus-visible::after{outline:2px solid var(--accent);outline-offset:3px}
.kb-desc{font-size:14px;color:var(--muted-light);margin-bottom:14px}
.kb-subs{display:flex;flex-direction:column;gap:1px;margin-bottom:14px;padding-top:12px;border-top:1px solid var(--border)}
.kb-subs a{position:relative;z-index:1;display:flex;gap:9px;align-items:baseline;margin-inline:-7px;padding:4px 7px;
  font-size:13.5px;line-height:1.4;color:var(--body-copy);border-radius:6px;transition:background var(--e-fast),color var(--e-fast)}
.kb-subs a::before{content:"";flex:none;width:5px;height:5px;border-radius:50%;background:var(--accent);transform:translateY(-2px)}
.kb-subs a:hover,.kb-subs a:focus-visible{background:rgba(253,126,40,.09);color:var(--ink);outline:none}
.kb-subs li.kb-hit a{background:rgba(253,126,40,.16);color:var(--ink);font-weight:600}
.kb-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:4px;
  font-size:12.5px;color:var(--muted-light)}
.kb-open{color:#B4540E;font-weight:600;white-space:nowrap}
.kb-none{margin-top:8px;padding:22px;text-align:center;color:var(--muted-light);background:var(--white);
  border:1px dashed var(--border);border-radius:var(--radius-lg)}
.kb-none a{color:#B4540E;text-decoration:underline;text-underline-offset:3px}

/* ---------- document page ---------- */
.kb-doc-hero h1{font-size:clamp(28px,4.4vw,42px);max-width:26ch;margin-bottom:12px}
.kb-doc-hero .eyebrow a{color:inherit;text-decoration:underline;text-decoration-color:rgba(255,145,69,.45);text-underline-offset:4px}
.kb-src{max-width:70ch;font-size:14px;line-height:1.55;color:var(--muted-dark)}
.kb-src a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:3px}
.kb-layout{display:grid;gap:28px;grid-template-columns:minmax(0,1fr)}
@media(min-width:1000px){.kb-layout{grid-template-columns:230px minmax(0,1fr);gap:52px}}
.kb-main{min-width:0}

/* "On this page": a sticky list beside the text on wide screens, a fold-out above it on narrow ones */
.kb-toc{display:none}
.kb-toc-cap{margin-bottom:10px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.kb-toc ol,.kb-toc-m ol{margin:0;padding:0;list-style:none;border-left:2px solid var(--border)}
.kb-toc a,.kb-toc-m a{display:block;margin-left:-2px;padding:6px 0 6px 14px;font-size:13.5px;line-height:1.35;
  color:var(--muted-light);border-left:2px solid transparent;transition:color var(--e-fast),border-color var(--e-fast)}
.kb-toc a:hover,.kb-toc-m a:hover{color:var(--ink)}
.kb-toc a.on{color:var(--ink);font-weight:600;border-left-color:var(--accent)}
.kb-toc-m{margin-bottom:26px;padding:0 16px;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg)}
.kb-toc-m summary{padding:13px 0;font-size:14.5px;font-weight:600;color:var(--ink);cursor:pointer}
.kb-toc-m ol{margin-bottom:14px}
@media(min-width:1000px){
  .kb-toc{display:block;position:sticky;top:calc(var(--header-h-min,56px) + 24px);align-self:start;
    max-height:calc(100vh - var(--header-h-min,56px) - 48px);overflow:auto;padding-right:4px}
  .kb-toc-m{display:none}
}

/* ---------- the rendered Markdown ---------- */
.kb-doc{max-width:80ch;font-size:16px;line-height:1.7;color:var(--body-copy)}
.kb-doc>*+*,.kb-doc li>*+*,.kb-doc blockquote>*+*{margin-top:1em}
.kb-doc h2,.kb-doc h3,.kb-doc h4{scroll-margin-top:calc(var(--header-h-min,56px) + 24px)}
.kb-doc h2{margin-top:2.2em;padding-top:1.1em;font-size:clamp(23px,3vw,28px);border-top:1px solid var(--border)}
.kb-doc>h2:first-child{margin-top:0;padding-top:0;border-top:0}
.kb-doc h3{margin-top:1.8em;font-size:20px}
.kb-doc h4{margin-top:1.5em;font-size:17px}
.kb-doc h2+*,.kb-doc h3+*,.kb-doc h4+*{margin-top:.7em}
.kb-anchor{margin-left:.35em;font-family:var(--sans);font-size:.75em;font-weight:500;color:var(--accent);
  opacity:0;transition:opacity var(--e-fast)}
.kb-doc h2:hover .kb-anchor,.kb-doc h3:hover .kb-anchor,.kb-doc h4:hover .kb-anchor,.kb-anchor:focus-visible{opacity:1}
.kb-doc a:not(.kb-anchor){color:#A94D0C;text-decoration:underline;text-decoration-color:rgba(253,126,40,.5);
  text-underline-offset:3px;overflow-wrap:anywhere}
.kb-doc a:not(.kb-anchor):hover{text-decoration-color:currentColor}
.kb-doc strong{font-weight:600;color:var(--ink)}
.kb-doc ul,.kb-doc ol{padding-left:1.45em}
.kb-doc ul{list-style:disc}
.kb-doc ul ul{list-style:circle}
.kb-doc ol{list-style:decimal}
.kb-doc li{margin-top:.4em}
.kb-doc li::marker{color:var(--accent)}
.kb-doc li>ul,.kb-doc li>ol{margin-top:.4em}
.kb-doc blockquote{margin-inline:0;padding:14px 20px;color:var(--ink-soft);background:var(--white);
  border-left:3px solid var(--accent);border-radius:0 var(--radius-lg) var(--radius-lg) 0}
.kb-doc code{padding:.12em .38em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em;
  background:rgba(26,26,26,.065);border-radius:4px;overflow-wrap:anywhere}
.kb-doc pre{padding:16px 18px;overflow-x:auto;color:#F2F1EE;background:var(--ink);border-radius:var(--radius-lg)}
.kb-doc pre code{padding:0;font-size:13.5px;color:inherit;background:none;overflow-wrap:normal}
.kb-doc hr{margin-block:2.4em;border:0;border-top:1px solid var(--border)}
.kb-doc img{height:auto;border:1px solid var(--border);border-radius:var(--radius-lg)}

/* tables scroll sideways inside their own box on narrow screens */
.kb-table{overflow-x:auto;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg)}
.kb-table:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.kb-doc table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5}
.kb-doc th,.kb-doc td{padding:10px 14px;text-align:left;vertical-align:top;border-bottom:1px solid #F2E7DD}
.kb-doc th{font-weight:600;color:var(--ink);background:#FBF2EA}
.kb-doc tbody tr:last-child td{border-bottom:0}
.kb-doc tbody tr:nth-child(even) td{background:#FDFAF7}
.kb-doc .al-center{text-align:center}
.kb-doc .al-right{text-align:right}
@media(max-width:719px){.kb-doc table{font-size:13.5px}.kb-doc th,.kb-doc td{padding:9px 11px}}

/* previous / next document */
.kb-pager{display:grid;gap:14px;grid-template-columns:1fr;margin-top:56px}
@media(min-width:640px){.kb-pager{grid-template-columns:1fr 1fr}.kb-pager .next{grid-column:2}}
.kb-pager a{display:block;padding:16px 18px;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);
  transition:border-color var(--e-lift),box-shadow var(--e-lift),transform var(--e-lift)}
.kb-pager a:hover{border-color:#EBB58E;box-shadow:var(--shadow-md);transform:translateY(-2px)}
.kb-pager .next{text-align:right}
.kb-pager small{display:block;margin-bottom:4px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.kb-pager b{font-family:var(--display);font-size:17px;font-weight:600;line-height:1.3;color:var(--ink)}

@media(prefers-reduced-motion:reduce){.kb-card,.kb-pager a{transition:none}.kb-card:hover,.kb-pager a:hover{transform:none}}
