/* ---------- the whole index as one document (#/document, document.js) ----------
   Uses app.css tokens and its shared pieces: .qhead, .lab, .hh, .tabs, .tag, .sum, .refs, .ans-h/.ans-f, .more, .watch. */

/* home entry point: a second quiet link beside "Use it inside Claude or ChatGPT" */
.hconnect{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s6)}

.dochead h1{font-size:clamp(26px,6vw,40px)}
.docgen{margin:var(--s3) 0 0}
.docdl{display:flex;flex-wrap:wrap;gap:var(--s2);margin:var(--s4) 0 0}
.dlbtn{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;font-family:var(--label);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink);text-decoration:none;border:1.5px solid var(--tag-line);border-radius:3px;background:var(--surface)}
.dlbtn:hover{border-color:var(--accent);color:var(--accent)}
.doctabs{margin-top:var(--s5)}
.howto{max-width:42em;margin:var(--s5) 0 0}
.howto summary{display:flex;align-items:center;gap:var(--s2);min-height:44px;padding-bottom:0;cursor:pointer;list-style:none}
.howto summary::-webkit-details-marker{display:none}
.howto summary::before{content:"+";width:12px;color:var(--faint)}
.howto[open] summary::before{content:"–"}
.howto ul{margin:var(--s2) 0 0;padding-left:1.1em;display:grid;gap:var(--s1);font-size:15.5px;line-height:1.5;color:var(--pencil)}

.doc{display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin-top:var(--s5)}
@media (min-width:1000px){.doc{grid-template-columns:250px minmax(0,1fr);gap:var(--s7)}}

/* contents: collapsible on phones, sticky beside the text on desktop */
.doctoc details{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.doctoc summary{display:flex;align-items:center;gap:var(--s2);min-height:44px;cursor:pointer;list-style:none}
.doctoc summary::-webkit-details-marker{display:none}
.doctoc summary::before{content:"+";width:12px;color:var(--faint)}
.doctoc details[open] summary::before{content:"–"}
.doctoc summary .n{color:var(--faint);font-weight:500}
.doctoc ol{list-style:none;margin:0 0 var(--s3);padding:0}
.doctoc li{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s2);border-left:2px solid transparent;padding-left:var(--s2)}
.doctoc li a{flex:1;min-width:0;display:block;padding:7px 0;font-size:16px;line-height:1.3;text-decoration:none;color:var(--ink)}
.doctoc li a:hover{color:var(--accent)}
@media (max-width:999px){.doctoc li a{min-height:44px;display:flex;align-items:center;padding:4px 0}}
.doctoc li .lab{font-size:12px;color:var(--faint);white-space:nowrap}
.doctoc li:has(a[aria-current]){border-left-color:var(--accent)}
.doctoc a[aria-current]{color:var(--accent)}
@media (min-width:1000px){
  .doctoc{position:sticky;top:var(--s4);align-self:start;max-height:calc(100vh - 32px);overflow:auto;overscroll-behavior:contain}
  .doctoc details{border:0}
  .doctoc summary{pointer-events:none;min-height:0;padding-bottom:var(--s2);border-bottom:1px solid var(--rule);margin-bottom:var(--s1)}
  .doctoc summary::before{display:none}
  .doctoc li a{font-size:15px;padding:5px 0}
}

/* body */
.docbody{min-width:0}
.dsec{padding-top:var(--s6);content-visibility:auto;contain-intrinsic-size:auto 4000px}
.dsec:first-child{padding-top:var(--s4)}
.dsec-h{font-family:var(--display);font-weight:400;font-size:clamp(26px,5vw,32px);line-height:1.1;margin:0;scroll-margin-top:var(--s4)}
.dsec-m{margin:var(--s1) 0 var(--s3)}
.dsee{max-width:42em;margin:0 0 var(--s3)}
.dsee .lab{margin-right:var(--s2)}
.dsee a{color:var(--ink)}
.dsub{font-family:var(--label);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--pencil);margin:var(--s6) 0 0;padding-bottom:var(--s2);border-bottom:1px solid var(--rule);max-width:calc(42em * 18 / 13)}
.dq{max-width:42em;padding:var(--s5) 0;border-top:1px solid var(--rule);scroll-margin-top:var(--s4)}
.dsub + .dq{border-top:0}
.dq-t{font-family:var(--display);font-weight:400;font-size:23px;line-height:1.2;margin:0}
h4.dq-t{font-size:20px}
.dq-also{margin:var(--s2) 0 0;font-size:15.5px;color:var(--pencil);font-style:italic}
.dq-also .lab{font-style:normal;margin-right:var(--s1)}
.dq-more{margin:var(--s3) 0 0}
.da{margin-top:var(--s4);padding-top:var(--s3);border-top:1px dashed var(--rule)}
.dq-also + .da,.dq-t + .da{border-top:0;padding-top:0}
.da-who{font-family:var(--label);font-weight:700;font-size:15px;letter-spacing:.06em;text-transform:uppercase}
.da blockquote{font-size:18px}
.da-note{margin:var(--s2) 0 0;font-size:15.5px;color:var(--pencil)}
.da-note .lab{margin-right:var(--s1)}
.da-sim{margin:var(--s1) 0 0;font-size:14px}
.dref{font-family:var(--label);font-weight:700;font-size:17px;letter-spacing:.02em;margin:var(--s5) 0 var(--s1)}
.dref a{text-decoration:none;color:var(--accent)}
.dref a:hover{text-decoration:underline}
.dlines{list-style:none;margin:0;padding:0;max-width:42em}
.dlines li{padding:var(--s2) 0;border-bottom:1px solid var(--rule);font-size:16px;line-height:1.45}
.dlines .lab{margin:0 var(--s1)}
.dl-q{text-decoration:none;color:var(--ink);font-weight:600}
.dl-q:hover{color:var(--accent)}
.dl-t{display:block;color:var(--pencil);font-size:15px}
.print-url{display:none}

/* ---------- PDF: the browser's print of this page ---------- */
@media print{
  :root{--bg:#fff;--surface:#fff;--ink:#111;--pencil:#444;--faint:#555;--rule:#ccc;--accent:#1F5560;--accent-ink:#fff;--tag-line:#999;--link-line:#999;color-scheme:light}
  @page{margin:18mm 16mm}
  body{font-size:11pt;line-height:1.45;background:#fff}
  .top,.doctabs,.docdl,.doctoc,.dq-more,.keylink,dialog{display:none!important}
  .page{padding:0;max-width:none}
  .doc{display:block;margin:0}
  .qhead{padding-top:0}
  .dsec{content-visibility:visible;break-before:page;padding-top:0}
  .dsec-h,.dq-t,.dsub,.dref{break-after:avoid}
  .dq-also,.ans-h{break-after:avoid}
  .da{break-inside:avoid}
  .dq{max-width:none}
  .tag{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  a{text-decoration:none;color:inherit}
  .watch::before,.howto summary::before{display:none}
  .print-url{display:inline;margin-left:6px;font-family:var(--label);font-size:8.5pt;color:var(--pencil);word-break:break-all}
  .dlines li{break-inside:avoid}
}
