/* search.dhammacakka.in — the library.
   Same house palette as research.dhammacakka.in: stone ground, incised display
   serif, seal green. The shelf, the reader and the results are the additions. */
:root{
  --stone:#DFDAC1; --stone-2:#D5CFB2; --card:#E9E4CE; --incised:#2B2820;
  --ink:#3E392C; --ink-soft:#6B6552;
  --accent:#14663A; --accent-2:#2F8A55;
  --rule:#BFB694; --notebg:#EDE6C6; --noteline:#CFC49B; --track:#E3DCBE;
  --plank:#C3B893; --plank-edge:#A99C74; --mark:#F2E39A;
  /* the shelf itself — warm walnut, one step darker than the stone ground */
  --wood:#6B5133; --wood-dark:#503B24; --case-edge:#3B2B1A;
  --plank-top:#C29A62; --plank-face:#8C6B44; --plank-foot:#4C3821;
  --plank-shade:rgba(0,0,0,.42);
  --wood-ink:#F6EDDA; --wood-ink-soft:#CDB894;
  --serif:'Spectral',Georgia,serif;
  --disp:'Source Serif 4','Spectral',Georgia,serif;
  --ui:'Archivo','Helvetica Neue',Arial,sans-serif;
}
:root[data-theme="dark"]{
  --stone:#1C1917; --stone-2:#221E1B; --card:#252119; --incised:#EDE6D8;
  --ink:#D6CCBC; --ink-soft:#9A8F80;
  --accent:#7FB894; --accent-2:#9ACFAE;
  --rule:#413A31; --notebg:#292418; --noteline:#463D28; --track:#231F16;
  --plank:#3A342B; --plank-edge:#4B4437; --mark:#5C4E1E;
  --wood:#39291B; --wood-dark:#281C12; --case-edge:#150E08;
  --plank-top:#6E5334; --plank-face:#493419; --plank-foot:#231810;
  --plank-shade:rgba(0,0,0,.55);
  --wood-ink:#E8DAC0; --wood-ink-soft:#A5937A;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --stone:#1C1917; --stone-2:#221E1B; --card:#252119; --incised:#EDE6D8;
    --ink:#D6CCBC; --ink-soft:#9A8F80;
    --accent:#7FB894; --accent-2:#9ACFAE;
    --rule:#413A31; --notebg:#292418; --noteline:#463D28; --track:#231F16;
    --plank:#3A342B; --plank-edge:#4B4437; --mark:#5C4E1E;
  --wood:#39291B; --wood-dark:#281C12; --case-edge:#150E08;
  --plank-top:#6E5334; --plank-face:#493419; --plank-foot:#231810;
  --plank-shade:rgba(0,0,0,.55);
  --wood-ink:#E8DAC0; --wood-ink-soft:#A5937A;
  }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--stone);color:var(--ink);
  font:18px/1.75 var(--serif);-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
mark{background:var(--mark);color:inherit;border-radius:2px;padding:0 1px}
code{font:.88em/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;
  background:var(--track);padding:1px 5px;border-radius:3px}

/* ---------- header ---------- */
header.site{position:sticky;top:0;z-index:20;background:var(--stone-2);
  border-bottom:1px solid var(--rule)}
.bar{max-width:1560px;margin:0 auto;padding:0 44px;
  display:flex;align-items:center;gap:22px;min-height:70px}
.brand{display:flex;align-items:center;gap:12px;margin-right:44px;min-width:0}
.brand img{width:42px;height:42px;object-fit:contain;flex:0 0 42px}
.brand:hover{text-decoration:none}
.brand .kicker{display:block;font:9.5px var(--ui);letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink-soft);margin-top:2px}
.brand b{display:block;font:600 18.5px/1.2 var(--disp);color:var(--incised);
  letter-spacing:.005em;white-space:nowrap}
nav.site{display:flex;gap:24px;margin-right:auto;flex-wrap:wrap}
nav.site a{font:15px var(--serif);color:var(--ink);white-space:nowrap;
  padding:3px 0;border-bottom:2px solid transparent}
nav.site a:hover{text-decoration:none;border-bottom-color:var(--rule)}
nav.site a[aria-current]{color:var(--accent);border-bottom-color:var(--accent)}
.signin{font:12.5px var(--ui);letter-spacing:.03em;color:var(--ink);
  border:1px solid var(--rule);border-radius:3px;padding:7px 14px;white-space:nowrap}
.signin:hover{text-decoration:none;border-color:var(--accent);color:var(--accent)}
.tswitch{background:transparent;border:1px solid var(--rule);border-radius:3px;
  width:34px;height:34px;display:grid;place-items:center;cursor:pointer;
  color:var(--ink-soft);flex:0 0 auto}
.tswitch svg{width:17px;height:17px}
.tswitch .moon{display:none}
:root[data-theme="dark"] .tswitch .moon{display:block}
:root[data-theme="dark"] .tswitch .sun{display:none}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .tswitch .moon{display:block}
  :root:not([data-theme="light"]) .tswitch .sun{display:none}
}

/* ---------- page frame ---------- */
main{max-width:1180px;margin:0 auto;padding:44px 44px 110px}
body.wide main{max-width:1560px}
p{margin:0 0 20.8px;max-width:70ch}
h1.page{font:600 clamp(28px,3.2vw,42px)/1.14 var(--disp);letter-spacing:-.012em;
  color:var(--incised);margin:0 0 8px;text-wrap:balance}
h2{font:600 24px/1.22 var(--disp);color:var(--incised);margin:52px 0 4px}
h3{font:600 18.5px/1.35 var(--disp);color:var(--incised);margin:26px 0 8px}
.chapline{font:11px var(--ui);letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink-soft);margin:0 0 14px}
.lede{font-size:19.5px;line-height:1.7;color:var(--ink-soft);max-width:72ch;margin-bottom:22px}
.hint{font:13.5px var(--ui);color:var(--ink-soft)}
.plbl{font:10.5px var(--ui);letter-spacing:.14em;text-transform:uppercase;
  color:var(--accent);margin:0 0 10px}
.note{background:var(--notebg);border-left:3px solid var(--accent);
  border-top:1px solid var(--noteline);border-right:1px solid var(--noteline);
  border-bottom:1px solid var(--noteline);padding:15px 20px;margin:0 0 12px;
  font:14.5px/1.65 var(--ui);color:var(--ink);max-width:none}
.note b{color:var(--incised)}
.panel{background:var(--card);border:1px solid var(--rule);border-radius:4px;
  padding:18px 20px;font:15px/1.65 var(--serif)}
.cols{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);
  gap:56px;align-items:start}
@media(max-width:860px){.cols{grid-template-columns:1fr;gap:24px}}
footer.page{border-top:1px solid var(--rule);max-width:1560px;margin:0 auto;
  padding:26px 44px 60px;font:13px/1.9 var(--ui);color:var(--ink-soft)}
.btn{display:inline-block;font:13px var(--ui);letter-spacing:.03em;
  background:var(--accent);color:#fff;padding:10px 18px;border-radius:3px;
  border:1px solid var(--accent)}
.btn:hover{text-decoration:none;background:var(--accent-2);border-color:var(--accent-2)}
:root[data-theme="dark"] .btn{color:#16241C}
.btn.ghost{background:transparent;color:var(--accent);border-color:var(--rule)}
.btn.ghost:hover{background:var(--track);color:var(--accent)}
.crumb{font:12px var(--ui);letter-spacing:.04em;color:var(--ink-soft);margin-bottom:14px}
.crumb span{opacity:.5;margin:0 6px}
.facts{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:0;padding:0;margin:26px 0 0;border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule)}
.facts li{padding:16px 20px 15px 0;font:11px var(--ui);letter-spacing:.12em;
  text-transform:uppercase;color:var(--ink-soft)}
.facts li b{display:block;font:600 26px/1.15 var(--disp);color:var(--incised);
  letter-spacing:0;text-transform:none;margin-bottom:3px;font-variant-numeric:tabular-nums}
.facts li.zero b{color:var(--accent)}

/* ---------- the search field ---------- */
.find{margin:0 0 8px;max-width:820px}
.find .field{display:flex;align-items:center;gap:0;background:var(--card);
  border:1px solid var(--rule);border-radius:4px;overflow:hidden}
.find .field:focus-within{border-color:var(--accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.find svg{width:18px;height:18px;color:var(--ink-soft);margin:0 2px 0 14px;flex:0 0 18px}
.find input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);
  font:16px var(--serif);padding:12px 12px;outline:0}
.find input::placeholder{color:var(--ink-soft);opacity:.75}
.find select{border:0;border-left:1px solid var(--rule);background:transparent;
  color:var(--ink-soft);font:12.5px var(--ui);padding:12px 8px;outline:0;cursor:pointer}
.find button{border:0;border-left:1px solid var(--rule);background:var(--accent);
  color:#fff;font:12.5px var(--ui);letter-spacing:.05em;padding:13px 20px;cursor:pointer}
.find button:hover{background:var(--accent-2)}
:root[data-theme="dark"] .find button{color:#16241C}
.find.big .field{border-width:1.5px}
.find.big input{font-size:18px;padding:15px 12px}
.searchtop{border-bottom:1px solid var(--rule);margin:0 0 26px;padding-bottom:18px}
.scope{font:13.5px var(--ui);color:var(--ink-soft);margin:10px 0 0}
.scope .clear{margin-left:10px}

/* ---------- the shelf ---------- */
.coll{margin-top:44px}
.coll h2{margin-bottom:2px}
/* A real shelf: a wooden case, planks across the full width, and the volumes
   standing on them. Volumes of one edition are the same height, so the row
   height is fixed and one repeating background paints every plank — including
   the empty part of a short last row.

   All of it is drawn in CSS: no shelf image to download, and it recolours with
   the theme. The timber is warm walnut against the stone ground, not the pine
   of a phone bookcase. */
.shelf{
  --plank-h:15px;         /* thickness of the plank front */
  --lift:34px;            /* air above the tallest volume */
  --book-max:200px;       /* a volume never grows wider than this */
  /* The case runs the full width of the window, the way a wall of shelves
     does, and nothing about it is fixed: the columns divide whatever width
     the screen gives, and volumes that do not fit go on to another shelf.
     Each volume carries its own length of plank, so the planks join into one
     unbroken line across the whole row however many columns there are. */
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;
  width:100vw;margin:20px 0 0;margin-left:calc(50% - 50vw);
  padding:0 calc(50vw - 50% + 8px);
  border-top:1px solid var(--case-edge);border-bottom:1px solid var(--case-edge);
  background-color:var(--wood);
  background-image:
    /* back panel: vertical grain */
    repeating-linear-gradient(90deg,
      rgba(255,255,255,.05) 0 1px, transparent 1px 5px,
      rgba(0,0,0,.06) 5px 6px, transparent 6px 13px,
      rgba(0,0,0,.035) 13px 14px, transparent 14px 29px),
    /* the case is deeper than it is lit */
    linear-gradient(180deg, var(--wood-dark), var(--wood) 22%, var(--wood-dark));
  box-shadow:inset 0 2px 6px rgba(0,0,0,.42), inset 0 -2px 5px rgba(0,0,0,.3),
    inset 9px 0 14px -9px rgba(0,0,0,.55), inset -9px 0 14px -9px rgba(0,0,0,.55);
}
.bk{display:flex;flex-direction:column;justify-content:flex-end;
  padding:var(--lift) 12px var(--plank-h);position:relative}
.bk:hover{text-decoration:none}
/* this volume's length of plank */
.bk::after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--plank-h);
  background:linear-gradient(180deg,
    var(--plank-top) 0 2px, var(--plank-face) 2px,
    var(--plank-foot) calc(var(--plank-h) - 3px),
    var(--plank-shade) calc(var(--plank-h) - 3px))}
.bk .cov{display:block;position:relative;width:min(100%,var(--book-max));
  margin:0 auto;transition:transform .18s ease}
/* the volume's shadow on the plank it stands on */
.bk .cov::after{content:"";position:absolute;left:8%;right:8%;bottom:-6px;height:10px;
  background:radial-gradient(ellipse at 50% 0%, rgba(0,0,0,.5), transparent 72%);
  opacity:.85;transition:opacity .18s ease, transform .18s ease}
.bk .cov img{display:block;width:100%;height:auto;
  border-radius:1px 2px 2px 1px;
  box-shadow:2px 3px 7px rgba(0,0,0,.45), inset 3px 0 5px -3px rgba(0,0,0,.45);
  border:1px solid rgba(0,0,0,.3)}
.bk:hover .cov{transform:translateY(-8px)}
.bk:hover .cov::after{opacity:.45;transform:scaleX(1.08)}
.bk:hover .cov img{box-shadow:3px 10px 16px rgba(0,0,0,.5)}
.bk:focus-visible{outline:2px solid var(--accent-2);outline-offset:-5px;border-radius:3px}
.bk .cap{display:block;padding:13px 0 0;min-height:62px;
  font:11.5px/1.4 var(--ui);color:var(--wood-ink-soft);text-align:center}
.bk .cap b{font:600 13.5px/1.28 var(--disp);color:var(--wood-ink);
  margin-bottom:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;overflow-wrap:anywhere;hyphens:auto}
.bk:hover .cap b{color:#fff}

/* ---------- one volume ---------- */
.vol{display:grid;grid-template-columns:330px minmax(0,1fr);gap:52px;align-items:start;
  margin-bottom:12px}
@media(max-width:820px){.vol{grid-template-columns:1fr;gap:26px}}
.volcover img{display:block;width:100%;height:auto;border:1px solid rgba(0,0,0,.2);
  box-shadow:0 16px 24px -14px rgba(0,0,0,.55);border-radius:1px;margin-bottom:18px}
.volcover .btn{display:block;text-align:center}
dl.kv{display:grid;grid-template-columns:auto 1fr;gap:0 22px;margin:22px 0;
  font:14.5px var(--ui);border-top:1px solid var(--rule)}
dl.kv dt{padding:10px 0;color:var(--ink-soft);border-bottom:1px solid var(--rule);
  letter-spacing:.03em}
dl.kv dd{padding:10px 0;margin:0;color:var(--incised);border-bottom:1px solid var(--rule)}
ol.toc{list-style:none;padding:0;margin:14px 0 0;columns:2;column-gap:56px;
  font:15px/1.5 var(--serif)}
@media(max-width:820px){ol.toc{columns:1}}
ol.toc li{break-inside:avoid;margin-bottom:7px}
ol.toc li a{color:var(--ink)}
ol.toc li a:hover{color:var(--accent)}
ol.toc .pi{display:block;font:12.5px var(--ui);color:var(--ink-soft)}
ol.toc .l1{font-weight:600;color:var(--incised);margin-top:14px}
ol.toc .l2{padding-left:14px}
ol.toc .l3{padding-left:28px;font-size:14px;color:var(--ink-soft)}
ol.toc .none{color:var(--ink-soft)}

/* ---------- the reader ---------- */
.readwrap{display:grid;grid-template-columns:264px minmax(0,1fr);gap:52px;align-items:start}
@media(max-width:980px){.readwrap{grid-template-columns:1fr;gap:22px}}
.side{position:sticky;top:92px;max-height:calc(100vh - 120px);overflow:auto;
  padding-right:8px}
@media(max-width:980px){.side{position:static;max-height:none}}
.sidetitle{font:600 19px/1.3 var(--disp);color:var(--incised);margin:0 0 14px}
.sidetitle span{display:block;font:12.5px var(--ui);color:var(--ink-soft);margin-top:3px}
.side .find{margin-bottom:14px}
.side .find button{display:none}
.side .find select{display:none}
.seg{display:flex;gap:5px;margin:0 0 22px}
.seg button{font:11px var(--ui);letter-spacing:.04em;padding:6px 11px;
  border:1px solid var(--rule);background:transparent;color:var(--ink-soft);
  border-radius:3px;cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:#fff}
:root[data-theme="dark"] .seg button[aria-pressed="true"]{color:#16241C}
details.tocbox{margin-top:4px}
details.tocbox > summary{cursor:pointer;list-style:none;display:flex;
  align-items:center;justify-content:space-between;padding:8px 0;
  border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
details.tocbox > summary::-webkit-details-marker{display:none}
details.tocbox > summary::after{content:"+";font:14px var(--ui);color:var(--ink-soft)}
details.tocbox[open] > summary::after{content:"–"}
details.tocbox[open] > summary{border-bottom:0}
ol.toc.mini{columns:1;font:13.5px/1.45 var(--ui);margin-top:0}
ol.toc.mini li{margin-bottom:6px}
ol.toc.mini .l1{font:600 13.5px var(--ui);margin-top:12px}
ol.toc.mini .l3{font-size:12.5px}
ol.toc.mini li.here>a{color:var(--accent);font-weight:600}

.readhead{border-bottom:1px solid var(--rule);padding-bottom:14px;margin-bottom:6px}
.readhead h1{font:600 clamp(22px,2.4vw,30px)/1.2 var(--disp);color:var(--incised);margin:0}
.pager{display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:16px 0;font:12.5px var(--ui);color:var(--ink-soft)}
.pager .where{letter-spacing:.06em;text-transform:uppercase;font-size:11px}

.text{border-top:1px solid var(--rule)}
.p{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:0 40px;padding:14px 44px 14px 0;border-bottom:1px solid var(--rule);
  position:relative}
.p:target{background:var(--notebg)}
.p .en{font:17.5px/1.72 var(--serif);color:var(--ink)}
.p .pi{font:15.5px/1.75 var(--serif);color:var(--ink-soft);font-style:italic}
.p .none{color:var(--ink-soft);opacity:.6}
.p .anchor{position:absolute;right:0;top:14px;font:11px var(--ui);
  color:var(--ink-soft);opacity:0;font-variant-numeric:tabular-nums}
.p:hover .anchor{opacity:.75}
.p.h{border-bottom:0;padding-top:30px;padding-bottom:4px}
.p.h .en{font:600 20px/1.3 var(--disp);color:var(--incised)}
.p.h .pi{font:600 16px/1.4 var(--disp);color:var(--accent);font-style:normal}
.p.h-nikaya .en,.p.h-book .en,.p.h-head-book .en{font-size:24px}
.p.h-subhead .en,.p.h-subsubhead .en,.p.h-head-subsubhead .en{font-size:17px}
.p.verse .en,.p.verse .pi{padding-left:22px;font-style:italic}
.p.verse{padding-top:2px;padding-bottom:2px;border-bottom:0}
.p.verse-end{padding-bottom:14px;border-bottom:1px solid var(--rule)}
.p.hang .en{padding-left:0}
body[data-view="en"] .p .pi{display:none}
body[data-view="en"] .p{grid-template-columns:minmax(0,1fr)}
body[data-view="pi"] .p .en{display:none}
body[data-view="pi"] .p{grid-template-columns:minmax(0,1fr)}
/* ---------- forms: registering and signing in ---------- */
.narrow{max-width:56ch}
.narrowform{max-width:38ch}
form.stack{margin-top:22px}
form.inline{display:inline-block;margin:0 0 12px}
.f{margin:0 0 18px;max-width:46ch}
.f label{display:block;font:13px var(--ui);color:var(--incised);margin-bottom:5px;
  letter-spacing:.02em}
.f .opt{color:var(--ink-soft);font-weight:400;text-transform:none;letter-spacing:0}
.f .note-s{display:block;font:12.5px/1.5 var(--ui);color:var(--ink-soft);margin-bottom:6px}
.f input[type=text],.f input[type=email],.f input[type=password]{
  width:100%;font:16px var(--serif);color:var(--ink);background:var(--card);
  border:1px solid var(--rule);border-radius:3px;padding:10px 12px;outline:0}
.f input:focus{border-color:var(--accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.f.bad input{border-color:#A33;background:color-mix(in srgb,#A33 6%,var(--card))}
.f .err{display:block;font:12.5px var(--ui);color:#A33;margin-top:5px}
:root[data-theme="dark"] .f .err{color:#E08A85}
.f.check label{display:flex;gap:9px;align-items:flex-start;font:15px/1.5 var(--serif);
  color:var(--ink);text-transform:none;letter-spacing:0}
.f.check input{margin-top:4px}
fieldset.choice{border:0;padding:0;margin:0 0 24px}
fieldset.choice legend{font:10.5px var(--ui);letter-spacing:.14em;text-transform:uppercase;
  color:var(--accent);padding:0;margin-bottom:10px}
label.pick{display:flex;gap:11px;align-items:flex-start;padding:13px 15px;
  border:1px solid var(--rule);border-radius:4px;margin-bottom:8px;cursor:pointer;
  background:var(--card);max-width:52ch}
label.pick:hover{border-color:var(--accent)}
label.pick:has(input:checked){border-color:var(--accent);
  box-shadow:inset 3px 0 0 var(--accent)}
label.pick input{margin-top:5px;flex:0 0 auto}
label.pick span{font:14px/1.55 var(--ui);color:var(--ink-soft)}
label.pick b{display:block;font:600 15px/1.4 var(--disp);color:var(--incised);
  margin-bottom:3px}
.note.bad{border-left-color:#A33}
.note.ok{border-left-color:var(--accent-2)}

/* ---------- the notices ---------- */
.prose{max-width:74ch}
.prose h2{font-size:20px;margin:38px 0 8px}
.prose ul{margin:0 0 20px;padding-left:22px;max-width:70ch}
.prose li{margin-bottom:7px}
.prose .lede{margin-bottom:6px}

/* ---------- the colophon ---------- */
dl.colophon{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 26px;
  margin:0 0 16px;max-width:96ch;font:14px/1.65 var(--ui)}
dl.colophon dt{padding:9px 0;color:var(--accent);letter-spacing:.12em;
  text-transform:uppercase;font-size:10.5px;line-height:1.9;white-space:nowrap;
  border-top:1px solid var(--rule)}
dl.colophon dd{padding:9px 0;margin:0;color:var(--ink-soft);
  border-top:1px solid var(--rule)}
dl.colophon dd b{color:var(--incised);font-weight:600}
.sig{font:13px var(--ui);color:var(--ink-soft);margin:0}

@media(max-width:760px){
  .p{grid-template-columns:1fr;gap:8px 0;padding-right:0}
  .p .anchor{display:none}
}

/* ---------- results ---------- */
.results{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:56px;align-items:start}
@media(max-width:900px){.results{grid-template-columns:1fr;gap:30px}}
.count{font:12px var(--ui);letter-spacing:.06em;text-transform:uppercase;
  color:var(--ink-soft);border-bottom:1px solid var(--rule);padding-bottom:12px}
.count span{float:right;opacity:.7;text-transform:none;letter-spacing:0}
ol.hits{list-style:none;padding:0;margin:0}
.hit{padding:22px 0;border-bottom:1px solid var(--rule)}
.hit .src{font:12px var(--ui);color:var(--ink-soft);margin:0 0 5px;max-width:none}
.hit .src a{color:var(--accent)}
.hit .src span{margin-left:10px;opacity:.85}
.hit h3{margin:0 0 6px;font:400 18px/1.55 var(--serif);color:var(--ink)}
.hit h3 a{color:var(--ink)}
.hit h3 a:hover{color:var(--accent);text-decoration:none}
.hit .alt{font:15px/1.65 var(--serif);color:var(--ink-soft);
  margin:0 0 6px;max-width:none}
/* Pali is set in italic wherever it appears, in the headline or under it */
.hit h3.pilead a,.hit .alt[lang="pi"]{font-style:italic}
.hit .cite{font:12px var(--ui);color:var(--ink-soft);margin:0;max-width:none;
  font-variant-numeric:tabular-nums}
.facetcol{position:sticky;top:92px}
ul.facets{list-style:none;padding:0;margin:0 0 26px;font:13.5px var(--ui)}
ul.facets li{border-bottom:1px solid var(--rule)}
ul.facets li a{display:flex;justify-content:space-between;gap:10px;
  padding:9px 0;color:var(--ink)}
ul.facets li a:hover{color:var(--accent);text-decoration:none}
ul.facets li b{color:var(--ink-soft);font-weight:400;font-variant-numeric:tabular-nums}
ul.facets li.on a{color:var(--accent);font-weight:600}
ul.facets li.none{padding:9px 0;color:var(--ink-soft)}
nav.pages{display:flex;gap:6px;align-items:center;padding:26px 0;font:13px var(--ui)}
nav.pages a,nav.pages b{min-width:32px;height:32px;display:grid;place-items:center;
  border:1px solid var(--rule);border-radius:3px;color:var(--ink)}
nav.pages b{background:var(--accent);border-color:var(--accent);color:#fff}
:root[data-theme="dark"] nav.pages b{color:#16241C}
nav.pages a:hover{background:var(--track);text-decoration:none}
nav.pages .gap{color:var(--ink-soft);padding:0 2px;border:0}
.empty{padding:20px 0}
.empty h2{margin-top:0}
.empty ul{max-width:70ch;font-size:16.5px}
.empty li{margin-bottom:8px}
ul.tries{list-style:none;padding:0;margin:0;font:15px var(--serif)}
ul.tries li{border-bottom:1px solid var(--noteline);padding:8px 0}
ul.tries li:last-child{border-bottom:0}
ul.tries span{color:var(--ink-soft);font:11.5px var(--ui)}

@media(max-width:760px){
  /* the navigation drops to its own line under the mark */
  .bar{flex-wrap:wrap;padding:10px 18px;min-height:0;gap:8px 16px}
  .brand{margin-right:auto;gap:10px}
  .brand img{width:34px;height:34px;flex-basis:34px}
  .brand b{font-size:16px;white-space:normal}
  .tswitch{order:2}
  nav.site{order:3;width:100%;margin:0;gap:18px;
    border-top:1px solid var(--rule);padding-top:8px}
  nav.site a{font-size:14px}
  main{padding:26px 18px 70px}
  footer.page{padding:22px 18px 50px}
  .find .field{flex-wrap:wrap}
  .find input{flex:1 0 100%;order:1;padding-left:0}
  .find svg{order:0}
  .find select{order:2;border-left:0;border-top:1px solid var(--rule);flex:1}
  .find button{order:3;border-top:1px solid var(--rule);flex:1}
  .shelf{--lift:20px;--book-max:150px;grid-template-columns:repeat(auto-fit,minmax(104px,1fr))}
  .bk{padding-left:8px;padding-right:8px}
  .bk .cap{font-size:10.5px}
  .bk .cap b{font-size:12px}
  ol.toc{columns:1}
}
