/* Word Stress Catalog bibliography page: the accstack.org tokens (accstack_site/site.css), the catalog's type and table style, plus the pieces this page adds. Restyled 2026-09-25. */
:root{
  --paper:#fbfaf7; --ink:#17181a; --muted:#6b6f76; --line:#e2e0da; --card:#ffffff;
  --accent:#0f766e; --accent-soft:#e0f2f0; --focus:var(--accent);
  --soft:#efeeea;                                             /* neutral filled badges and row hover */
  --mid:color-mix(in srgb, var(--ink) 60%, var(--muted));     /* secondary body text, between ink and muted */
  --line2:color-mix(in srgb, var(--line) 60%, var(--card));   /* the lighter row rules */
  --shadow:0 8px 28px rgba(23,24,26,.12);
  --title:var(--accent);   
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#121316; --ink:#ecebe6; --muted:#a3a7ad; --line:#2c2e33; --card:#1a1b1f;
  --accent:#2dd4bf; --accent-soft:#123b36;
  --soft:#26272c; --shadow:0 8px 28px rgba(0,0,0,.5);
}}
:root[data-theme="dark"]{
  --paper:#121316; --ink:#ecebe6; --muted:#a3a7ad; --line:#2c2e33; --card:#1a1b1f;
  --accent:#2dd4bf; --accent-soft:#123b36;
  --soft:#26272c; --shadow:0 8px 28px rgba(0,0,0,.5);
}
*{box-sizing:border-box}
html,body{background:var(--paper);color:var(--ink);font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:14px;line-height:1.45;margin:0}
button,input,select{font:inherit;color:inherit}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
/* accstack.org strip: the site wordmark and the links to the other parts, above this app's own header */
.beta{background:var(--ink);color:var(--paper);font-size:.95rem;padding:.55rem 0}.beta .wrap{display:flex;flex-wrap:wrap;gap:.35rem 1rem;align-items:baseline;max-width:1200px;margin:0 auto;padding:0 22px}.beta b{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;background:#c8102e;color:#fff;padding:.15rem .5rem;border-radius:3px}.beta a{color:var(--paper);text-decoration:underline}
.acc-strip{border-bottom:3px solid var(--accent);display:flex;align-items:center;gap:12px 20px;min-height:44px;padding:0 22px;background:var(--paper);border-bottom:1px solid var(--line)}
.acc-strip .acc-mark{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-optical-sizing:auto;font-size:18px;letter-spacing:-.01em;line-height:1;text-decoration:none;color:var(--ink);flex:none}
.acc-strip .acc-mark .a{color:var(--ink)}.acc-strip .acc-mark .s{color:var(--accent)}
.acc-strip nav{margin-left:auto;display:flex;gap:18px;font-size:13.5px;min-width:0;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.acc-strip nav::-webkit-scrollbar{display:none}
.acc-strip nav a{color:var(--muted);text-decoration:none;padding:12px 0;line-height:20px}
.acc-strip nav a:hover{color:var(--accent)}
.acc-strip nav a[aria-current]{color:var(--ink);font-weight:500}
.app{display:grid;grid-template-columns:260px minmax(0,1fr);grid-template-rows:auto 1fr;min-height:100vh}
header.top{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;padding:14px 22px;border-bottom:1px solid var(--line);background:var(--card)}
.brand{display:flex;align-items:baseline;gap:10px}
.brand h1{font-family:"Gentium Book Plus",Georgia,serif;font-weight:700;font-size:22px;margin:0;letter-spacing:.01em;color:var(--ink)}
.brand h1.wordmark{color:var(--title)}   
.brand .sub{color:var(--muted);font-size:12px}
.search{flex:1 1 260px;max-width:420px;position:relative}
.search input{width:100%;padding:8px 12px 8px 34px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink)}
.search input:focus{border-color:var(--ink)}
.search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--muted)}
.actions{margin-left:auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.btn{border:1px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:6px;padding:7px 12px;cursor:pointer;font-weight:500}
.btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn.ghost:hover{background:transparent;color:var(--accent);border-color:var(--accent)}
.btn.ghost[aria-expanded="true"]{background:var(--accent-soft);border-color:var(--accent);color:var(--ink)}
.btn[hidden]{display:none}
a.btn{text-decoration:none;display:inline-flex;align-items:center}
.filtersbtn{display:none}
aside.rail{border-right:1px solid var(--line);padding:14px 16px 40px;overflow:auto;max-height:calc(100vh - 60px);position:sticky;top:0;background:var(--paper)}
.facet{margin-bottom:18px}
.facet h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600;margin:0 0 6px}
.facet .opt{display:flex;align-items:center;gap:8px;padding:3px 0;cursor:pointer;color:var(--mid)}
.facet .opt:hover{color:var(--ink)}
.facet .opt input{accent-color:var(--accent);flex:none}
.facet .opt:has(input:checked){color:var(--ink)}
.facet .opt .c{margin-left:auto;font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.facet .more{background:none;border:0;color:var(--accent);cursor:pointer;padding:2px 0;font-size:12px}
.facet select{width:100%;padding:6px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink)}
main{padding:0 22px 40px;min-width:0}
.summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;padding:14px 0 10px;color:var(--mid)}
.summary .big{font-family:"Gentium Book Plus",Georgia,serif;font-size:26px;color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}
.summary .crit{font-size:12.5px;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:10px}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--accent-soft);color:var(--ink);border:1px solid transparent;border-radius:999px;padding:2px 10px;font-size:12px}
.chip:hover{border-color:var(--accent)}
.chip button{background:none;border:0;cursor:pointer;color:inherit;padding:0 4px;min-width:24px;min-height:24px;font-size:14px;line-height:1}
.chip button:hover{color:var(--accent)}
.chip.showall{cursor:pointer;font:inherit;font-size:12px;background:none;border-color:var(--accent);color:var(--accent)}   /* catalog#47: clears the one-language view set by a #<glottocode> address */
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--card)}
table{border-collapse:collapse;width:100%;min-width:860px}
thead th{position:sticky;top:0;background:var(--card);text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:600;padding:9px 10px;border-bottom:1px solid var(--line);cursor:pointer;white-space:nowrap}
thead th:hover{color:var(--ink)}
thead th.sorted{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}
tbody td{padding:8px 10px;border-bottom:1px solid var(--line2);vertical-align:top}
tbody tr{cursor:pointer}
tbody tr:hover{background:var(--soft)}
tbody tr.sel{background:var(--accent-soft)}
td.lang{font-family:"Gentium Book Plus",Georgia,serif;font-size:15.5px}
td.lang .nm{color:var(--accent);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
tr:hover td.lang .nm{text-decoration-color:var(--accent)}
td.lang .gc{display:block;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted)}
td.lang a.gc{text-decoration:none;width:max-content}td.lang a.gc:hover{text-decoration:underline;color:var(--accent)}
td.fam{color:var(--mid);max-width:180px}
td.num{font-family:"IBM Plex Mono",monospace;font-size:12.5px;font-variant-numeric:tabular-nums;text-align:right}
/* badges: one hue-free ladder. filled ink = the strongest state; soft grey = the ordinary states; hollow = provisional; the accent is kept for conflict and dispute. */
.tag{display:inline-block;border:1px solid transparent;border-radius:4px;padding:1px 7px;font-size:11.5px;font-weight:500;white-space:nowrap;background:var(--soft);color:var(--ink)}
/* the kind of stress system (catalog entries): grey, the label carries the meaning */
.k-fixed,.k-fixed-strict,.k-fixed-dominant,.k-fixed-unreviewed,.k-phrase-lumped,.k-weight,.k-weight-hedged,.k-weight-unreviewed,
.k-lexical,.k-morphological,.k-variable,.k-tonal,.k-no-word-stress,.k-phrasal{background:var(--soft);color:var(--ink)}
.k-undetermined,.k-excluded,.k-other,.k-segmental{background:var(--soft);color:var(--muted)}
.k-conflict{background:transparent;border-color:var(--accent);color:var(--accent)}
/* pills: what we know about the works, and how a copy can be had */
.pills{display:flex;flex-wrap:wrap;gap:4px}
.pills .tag{font-size:11px;padding:0 6px}
.pills .tag b{font-family:"IBM Plex Mono",monospace;font-weight:500;font-variant-numeric:tabular-nums}
.p-states{background:var(--ink);color:var(--paper)}
.p-read,.p-tone,.t-states{background:var(--soft);color:var(--ink)}
.t-notes{background:transparent;border-color:var(--line);color:var(--ink)}
.p-wanted{background:transparent;border-style:dashed;border-color:var(--muted);color:var(--ink)}
.p-unread,.t-silent{background:var(--soft);color:var(--muted)}
.tonenote b{font-weight:600;color:var(--mid)} /* V95 TONE */
.a-digital{background:var(--ink);color:var(--paper)}
.a-digital.a-gated{background:transparent;border-color:var(--ink);color:var(--ink)}   /* a digital copy behind a wall: the hollow variant of Digital */
.a-scan{background:var(--soft);color:var(--ink)}
.a-print{background:transparent;border-color:var(--line);color:var(--ink)}
.a-unknown{background:var(--soft);color:var(--muted)}
.b-confirms{background:var(--ink);color:var(--paper)} .b-refines{background:var(--soft);color:var(--ink)} .b-contradicts{background:transparent;border-color:var(--accent);color:var(--accent)}
.tag.ok{background:var(--ink);color:var(--paper)} .tag.warn{background:transparent;border-color:var(--accent);color:var(--accent)} .tag.muted{background:var(--soft);color:var(--muted)}
/* confidence levels: the same classes as the catalog page, on the same ladder */
.cf-4{background:var(--ink);color:var(--paper)} .cf-3{background:var(--soft);color:var(--ink)} .cf-2{background:transparent;border-color:var(--line);color:var(--ink)}
.cf-1{background:transparent;border-color:var(--accent);color:var(--accent)} .cf-0{background:var(--soft);color:var(--muted)} .cf-x{background:transparent;border-style:dashed;border-color:var(--line);color:var(--muted)}
.facet .opt .tag{font-size:11px;padding:0 6px}
.drawer .cf{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:-6px 0 14px;font-size:12.5px;color:var(--mid)}
.drawer .cf .why::first-letter{text-transform:uppercase}
.desc{color:var(--mid);font-size:12.5px;max-width:300px}
.muted{color:var(--muted)}
.legend{font-size:12.5px;color:var(--mid);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin:4px 0 12px;line-height:1.5}
.legend b{color:var(--ink)}
.pager{display:flex;gap:10px;align-items:center;padding:12px 0;color:var(--muted);font-size:12.5px}
.pager button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:6px;padding:4px 10px;cursor:pointer}
.pager button:hover{border-color:var(--accent);color:var(--accent)}
.pager button:disabled{color:var(--muted);border-color:var(--line2);cursor:default}
.note{font-size:12px;color:var(--muted);margin-top:18px;border-top:1px solid var(--line2);padding-top:10px}
.empty{padding:40px;text-align:center;color:var(--muted)}
/* drawer */
.drawer{position:fixed;top:0;right:0;height:100vh;width:min(620px,100vw);background:var(--card);border-left:1px solid var(--line);box-shadow:var(--shadow);transform:translateX(100%);transition:transform .18s ease;overflow:auto;z-index:20;padding:22px 26px 60px}
.drawer.open{transform:none}
@media (prefers-reduced-motion: reduce){.drawer{transition:none}}
.drawer .close{position:sticky;top:0;float:right;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:4px 10px;cursor:pointer;z-index:1}
.drawer .close:hover{border-color:var(--accent);color:var(--accent)}
.drawer h2{font-family:"Gentium Book Plus",Georgia,serif;font-size:28px;margin:4px 0 2px;font-weight:700;text-wrap:balance;color:var(--ink)}
.drawer .meta{color:var(--muted);font-size:12.5px;margin-bottom:14px}
.drawer .meta span+span::before,.drawer .meta a+span::before{content:" · "}
.drawer h3.sec{font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:600;margin:22px 0 8px;padding-top:10px;border-top:1px solid var(--line2)}
.drawer h3.sec .c{font-family:"IBM Plex Mono",monospace;font-weight:400;text-transform:none;letter-spacing:0;margin-left:8px}
.kv{display:grid;grid-template-columns:128px minmax(0,1fr);gap:8px 14px;margin:14px 0}
.kv dt{color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;padding-top:2px}
.kv dd{margin:0;color:var(--ink)}
blockquote.q{font-family:"Gentium Book Plus",Georgia,serif;font-size:15.5px;line-height:1.5;margin:12px 0;padding:12px 16px;border-left:3px solid var(--accent);background:var(--paper);color:var(--ink)}
.refs blockquote.q{font-size:14px;margin:6px 0;padding:8px 12px}
.cite{font-size:12.5px;color:var(--mid)}
.cnote{font-size:12px;color:var(--mid);margin:2px 0 4px;padding-left:10px;border-left:2px solid var(--line)}
.clamp{max-height:11em;overflow:hidden;position:relative}.clamp::after{content:'';position:absolute;left:0;right:0;bottom:0;height:2.2em;background:linear-gradient(to bottom,transparent,var(--card))}.clamp.open{max-height:none}.clamp.open::after{display:none}
.clampbtn{font:inherit;font-size:12px;color:var(--accent);background:none;border:0;padding:0 0 6px;cursor:pointer}
.tr{font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:13px;color:var(--mid);margin:-6px 0 10px 16px}
.tr em{font-style:normal;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-right:6px}
.stmt{margin:0 0 14px}
.stmt .head{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px;color:var(--mid)}
.stmt .reading{font-size:13px;margin-top:4px}
details.more{font-size:12.5px;color:var(--mid);margin-top:4px}
details.more summary{cursor:pointer;color:var(--accent)}
details.grp{margin:8px 0}
details.grp summary{cursor:pointer;font-weight:600;padding:4px 0;color:var(--ink)}
details.grp summary .c{font-family:"IBM Plex Mono",monospace;font-weight:400;font-size:11.5px;color:var(--muted);margin-left:6px}
.refs{margin:4px 0 0;padding-left:20px} .refs li{margin:0 0 10px} .refs li.src{padding-bottom:8px;border-bottom:1px solid var(--line2)}
.refs .cit{color:var(--ink)}
.refs .acc{font-size:12.5px;color:var(--mid);margin-top:2px;display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center}
.refs .noteline{font-size:12.5px;color:var(--mid);margin-top:3px}
a.ext{word-break:break-word}
.loading{color:var(--muted);padding:12px 0}
@media (max-width:860px){
  .acc-strip{padding:0 16px;gap:12px 14px}
  .acc-strip nav{gap:14px}
  .app{grid-template-columns:1fr}
  aside.rail{position:static;max-height:none;border-right:0;border-bottom:1px solid var(--line);display:none}
  aside.rail.open{display:block}
  .filtersbtn{display:inline-block}
  header.top{padding:12px 16px;gap:10px 14px}
  .brand{flex-wrap:wrap}
  .search{max-width:none}
  .actions{margin-left:0;width:100%}
  main{padding:0 16px 40px}
  .kv{grid-template-columns:1fr;gap:2px 0} .kv dt{margin-top:8px}
  .drawer{padding:16px 16px 60px}
  .drawer h2{font-size:24px}
}
