
:root{--ink:#242018;--muted:#6e665a;--paper:#fbf8f0;--card:#fffdf8;--green:#166c50;--emerald:#0d8a62;--gold:#d4a72c;--line:#dcd4c4;--shadow:0 .75rem 2.1875rem rgba(50,40,20,.10);--serif:Georgia,"Times New Roman",serif;--sans:Inter,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.6 var(--sans)}a{color:var(--green);text-decoration:none;font-weight:700}a:hover,a:focus{text-decoration:none;color:#0a4b37}.container{width:min(73.75rem,calc(100% - 2.25rem));margin:auto}.skip{position:absolute;left:-625rem}.skip:focus{left:1rem;top:1rem;background:white;padding:.75rem;z-index:99}.utility{background:#193b31;color:#e8f4ef;font-size:.78rem}.utility .container{display:flex;justify-content:space-between;padding:.4rem 0}.site-header{background:#fff;border-bottom:.1875rem solid var(--gold);box-shadow:var(--shadow);position:relative;z-index:2}.brand-row{display:flex;gap:2rem;align-items:center;justify-content:space-between;padding:1.2rem 0}.brand{display:flex;gap:.85rem;align-items:center;color:var(--ink)}.brand small{display:block;color:var(--muted);font-weight:400}.mark{display:grid;place-items:center;width:3.625rem;height:3.625rem;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f8de62,#d4a72c 30%,#168461 65%,#0c4c39);color:white;font:900 1rem var(--serif);border:.25rem solid white;outline:1px solid #d3c7a9}.header-search{display:flex;max-width:26.25rem;width:100%}.header-search input{flex:1;padding:.72rem;border:1px solid var(--line);border-radius:.5rem 0 0 .5rem}.header-search button{border:0;background:var(--green);color:white;padding:.75rem 1rem;border-radius:0 .5rem .5rem 0;font-weight:800}.primary{border-top:1px solid var(--line)}.primary .container{display:flex;gap:.25rem;overflow:auto}.primary a{padding:.75rem .95rem;color:var(--ink);white-space:nowrap}.primary a.active,.primary a[aria-current=page]{background:#e9f4ef;color:var(--green)}.hero{padding:4.5rem 0 3.5rem;background:linear-gradient(135deg,#fdf8e5 0,#f6efe0 50%,#e5f2eb 100%);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:3rem;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:var(--emerald);font-size:.78rem}.hero h1,h1,h2,h3{font-family:var(--serif);line-height:1.15}.hero h1{font-size:clamp(2.7rem,6vw,5.6rem);margin:.3rem 0 1rem}.lede{font-size:1.2rem;color:var(--muted);max-width:45rem}.quote-card{background:#193b31;color:white;padding:2rem;border-radius:1rem;box-shadow:var(--shadow)}.quote-card blockquote{font:italic 1.45rem/1.4 var(--serif);margin:0}.section{padding:3.5rem 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem}.section h2{font-size:2.25rem;margin:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.card{background:var(--card);border:1px solid var(--line);border-radius:.8rem;padding:1.35rem;box-shadow:0 .3125rem 1.125rem rgba(60,45,20,.05)}.card h3{margin:.15rem 0 .5rem}.stat{font:700 2.2rem var(--serif);color:var(--green)}.meta{color:var(--muted);font-size:.9rem}.badge{display:inline-block;border:1px solid #a9cabd;background:#edf7f2;color:#175d48;border-radius:62.4375rem;padding:.15rem .55rem;font-size:.73rem;font-weight:800}.book-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.book-card{display:grid;grid-template-columns:3.625rem 1fr;gap:1rem}.book-number{font:700 2rem var(--serif);color:#b48b20}.page-head{padding:3rem 0 2rem;background:#f3ecdc;border-bottom:1px solid var(--line)}.page-head h1{font-size:3rem;margin:.2rem 0}.reader-layout{display:grid;grid-template-columns:17.5rem 1fr;gap:2rem}.toc{position:sticky;top:1rem;align-self:start;max-height:75vh;overflow:auto}.toc ol{padding-left:1.25rem}.reader{background:white;border:1px solid var(--line);padding:2.3rem;border-radius:.8rem}.reader pre{white-space:pre-wrap;font:1.05rem/1.7 var(--serif)}table{width:100%;border-collapse:collapse;background:white}th,td{text-align:left;padding:.8rem;border-bottom:1px solid var(--line)}th{background:#eee7d8}.notice{padding:1rem;border-left:.25rem solid var(--gold);background:#fff8de}.search-result{padding:1rem 0;border-bottom:1px solid var(--line)}footer{background:#193b31;color:#dfece7;margin-top:3rem;padding:2.5rem 0 1rem}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.footer-bottom{border-top:1px solid #45675d;margin-top:1.5rem;padding-top:1rem;font-size:.82rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}code{font-family:ui-monospace,monospace}@media(max-width:50rem){.hero-grid,.reader-layout,.grid,.footer-grid,.book-grid{grid-template-columns:1fr}.brand-row{align-items:flex-start;flex-direction:column}.header-search{max-width:none}.toc{position:static;max-height:none}.hero{padding:3rem 0}.primary .container{padding-bottom:.2rem}}


/* Chapter reader */
.toc-heading h2{margin:.15rem 0 1rem;font-size:1.55rem}.chapter-list{list-style:none;padding:0!important;margin:0}.chapter-list li{margin:0}.chapter-list a{display:grid;grid-template-columns:2rem 1fr;gap:.55rem;align-items:start;padding:.58rem .65rem;border-radius:.45rem;color:var(--ink);font-size:.9rem;line-height:1.35;font-weight:650}.chapter-list a span{display:grid;place-items:center;width:1.65rem;height:1.65rem;border:1px solid var(--line);border-radius:50%;font-size:.72rem;color:var(--muted);background:#fff}.chapter-list a:hover,.chapter-list a:focus{background:#f4efe3;color:var(--green)}.chapter-list a.active,.chapter-list a[aria-current=page]{background:#e5f2eb;color:var(--green)}.chapter-list a.active span,.chapter-list a[aria-current=page] span{background:var(--green);border-color:var(--green);color:#fff}.chapter-head{padding:1rem 0 1.5rem;border-bottom:1px solid var(--line);margin-bottom:1.8rem}.chapter-head h2{font-size:clamp(2rem,4vw,3rem);margin:.25rem 0 0}.chapter-text{font:1.08rem/1.85 var(--serif);max-width:76ch}.chapter-pager{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line)}.chapter-pager>div{display:flex;flex-direction:column}.chapter-pager .next{text-align:right;align-items:flex-end}.chapter-pager a{font-family:var(--serif);font-size:1.05rem}@media(max-width:50rem){.chapter-pager{grid-template-columns:1fr}.chapter-pager .next{text-align:left;align-items:flex-start}.toc{max-height:20rem;overflow:auto}}

/* Text-to-speech chapter reader */
.speech-reader{margin:0 0 1.75rem;padding:1rem;border:1px solid #bfd5cb;border-radius:.7rem;background:#f0f7f3;position:sticky;top:1rem;z-index:1;box-shadow:0 .375rem 1.125rem rgba(35,75,59,.08)}
.speech-reader__row{display:flex;gap:1rem;justify-content:space-between;align-items:center;flex-wrap:wrap}
.speech-reader__controls{display:flex;gap:.45rem;flex-wrap:wrap}
.speech-button{border:1px solid #9ab9ac;background:#fff;color:var(--ink);border-radius:.45rem;padding:.55rem .7rem;font:700 .82rem/1 var(--sans);cursor:pointer}
.speech-button:hover,.speech-button:focus{border-color:var(--green);color:var(--green);background:#f8fffb}
.speech-button--primary{background:var(--green);border-color:var(--green);color:#fff}
.speech-button--primary:hover,.speech-button--primary:focus{background:#0a4b37;color:#fff}
.speech-button:disabled{opacity:.45;cursor:not-allowed}
.speech-reader__settings{display:flex;gap:.7rem;flex-wrap:wrap}
.speech-reader__settings label{display:flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.speech-reader__settings select{max-width:14rem;border:1px solid #9ab9ac;border-radius:.4rem;background:#fff;padding:.48rem;color:var(--ink);text-transform:none;letter-spacing:normal}
.speech-reader__status{margin-top:.7rem;padding-top:.65rem;border-top:1px solid #ccded6;color:#496158;font-size:.82rem}
.speech-reader.is-unsupported{background:#fff3e5;border-color:#e6c89f}
.chapter-text p{margin:0 0 1.25em;padding:.22rem .45rem;border-left:.1875rem solid transparent;border-radius:.2rem;transition:background-color .2s,border-color .2s,box-shadow .2s}
.chapter-text p.is-reading{background:#fff5c7;border-left-color:var(--gold);box-shadow:inset 0 0 0 1px #ead58a}
@media(max-width:50rem){.speech-reader{position:static}.speech-reader__row{align-items:stretch}.speech-reader__controls,.speech-reader__settings{width:100%}.speech-button{flex:1 1 auto}.speech-reader__settings label{flex:1 1 12rem;justify-content:space-between}.speech-reader__settings select{max-width:100%;width:100%}}

/* Baum introductory letters */
.front-matter-item{margin-bottom:.65rem!important;padding-bottom:.65rem;border-bottom:1px solid var(--line)}
.front-matter-item a{font-family:var(--serif);font-size:.96rem;background:#fff8de}
.front-matter-item a span{font-family:var(--sans);border-radius:.35rem}
.front-matter-text{padding:.25rem 1.25rem 1.25rem;border-left:.1875rem solid var(--gold);background:linear-gradient(90deg,#fffaf0,transparent 70%)}
.front-matter-text p:first-child::first-letter{float:left;font:700 3.2rem/.8 var(--serif);padding:.18rem .35rem 0 0;color:var(--green)}


/* v0.1.6 Reader and Research workspace */
.reader-workspace-section{padding-top:1.75rem}
.reader-layout{display:grid;grid-template-columns:minmax(13.75rem,17.5rem) minmax(0,1fr);gap:1.35rem;align-items:start}
.reader-layout.mode-research{grid-template-columns:minmax(13.125rem,15.625rem) minmax(0,1fr) minmax(14.375rem,18.125rem)}
.reader-sidebar{padding:1rem;box-shadow:none;background:#fffdf8}
.reader-main{min-width:0;padding:clamp(1.35rem,3vw,2.8rem);box-shadow:0 .625rem 1.875rem rgba(50,40,20,.07)}
.reader-mode-switch{display:inline-flex;gap:.25rem;padding:.25rem;margin:0 auto 1rem;background:#eee7d8;border-radius:62.4375rem}
.reader-mode-switch a{padding:.42rem .85rem;border-radius:62.4375rem;color:var(--muted);font-size:.8rem}
.reader-mode-switch a.active,.reader-mode-switch a[aria-current=page]{background:#fff;color:var(--green);box-shadow:0 1px .3125rem rgba(0,0,0,.12)}
.canonical-notice{font-size:.87rem;margin-bottom:1.25rem}
.chapter-head{text-align:center;padding:1.25rem 0 1.75rem}
.chapter-book-label{font:700 .8rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}
.chapter-head .eyebrow{font-size:.72rem}
.chapter-head h2{max-width:18ch;margin:.35rem auto 0}
.chapter-head::after{content:"◆";display:block;margin:1rem auto 0;color:var(--gold);font-size:.72rem}
.chapter-text{margin-inline:auto;max-width:68ch;font-size:1.12rem;line-height:1.9}
.chapter-text p:first-child{text-indent:0}
.chapter-text p+p{text-indent:1.35em}
.research-panel{display:none;position:sticky;top:1rem;padding:1.15rem;max-height:calc(100vh - 2rem);overflow:auto;background:#f8f5ec;box-shadow:none}
.mode-research .research-panel{display:block}
.research-panel__head h2{font-size:1.4rem;margin:.2rem 0 1rem}
.metadata-list{margin:0}
.metadata-list>div{display:grid;grid-template-columns:1fr auto;gap:.75rem;padding:.7rem 0;border-bottom:1px solid var(--line)}
.metadata-list dt{color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.metadata-list dd{margin:0;text-align:right;font-family:var(--serif)}
.research-placeholder{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line)}
.research-placeholder h3{font-size:1.05rem;margin:0 0 .4rem}
.research-placeholder p{margin:0;color:var(--muted);font-size:.88rem}
.mode-reader .reader-main{max-width:55rem;width:100%;justify-self:center}
.mode-reader .reader-sidebar{max-height:calc(100vh - 2rem)}
@media(max-width:67.5rem){.reader-layout.mode-research{grid-template-columns:15rem minmax(0,1fr)}.mode-research .research-panel{grid-column:2;position:static;max-height:none}}
@media(max-width:50rem){.reader-layout,.reader-layout.mode-research{grid-template-columns:1fr}.mode-research .research-panel{grid-column:auto}.reader-main{padding:1.2rem}.reader-mode-switch{display:flex;width:100%}.reader-mode-switch a{flex:1;text-align:center}.chapter-text{font-size:1.04rem;line-height:1.78}.research-panel{position:static;max-height:none}}

/* v0.1.7 mobile-first reader */
.reader-mobile-toolbar,.reader-drawer-head,.reader-drawer-scrim{display:none}
@media(max-width:50rem){
  body.reader-page{overflow-x:hidden}
  .reader-page .utility{display:none}
  .reader-page .brand-row{padding:.7rem 0;flex-direction:row;align-items:center;gap:.75rem}
  .reader-page .brand small,.reader-page .header-search{display:none}
  .reader-page .mark{width:2.625rem;height:2.625rem;border-width:.1875rem}
  .reader-page .primary .container{gap:0}
  .reader-page .primary a{padding:.62rem .75rem;font-size:.82rem}
  .reader-page .page-head{padding:1.25rem 0 1rem}
  .reader-page .page-head h1{font-size:clamp(1.75rem,8vw,2.35rem)}
  .reader-page .page-head .lede{font-size:.92rem;margin:.35rem 0 0}
  .reader-workspace-section{padding:.65rem 0 2rem}
  .reader-workspace-section>.container{width:min(100% - 1.25rem,47.5rem)}
  .reader-layout,.reader-layout.mode-research{display:block}
  .reader-mobile-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;position:sticky;top:0;z-index:20;margin:0 0 .65rem;padding:.5rem;background:rgba(251,248,240,.96);border:1px solid var(--line);border-radius:.65rem;backdrop-filter:blur(.625rem)}
  .mode-research .reader-mobile-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}
  .reader-mobile-button{display:flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.75rem;border:1px solid var(--line);border-radius:.5rem;background:#fff;color:var(--ink);font:800 .82rem/1 var(--sans);cursor:pointer}
  .reader-mobile-button:hover,.reader-mobile-button:focus{background:#e9f4ef;color:var(--green);border-color:#a9cabd}
  .reader-sidebar{position:fixed!important;inset:0 auto 0 0;z-index:60;width:min(88vw,22.5rem);max-height:none!important;margin:0;border-radius:0;padding:0 1rem 1.5rem;transform:translateX(-105%);transition:transform .22s ease;overflow:auto;box-shadow:.75rem 0 2.1875rem rgba(0,0,0,.22);background:var(--card)}
  .reader-sidebar.is-open{transform:translateX(0)}
  .reader-drawer-head{display:flex;position:sticky;top:0;z-index:2;align-items:center;justify-content:space-between;margin:0 -1rem 1rem;padding:.85rem 1rem;background:var(--card);border-bottom:1px solid var(--line)}
  .reader-drawer-head button{width:2.625rem;height:2.625rem;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:1.65rem;line-height:1;cursor:pointer}
  .reader-drawer-scrim{display:block;position:fixed;inset:0;z-index:50;background:rgba(20,25,22,.48)}
  .reader-drawer-scrim[hidden]{display:none}
  body.reader-drawer-open{overflow:hidden}
  .reader-main{width:100%;padding:clamp(1rem,4vw,1.4rem);border-radius:.65rem}
  .reader-mode-switch{margin-bottom:.8rem}
  .canonical-notice{padding:.75rem;font-size:.8rem}
  .chapter-head{padding:.8rem 0 1.2rem;margin-bottom:1.1rem}
  .chapter-head h2{font-size:clamp(1.85rem,9vw,2.65rem)}
  .chapter-text{max-width:none;font-size:clamp(1.03rem,4.5vw,1.16rem);line-height:1.82}
  .chapter-text p{padding:.15rem .1rem;margin-bottom:1.18em}
  .speech-reader{position:static;margin-bottom:1rem;padding:.75rem}
  .speech-reader__controls{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}
  .speech-button{min-height:2.75rem;padding:.55rem .35rem;font-size:.75rem}
  .speech-button span{display:block;line-height:1.15}
  .speech-reader__settings{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
  .speech-reader__settings label{display:block}
  .speech-reader__settings select{margin-top:.3rem;min-height:2.75rem}
  .chapter-pager{margin-top:2rem}
  .research-panel{display:none!important;position:static;max-height:none;margin-top:.75rem;padding:1rem}
  .mode-research .research-panel.is-mobile-open{display:block!important}
  .mode-research .research-panel.is-mobile-open + *{clear:both}
  footer{margin-top:1rem}
}
@media(min-width:50.0625rem){
  .reader-sidebar[aria-hidden="true"]{visibility:visible}
}

/* v0.1.8 Emerald & Gold visual refinement */
:root{
  --ink:#14281f;
  --muted:#557064;
  --paper:#edf5ef;
  --card:#fbfffc;
  --green:#0c6848;
  --emerald:#078153;
  --green-deep:#073f2d;
  --green-dark:#062f23;
  --green-mid:#176f50;
  --green-soft:#dceee4;
  --green-pale:#f1f8f3;
  --gold:#c99a18;
  --gold-deep:#8f6410;
  --gold-light:#f8df73;
  --gold-pale:#fff4bf;
  --line:#b8d0c2;
  --shadow:0 .75rem 1.875rem rgba(5,61,42,.12);
}
body{background:linear-gradient(180deg,#eef7f1 0,#e5f1e9 100%);color:var(--ink)}
.utility{background:linear-gradient(90deg,#042e21,#0b5039 55%,#063b2a);color:#e8f8ef}
.site-header{background:linear-gradient(180deg,#fbfffc 0,#edf7f1 100%);border-bottom:.25rem solid var(--gold);box-shadow:0 .5rem 1.5rem rgba(4,53,37,.16)}
.brand{color:var(--green-deep)}
.brand small{color:var(--green-mid)}
.mark{background:radial-gradient(circle at 32% 25%,#fff4a5 0,#f1c943 20%,#c58b10 38%,#15905d 62%,#06422f 100%);border-color:#fff9d6;outline:.125rem solid var(--gold-deep);box-shadow:0 .25rem .75rem rgba(110,76,10,.22)}
.primary{border-top-color:#c9dfd1;background:#f7fcf8}
.primary a{color:var(--green-deep)}
.primary a:hover,.primary a:focus{background:var(--green-soft);color:var(--green-dark)}
.primary a.active,.primary a[aria-current=page]{background:linear-gradient(180deg,#e5f5eb,#cfe8da);color:var(--green-deep);box-shadow:inset 0 -.125rem 0 var(--gold)}
.hero{background:linear-gradient(135deg,#edf8f1 0,#dcefe4 48%,#c7e4d2 100%);border-bottom-color:#a9c8b6}
.page-head{background:linear-gradient(135deg,#e5f3e9,#cfe6d8);border-bottom-color:#a7c7b4}
.eyebrow{color:var(--emerald)}
.quote-card,footer{background:linear-gradient(145deg,#073e2d,#0b5b40 62%,#063324);color:#effaf3}
.quote-card{border:1px solid #2b7d5d;box-shadow:0 .9375rem 2.1875rem rgba(4,58,39,.22)}
.card,.reader,.reader-sidebar{background:linear-gradient(180deg,#ffffff,#f6fbf8);border-color:#b6d0c1;box-shadow:0 .4375rem 1.375rem rgba(8,69,47,.08)}
.card:hover{border-color:#8fb8a1}
.badge{border-color:#8cb69e;background:#e3f2e8;color:#0d5b3f}
.stat{color:var(--emerald)}
.book-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.book-card{display:block;position:relative;min-height:13.75rem;padding:1.25rem;border-top:.25rem solid var(--gold)}
.book-card .book-number{margin-bottom:.45rem}
.book-card h3{font-size:1.22rem}
.book-number{color:var(--gold-deep)}
.notice{background:linear-gradient(90deg,#fff8d7,#f5edbd);border-left-color:var(--gold);color:#4c3a0b}
table{background:#fbfffc}th{background:#dcece2;color:var(--green-deep)}
.reader-mode-switch{background:#d6e8dd;border:1px solid #a9c7b5}
.reader-mode-switch a{color:#3e6856}
.reader-mode-switch a.active,.reader-mode-switch a[aria-current=page]{background:linear-gradient(180deg,#fff5ae,#dfae25);color:#3b2b00;border:1px solid #a8790e;box-shadow:0 .1875rem .5rem rgba(101,72,9,.2)}
.chapter-list a:hover,.chapter-list a:focus{background:#e4f1e8;color:var(--green-deep)}
.chapter-list a.active,.chapter-list a[aria-current=page]{background:linear-gradient(90deg,#d6ecdf,#eef8f1);color:var(--green-deep);box-shadow:inset .1875rem 0 0 var(--gold)}
.chapter-list a.active span,.chapter-list a[aria-current=page] span{background:linear-gradient(180deg,#15905d,#07553b);border-color:#06452f}
.speech-reader{background:linear-gradient(180deg,#edf8f1,#deeee5);border-color:#9dc2ac;box-shadow:0 .4375rem 1.125rem rgba(5,75,50,.1)}
.speech-button,.reader-mobile-button,.reader-drawer-head button{border-color:#9bbda9;background:#fbfffc;color:var(--green-deep);box-shadow:0 .125rem .3125rem rgba(5,62,42,.08)}
.speech-button:hover,.speech-button:focus,.reader-mobile-button:hover,.reader-mobile-button:focus{background:#e2f1e7;border-color:#4e9675;color:var(--green-dark)}
.speech-button--primary,.header-search button{
  background:linear-gradient(180deg,#fff0a0 0,#e5b62f 45%,#bd8410 100%);
  border:1px solid #8f6410;
  color:#392800;
  text-shadow:0 1px 0 rgba(255,255,255,.45);
  box-shadow:0 .1875rem .4375rem rgba(99,69,7,.24),inset 0 1px 0 rgba(255,255,255,.65)
}
.speech-button--primary:hover,.speech-button--primary:focus,.header-search button:hover,.header-search button:focus{background:linear-gradient(180deg,#fff5ba,#edc34a 48%,#c99316);color:#2f2100;border-color:#725008}
.chapter-text p.is-reading{background:#fff3ad;border-left-color:var(--gold-deep);box-shadow:inset 0 0 0 1px #d4aa36}
.front-matter-item a{background:linear-gradient(90deg,#fff6c9,#f2dfa0)}
.front-matter-text{background:linear-gradient(90deg,#fff9dc,rgba(240,248,242,.35) 75%)}
.research-panel{background:linear-gradient(180deg,#edf7f1,#dcece3)}
.reader-mobile-toolbar{background:rgba(235,246,239,.96)!important;border-color:#a8c6b4!important}
.reader-drawer-scrim{background:rgba(2,35,24,.58)}
footer{border-top:.25rem solid var(--gold)}
.footer-bottom{border-top-color:#3f8067}

/* Shared gold action treatment */
.gold-button,.hero a[href*="books"]{
  display:inline-block;
  padding:.5rem .78rem;
  border:1px solid var(--gold-deep);
  border-radius:.45rem;
  background:linear-gradient(180deg,#fff1a1 0,#e6b72f 48%,#bd8410 100%);
  color:#3a2900;
  text-shadow:0 1px 0 rgba(255,255,255,.5);
  box-shadow:0 .1875rem .4375rem rgba(99,69,7,.2),inset 0 1px 0 rgba(255,255,255,.65)
}
.gold-button:hover,.gold-button:focus,.hero a[href*="books"]:hover,.hero a[href*="books"]:focus{background:linear-gradient(180deg,#fff7c9,#efc957 50%,#c99015);color:#2d2000}

@media(max-width:68.75rem){.book-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:50rem){.book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.book-card{min-height:0}}
@media(max-width:32.5rem){.book-grid{grid-template-columns:1fr}}


/* Oz Narrator experimental profile */
.speech-reader__profile-note {
  grid-column: 1 / -1;
  margin: .35rem 0 0;
  max-width: 42rem;
  color: var(--muted, #466052);
  font-size: .82rem;
  line-height: 1.45;
}
.speech-reader__profile-note strong { color: var(--green-900, #123c2b); }

/* v0.2.0 — The Library Edition */
:root{
  --copper-deep:#6f321d;--copper:#a9572f;--copper-mid:#c97845;--copper-light:#efb783;--copper-pale:#fff0df;
  --catalog-paper:#f5f0e6;--catalog-line:#d3c7b4;--catalog-ink:#3d362d;
}
/* Center mode selector */
.reader-mode-switch{display:flex;justify-content:center;align-items:center;width:max-content;max-width:100%;margin:0 auto 1rem;padding:.25rem;border-radius:62.4375rem}
.reader-mode-switch a{display:block;padding:.5rem .9rem;border-radius:62.4375rem;text-align:center}
/* Restore pre-green-and-gold content menu character */
.reader-sidebar{background:linear-gradient(180deg,#fffdf8,#f4efe5);border-color:var(--catalog-line);color:var(--catalog-ink)}
.reader-sidebar .eyebrow{color:#77664e}.reader-sidebar .toc-heading h2{color:var(--catalog-ink)}
.chapter-list a{color:var(--catalog-ink);border-bottom:1px solid rgba(211,199,180,.45);border-radius:.35rem}
.chapter-list a span{background:#fff;border-color:var(--catalog-line);color:#746a5e}
.chapter-list a:hover,.chapter-list a:focus{background:#eee7da;color:#574b3b}
.chapter-list a.active,.chapter-list a[aria-current=page]{background:linear-gradient(90deg,#efe6d5,#fffaf0);color:#433729;box-shadow:inset .25rem 0 0 var(--gold)}
.chapter-list a.active span,.chapter-list a[aria-current=page] span{background:#6d5c45;border-color:#514330;color:#fff}
.front-matter-item a{background:linear-gradient(90deg,#f4ead4,#fffaf0)}
/* Copper audio system */
.speech-reader{background:linear-gradient(145deg,#fff5e9 0,#efd0b4 52%,#d69a6b 100%);border:.125rem solid var(--copper-deep);box-shadow:0 .5rem 1.25rem rgba(91,42,24,.22),inset 0 1px 0 rgba(255,255,255,.65)}
.speech-reader__row{align-items:flex-start}.speech-reader__controls{flex:1 1 32.5rem}.speech-reader__settings{flex:1 1 17.5rem}
.speech-button{border:1px solid var(--copper-deep);background:linear-gradient(180deg,#fff7ec,#e5b58d);color:#4b2415;box-shadow:0 .1875rem .4375rem rgba(79,35,19,.18),inset 0 1px 0 rgba(255,255,255,.75)}
.speech-button:hover,.speech-button:focus{background:linear-gradient(180deg,#fff9f2,#efc49f);border-color:#4f2112;color:#32150c}
.speech-button--primary{background:linear-gradient(180deg,#ffd4a8 0,#c87343 48%,#914322 100%);border-color:#5d2816;color:#fff8f1;text-shadow:0 1px 1px rgba(50,17,7,.7);box-shadow:0 .25rem .5625rem rgba(70,28,13,.3),inset 0 1px 0 rgba(255,255,255,.5)}
.speech-button--primary:hover,.speech-button--primary:focus{background:linear-gradient(180deg,#ffe2bf,#d78350 50%,#9b4825);color:#fff}
.speech-reader__settings label{color:#5f2f1e}.speech-reader__settings select{border-color:#8e4c2d;background:#fff9f3;color:#4b2415}
.speech-reader__status{border-top-color:#ad6a46;color:#542b1d;background:rgba(255,247,238,.45);padding:.65rem .75rem;border-radius:.35rem}
.speech-reader__profile-note{color:#633420}.speech-reader__profile-note strong{color:#4f2315}
.voice-casting{margin:.8rem 0 0;border:1px solid #8d4a2c;border-radius:.5rem;background:rgba(255,247,238,.68);color:#4b2415}
.voice-casting summary{cursor:pointer;padding:.65rem .8rem;font-weight:900;color:#5b2918}
.voice-casting__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;padding:0 .8rem .7rem}
.voice-casting__grid div{display:flex;justify-content:space-between;gap:.5rem;padding:.45rem .55rem;border:1px solid #d6a07c;background:#fffaf5;border-radius:.35rem;font-size:.8rem}
.voice-casting__grid span{font-weight:800;color:#884324}.voice-casting .meta{padding:0 .8rem .8rem;margin:0;color:#6d3e2b}
/* Complete book library */
.book-card{display:flex;flex-direction:column;min-height:19.375rem}.book-card__top{display:flex;justify-content:space-between;align-items:start;gap:.5rem}.book-card__year{margin:.1rem 0 1rem;color:var(--gold-deep);font-weight:900}
.book-card__facts{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:0 0 .85rem}.book-card__facts div{padding:.5rem;border:1px solid var(--line);border-radius:.4rem;background:var(--green-pale)}.book-card__facts dt{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:900}.book-card__facts dd{margin:0;font:700 1.05rem var(--serif);color:var(--green-deep)}
.book-card__intro{font-size:.82rem;color:var(--muted);margin:auto 0 .9rem}.intro-mark{color:var(--gold-deep);font-weight:900}.book-card__actions{display:flex;align-items:center;gap:.75rem}.book-card__actions a:not(.gold-button){padding:.45rem .25rem}
.research-shelves{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;list-style:none;padding:0;margin:.75rem 0}.research-shelves li{padding:.45rem .55rem;border:1px solid var(--line);border-radius:.35rem;background:#fff;color:var(--green-deep);font-size:.82rem;font-weight:800}
.app-status{background:#082f22;color:#dcece4;border-top:1px solid #2c6d54;font-size:.75rem}.app-status .container{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0}
@media(max-width:50rem){.reader-mode-switch{width:100%;display:grid;grid-template-columns:1fr 1fr}.voice-casting__grid{grid-template-columns:1fr 1fr}.app-status .container{flex-direction:column;gap:.15rem}.book-card{min-height:0}}
@media(max-width:32.5rem){.voice-casting__grid{grid-template-columns:1fr}.speech-reader__settings{grid-template-columns:1fr}.reader-mode-switch a{font-size:.8rem;padding:.55rem .4rem}}

/* v0.2.1 — Catalog navigation controls
   Chapter/content navigation intentionally does not inherit the global gold action style. */
.chapter-list a.chapter-menu-link{
  display:grid;
  padding:.58rem .65rem;
  border:0;
  border-bottom:1px solid rgba(211,199,180,.55);
  border-radius:.3rem;
  background:transparent;
  color:var(--catalog-ink);
  text-shadow:none;
  box-shadow:none;
}
.chapter-list a.chapter-menu-link:hover,.chapter-list a.chapter-menu-link:focus{
  background:#eee7da;
  color:#574b3b;
  border-color:rgba(183,166,140,.7);
  box-shadow:none;
}
.chapter-list a.chapter-menu-link.active,.chapter-list a.chapter-menu-link[aria-current=page]{
  background:linear-gradient(90deg,#efe6d5,#fffaf0);
  color:#433729;
  box-shadow:inset .25rem 0 0 var(--gold);
}
.chapter-nav-button{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  width:fit-content;
  padding:.5rem .72rem;
  border:1px solid #b9aa93;
  border-radius:.42rem;
  background:linear-gradient(180deg,#fffdf8,#e9e0d1);
  color:#493d2f;
  font-family:var(--serif);
  font-size:1.02rem;
  font-weight:700;
  text-shadow:none;
  box-shadow:0 .125rem .3125rem rgba(69,55,38,.12),inset 0 1px 0 #fff;
}
.chapter-nav-button:hover,.chapter-nav-button:focus{
  background:linear-gradient(180deg,#fff,#ded2c0);
  border-color:#89765c;
  color:#2f271e;
}
.book-card__actions .research-button,.book-card__actions .explore-button{
  display:inline-block;
  padding:.48rem .68rem;
  border:1px solid #87aa96;
  border-radius:.42rem;
  background:linear-gradient(180deg,#fbfffc,#dcece3);
  color:var(--green-deep);
  box-shadow:0 .125rem .3125rem rgba(6,67,45,.1),inset 0 1px 0 #fff;
}
.book-card__actions .research-button:hover,.book-card__actions .research-button:focus,.book-card__actions .explore-button:hover,.book-card__actions .explore-button:focus{
  background:linear-gradient(180deg,#fff,#cce3d5);
  border-color:#4f876b;
  color:var(--green-dark);
}

/* v0.2.4 — Library Administration */
.admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.admin-card{display:flex;flex-direction:column;min-height:15.625rem}.admin-card .gold-button,.admin-card .research-button{margin-top:auto;width:fit-content}
.admin-two-column{display:grid;grid-template-columns:1.35fr .65fr;gap:1rem;margin-bottom:1rem}
.admin-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0}
.admin-status{display:inline-block;width:fit-content;margin:.35rem 0;padding:.3rem .55rem;border-radius:62.4375rem;font:800 .76rem var(--sans)}
.admin-status.is-ready{background:#d9f0e1;color:#0b573a;border:1px solid #83b99a}.admin-status.is-needed{background:#fff0df;color:#7b351c;border:1px solid #d28b60}
.admin-log{margin-top:1rem;border:1px solid var(--catalog-line);border-radius:.5rem;background:#fffdf8}.admin-log summary{cursor:pointer;padding:.65rem .8rem;font-weight:800}.admin-log pre{max-height:20rem;overflow:auto;margin:0;padding:.8rem;border-top:1px solid var(--catalog-line);white-space:pre-wrap;font-size:.76rem}
.voice-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.voice-admin-item{padding:.85rem;border:1px solid var(--line);border-radius:.55rem;background:var(--green-pale)}.voice-admin-item h3{margin:0 0 .3rem}.voice-admin-item p{margin:.25rem 0}.voice-admin-item .research-button{margin-top:.45rem}
[data-admin-audio]{width:100%;margin-top:1rem}
@media(max-width:68.75rem){.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.voice-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:50rem){.admin-two-column{grid-template-columns:1fr}.admin-grid,.voice-admin-grid{grid-template-columns:1fr}}
/* v0.3.1 multi-engine reader */
@media (min-width: 50.0625rem) {
  .speech-reader__settings { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Reader Engine diagnostics */
.diagnostic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.25rem}.diagnostic-item{border-left:.25rem solid var(--green-500,#24734a)}.diagnostic-item.is-needed{border-left-color:#a64b2a}.diagnostic-item code{overflow-wrap:anywhere}.diagnostic-item h2{font-size:1.1rem;margin:.35rem 0}.diagnostic-item p{margin:0}
@media(max-width:56.25rem){.diagnostic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:36.25rem){.diagnostic-grid{grid-template-columns:1fr}}
.admin-path-input{display:block;width:100%;box-sizing:border-box;margin:.55rem 0 1rem;padding:.8rem .9rem;border:1px solid #8da998;border-radius:.45rem;background:#fffdf8;color:#173527;font:inherit}.admin-path-input:focus{outline:.1875rem solid rgba(188,130,43,.25);border-color:#9b621f}.setup-results{display:grid;gap:.5rem;margin-top:1rem}.setup-results .chapter-nav-button{text-align:left;width:100%;overflow-wrap:anywhere}.metadata-list>div{display:grid;grid-template-columns:minmax(9rem,12rem) 1fr;gap:1rem;padding:.65rem 0;border-bottom:1px solid rgba(38,103,73,.2)}.metadata-list dt{font-weight:700;color:#315f49}.metadata-list dd{margin:0;overflow-wrap:anywhere}


/* v0.4.1 — Compact pre-voice Reader UI
   Keeps current narration engines while restoring the earlier toolbar footprint. */
.speech-reader{
  position:static;
  margin:0 0 1.25rem;
  padding:.72rem .8rem;
  border-width:1px;
  border-radius:.55rem;
  box-shadow:0 .25rem .75rem rgba(91,42,24,.14),inset 0 1px 0 rgba(255,255,255,.55);
}
.speech-reader__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.6rem 1rem;
  flex-wrap:wrap;
}
.speech-reader__controls{
  flex:1 1 auto;
  display:flex;
  gap:.35rem;
  flex-wrap:wrap;
}
.speech-button{
  min-height:0;
  padding:.42rem .56rem;
  font-size:.75rem;
  line-height:1.05;
  box-shadow:0 .125rem .25rem rgba(79,35,19,.14),inset 0 1px 0 rgba(255,255,255,.65);
}
.speech-button span{display:inline;line-height:inherit}
.speech-reader__settings{
  flex:0 1 auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:.45rem;
  flex-wrap:wrap;
}
.speech-reader__settings label{
  display:flex;
  align-items:center;
  gap:.28rem;
  font-size:.66rem;
  letter-spacing:.04em;
  white-space:nowrap;
}
.speech-reader__settings select{
  width:auto;
  max-width:10.5rem;
  min-height:0;
  padding:.34rem .42rem;
  font-size:.76rem;
}
.speech-reader__settings label:first-child select{max-width:13rem}
.speech-reader__status{
  margin-top:.48rem;
  padding:.42rem .55rem;
  font-size:.75rem;
  line-height:1.25;
  border-radius:.28rem;
}
@media(max-width:50rem){
  .speech-reader{padding:.65rem}
  .speech-reader__row{align-items:stretch}
  .speech-reader__controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%}
  .speech-button{padding:.48rem .25rem;font-size:.7rem}
  .speech-button span{display:block}
  .speech-reader__settings{display:grid;grid-template-columns:1.5fr 1fr .7fr;width:100%;gap:.4rem}
  .speech-reader__settings label{display:block;white-space:normal}
  .speech-reader__settings select{width:100%;max-width:none;margin-top:.2rem;min-height:2.375rem}
}
@media(max-width:32.5rem){
  .speech-reader__controls{grid-template-columns:repeat(3,minmax(0,1fr))}
  .speech-reader__settings{grid-template-columns:1fr 1fr}
  .speech-reader__settings label:first-child{grid-column:1 / -1}
}

/* v0.4.3.15 — Oz Exploration Library identity and visual refinement */
:root{
  --border-emphasis:0.125rem;
  --gold-reflective:linear-gradient(180deg,#fff8d8 0%,#f9df82 13%,#bd8410 31%,#fff0a0 49%,#9f6810 67%,#f6d66e 84%,#fff9df 100%);
  --shadow-navbar:0 0.625rem 1.625rem rgba(2,35,24,.32);
  --shadow-component:0 0.5rem 1.35rem rgba(5,53,36,.19);
  --shadow-component-hover:0 0.7rem 1.75rem rgba(4,45,30,.25);
  --shadow-text-subtle:0.035rem 0.055rem 0.105rem rgba(18,29,20,.38);
}

/* Header: slightly translucent surface, stronger and darker separation. */
.site-header{
  background:color-mix(in srgb,#f5fcf7 91%,transparent);
  border-bottom-width:0.25rem;
  box-shadow:var(--shadow-navbar);
  backdrop-filter:saturate(115%) blur(0.3rem);
}
.primary{background:color-mix(in srgb,#f7fcf8 90%,transparent)}

/* Shared component elevation and reflective gold card stroke. */
.card{
  border:var(--border-emphasis) solid transparent;
  background:
    linear-gradient(180deg,#ffffff,#f6fbf8) padding-box,
    var(--gold-reflective) border-box;
  box-shadow:var(--shadow-component);
}
.card:hover{box-shadow:var(--shadow-component-hover)}
.quote-card{
  border:var(--border-emphasis) solid transparent;
  background:
    linear-gradient(145deg,#073e2d,#0b5b40 62%,#063324) padding-box,
    var(--gold-reflective) border-box;
  box-shadow:0 0.9rem 2.1rem rgba(2,35,24,.34);
}

/* Large data values and exploration collection headings. */
.stat{
  color:var(--emerald);
  text-shadow:0.045rem 0.065rem 0.12rem rgba(4,48,32,.38);
}
.exploration-collections .card h3{
  color:var(--gold-deep);
  text-shadow:var(--shadow-text-subtle);
}

/* Default action buttons: stronger scalable stroke and darker tactile shadow. */
.gold-button,.hero a[href*="books"],.header-search button,.speech-button--primary{
  border-width:var(--border-emphasis);
  box-shadow:0 0.3rem 0.72rem rgba(76,49,4,.34),inset 0 0.0625rem 0 rgba(255,255,255,.68);
}
.gold-button:hover,.gold-button:focus,.hero a[href*="books"]:hover,.hero a[href*="books"]:focus{
  box-shadow:0 0.42rem 0.9rem rgba(69,43,3,.4),inset 0 0.0625rem 0 rgba(255,255,255,.75);
}

/* Explore actions remain secondary and distinct from primary gold actions. */
.explore-button,.research-button{
  display:inline-block;
  padding:.48rem .68rem;
  border:0.125rem solid #71977f;
  border-radius:.42rem;
  background:linear-gradient(180deg,#fbfffc,#dcece3);
  color:var(--green-deep);
  box-shadow:0 .15rem .38rem rgba(6,67,45,.18),inset 0 .0625rem 0 #fff;
}
.explore-button:hover,.explore-button:focus,.research-button:hover,.research-button:focus{
  background:linear-gradient(180deg,#fff,#cce3d5);
  border-color:#3f755a;
  color:var(--green-dark);
}

/* Dedicated book pagination, visually related to the Content Menu. */
.book-pagination,.chapter-pager{gap:1rem}
.book-pagination__link,.chapter-nav-button{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  width:fit-content;
  padding:.58rem .78rem;
  border:0.125rem solid #b9aa93;
  border-radius:.42rem;
  background:linear-gradient(180deg,#fffdf8,#e9e0d1);
  color:#493d2f;
  font-family:var(--serif);
  font-size:1.02rem;
  font-weight:700;
  text-shadow:none;
  box-shadow:0 .18rem .42rem rgba(69,55,38,.18),inset 0 .0625rem 0 #fff;
}
.book-pagination__link:hover,.book-pagination__link:focus,.chapter-nav-button:hover,.chapter-nav-button:focus{
  background:linear-gradient(180deg,#fff,#ded2c0);
  border-color:#7c684e;
  color:#2f271e;
  box-shadow:0 .28rem .58rem rgba(56,43,28,.24),inset 0 .0625rem 0 #fff;
}

/* The status band and footer form one continuous page ending. */
.app-status{margin:0}
footer{margin-top:0}

/* Unit normalization for legacy structural measurements touched in this pass. */
.site-header{border-bottom-width:.25rem}
footer{border-top-width:.25rem}
.notice{border-left-width:.25rem}
.chapter-text p{border-left-width:.1875rem}
.chapter-list a.active,.chapter-list a[aria-current=page]{box-shadow:inset .25rem 0 0 var(--gold)}

@media(max-width:50rem){
  .site-header{backdrop-filter:none}
  .book-pagination__link,.chapter-nav-button{width:100%;justify-content:flex-start}
  .chapter-pager .next .chapter-nav-button{justify-content:flex-start}
}

/* v0.4.3.15 — Home-card and pagination visual correction */

/* Book pagination is catalog navigation, but uses the application's sans-serif UI face. */
.book-pagination__link,
.chapter-nav-button{
  font-family:var(--sans);
  font-size:.94rem;
  line-height:1.25;
  letter-spacing:.005em;
}

/* Shared Home-page card component. The cited cards are instances of these groups,
   so the treatment applies to every card within both collections. */
.statistics-grid .card,
.exploration-collections .card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:0.125rem solid transparent;
  background:
    linear-gradient(155deg,rgba(255,255,255,.98),rgba(239,249,243,.98)) padding-box,
    linear-gradient(
      118deg,
      #8a5a08 0%,
      #f4cf58 11%,
      #fff8c9 21%,
      #bd7e09 35%,
      #ffe88d 49%,
      #8e5c08 63%,
      #f7d868 79%,
      #fff7c2 90%,
      #a86f0a 100%
    ) border-box;
  box-shadow:
    0 .55rem 1.35rem rgba(3,45,30,.22),
    inset 0 .0625rem 0 rgba(255,255,255,.9);
  transition:box-shadow .18s ease,transform .18s ease,background .18s ease;
}
.statistics-grid .card::after,
.exploration-collections .card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 0 30%,rgba(255,255,255,.44) 42%,transparent 54% 100%);
  opacity:.3;
}
.statistics-grid .card:hover,
.exploration-collections .card:hover{
  transform:translateY(-.0625rem);
  box-shadow:
    0 .72rem 1.7rem rgba(2,39,26,.29),
    inset 0 .0625rem 0 rgba(255,255,255,.95);
}

/* Large Home data values: stronger definition without increasing size. */
.statistics-grid .stat{
  color:var(--emerald);
  text-shadow:
    0 .0625rem 0 rgba(255,255,255,.85),
    0 .105rem .15rem rgba(2,42,28,.42);
}

/* Exploration collection headings use the same metallic-gold family as the navbar stroke. */
.exploration-collections .card h3{
  color:#b87b0a;
  text-shadow:
    0 .0625rem 0 rgba(255,250,218,.95),
    0 .09rem .13rem rgba(52,34,4,.34);
}

/* v0.4.3.15 — Shared branding and visual-system patch */
:root{
  --border-action:.125rem;
  --border-feature:.125rem;
  --radius-card:.8rem;
  --shadow-card:0 .55rem 1.35rem rgba(3,45,30,.22);
  --shadow-card-hover:0 .72rem 1.7rem rgba(2,39,26,.29);
  --shadow-stat:.03125rem .03125rem .0625rem rgba(0,0,0,.22);
  --shadow-card-heading:.03125rem .03125rem .09375rem rgba(0,0,0,.25);
  --transition-ui:.18s ease;
}

/* Shared branding component. */
.site-brand{
  display:flex;
  align-items:center;
  gap:.9rem;
  min-width:0;
}
.site-brand__logo{
  display:block;
  width:clamp(3rem,4.2vw,3.5rem);
  height:clamp(3rem,4.2vw,3.5rem);
  flex:0 0 auto;
  object-fit:contain;
  filter:drop-shadow(0 .16rem .25rem rgba(55,34,2,.28));
}
.site-brand__text{display:block;min-width:0}
.site-brand__title{display:block;color:var(--ink);font-family:var(--serif);font-size:1.08rem;line-height:1.15}
.site-brand__tagline{display:block;color:var(--muted);font:400 .86rem/1.35 var(--sans)}
.mark{display:none}

/* Shared navigation typography: interface navigation uses the UI sans-serif face. */
.primary,
.primary a,
.chapter-list,
.chapter-list a,
.book-pagination,
.book-pagination__link,
.chapter-nav-button,
.header-search,
.speech-reader,
.admin-nav,
.breadcrumbs,
.tabs,
[role="tablist"]{
  font-family:var(--sans);
}

/* Generic cards remain neutral; feature styling belongs to explicit components. */
.card{
  border:.0625rem solid var(--line);
  background:var(--card);
  box-shadow:0 .3125rem 1.125rem rgba(60,45,20,.08);
  transition:box-shadow var(--transition-ui),transform var(--transition-ui),border-color var(--transition-ui);
}
.card:hover{box-shadow:0 .45rem 1.3rem rgba(49,37,19,.12)}

/* Shared Home card component—not page-scoped selectors. */
.home-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:var(--border-feature) solid transparent;
  border-radius:var(--radius-card);
  background:
    linear-gradient(155deg,rgba(255,255,255,.99),rgba(237,248,242,.99)) padding-box,
    var(--gold-reflective) border-box;
  box-shadow:var(--shadow-card),inset 0 .0625rem 0 rgba(255,255,255,.92);
  transition:box-shadow var(--transition-ui),transform var(--transition-ui),background var(--transition-ui);
}
.home-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 0 30%,rgba(255,255,255,.46) 42%,transparent 54% 100%);
  opacity:.32;
}
.home-card:hover{
  transform:translateY(-.125rem);
  box-shadow:var(--shadow-card-hover),inset 0 .0625rem 0 rgba(255,255,255,.96);
}
.stat-value{
  color:var(--emerald);
  font-weight:750;
  text-shadow:var(--shadow-stat);
}
.collection-card__heading{
  color:var(--gold-deep);
  text-shadow:var(--shadow-card-heading);
}

/* Featured dark cards retain the reflective gold frame. */
.quote-card{
  border:var(--border-feature) solid transparent;
  background:
    linear-gradient(145deg,#073e2d,#0b5b40 62%,#063324) padding-box,
    var(--gold-reflective) border-box;
}

/* Default action buttons use one stronger component stroke and motion language. */
.gold-button,
.header-search button,
.speech-button--primary,
.hero a[href*="books"]{
  border-width:var(--border-action);
  transition:background var(--transition-ui),box-shadow var(--transition-ui),transform var(--transition-ui),border-color var(--transition-ui);
}
.gold-button:hover,
.gold-button:focus,
.header-search button:hover,
.header-search button:focus,
.speech-button--primary:hover,
.speech-button--primary:focus,
.hero a[href*="books"]:hover,
.hero a[href*="books"]:focus{
  transform:translateY(-.0625rem);
}

/* Dedicated catalog-style book pagination component. */
.book-pagination__link,
.chapter-nav-button{
  font-family:var(--sans);
  font-size:.94rem;
  font-weight:650;
  line-height:1.3;
  letter-spacing:.005em;
  border:var(--border-action) solid #b9aa93;
  background:linear-gradient(180deg,#fffdf8,#e9e0d1);
  color:#493d2f;
  text-shadow:none;
  transition:background var(--transition-ui),box-shadow var(--transition-ui),transform var(--transition-ui),border-color var(--transition-ui);
}
.book-pagination__link:hover,
.book-pagination__link:focus,
.chapter-nav-button:hover,
.chapter-nav-button:focus{
  transform:translateY(-.0625rem);
}

/* The page ending remains continuous. */
.app-status{margin-bottom:0}
footer{margin-top:0}

@media(max-width:50rem){
  .site-brand__logo{width:3rem;height:3rem}
  .site-brand__title{font-size:1rem}
}

/* v0.4.3.15 — Book-card and Explore Context component refinement */
.book-card{
  align-items:center;
  text-align:center;
}
.book-card__top{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  margin-bottom:.85rem;
}
.book-card__series{
  font-family:var(--sans);
  font-size:.76rem;
  letter-spacing:.02em;
}
.book-card .book-number{display:none}
.book-card h3{
  width:100%;
  margin:.15rem auto .55rem;
  text-align:center;
}
.book-card__year{
  width:100%;
  margin:.1rem 0 1rem;
  text-align:center;
}
.book-card__facts{
  width:100%;
  margin:0 0 .9rem;
}
.book-card__facts div{text-align:center}
.book-card__facts dt,
.book-card__facts dd{
  font-family:var(--sans);
}
.book-card__facts dd{
  font-size:1.05rem;
  font-weight:800;
}
.book-card__intro{
  width:100%;
  text-align:center;
}
.book-card__actions{
  justify-content:center;
  width:100%;
}

/* Shared metadata component: interface data uses sans-serif and gives results room. */
.context-meta>div,
.metadata-list.context-meta>div{
  grid-template-columns:minmax(6.5rem,38%) minmax(0,62%);
  align-items:center;
  column-gap:1rem;
}
.context-meta dt,
.context-meta dd{
  font-family:var(--sans);
}
.context-meta dt{
  font-size:.78rem;
  font-weight:750;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.context-meta dd{
  min-width:0;
  text-align:right;
  font-size:.94rem;
  font-weight:600;
  line-height:1.4;
  overflow-wrap:normal;
  word-break:normal;
}
.context-meta__status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  max-width:100%;
  white-space:nowrap;
  padding:.25rem .65rem;
  border-radius:999rem;
  font-family:var(--sans);
}
@media(max-width:25rem){
  .context-meta>div,
  .metadata-list.context-meta>div{
    grid-template-columns:minmax(5.5rem,42%) minmax(0,58%);
    column-gap:.65rem;
  }
  .context-meta dd{font-size:.88rem}
}

/* v0.4.3.15 — Books, reader workspace, footer, and transport controls */

/* Book-card introductory material is real navigation. */
.book-card__intro-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  color:var(--green-dark);
  font-family:var(--sans);
  font-size:.84rem;
  font-weight:750;
  border-bottom:.0625rem solid rgba(13,108,77,.28);
}
.book-card__intro-link:hover,
.book-card__intro-link:focus{color:var(--emerald);border-bottom-color:currentColor}

/* Small newspaper-style date plate positioned above each title. */
.book-card__year{
  order:2;
  margin:0 0 .7rem;
  font-family:Georgia,"Times New Roman",serif;
  font-size:.76rem;
  font-weight:800;
  line-height:1;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#60492e;
}
.book-card__year span{
  display:inline-block;
  padding:.28rem .7rem .24rem;
  border:.125rem double #9d8768;
  background:linear-gradient(180deg,#fffdf4,#efe3c8);
  box-shadow:inset 0 .0625rem 0 rgba(255,255,255,.9),0 .125rem .25rem rgba(66,46,22,.12);
}
.book-card h3{order:3}
.book-card__facts{order:4}
.book-card__intro{order:5}
.book-card__actions{order:6}
.book-card__top{order:1}

/* Reader workspace: muted green reading desk behind all three zones. */
.reader-workspace-section{
  background:#6e9c80;
  padding:2.2rem 0 3rem;
  border-top:.0625rem solid rgba(23,70,49,.28);
  border-bottom:.0625rem solid rgba(23,70,49,.38);
}
.reader-layout{gap:1.6rem}

/* Contents behaves like a restrained library book plate. */
.reader-sidebar{
  background:linear-gradient(180deg,#f5f0e5,#e5ddce);
  border:.125rem solid #8c7a5e;
  box-shadow:0 .6rem 1.25rem rgba(22,55,39,.22),inset 0 0 0 .1875rem rgba(255,255,255,.45);
}
.reader-sidebar::before{
  content:"";
  display:block;
  height:.1875rem;
  margin:-.35rem 0 .85rem;
  background:linear-gradient(90deg,transparent,#a77718 20%,#f2d46d 50%,#a77718 80%,transparent);
}

/* The central reader is a raised book plate; the story itself is an antiqued page. */
.reader-main{
  position:relative;
  transform:translateY(-.35rem);
  padding:clamp(1.2rem,2.5vw,2rem);
  border:.125rem solid #9d7a3c;
  border-radius:.7rem;
  background:
    linear-gradient(180deg,#f4ead5,#d8c49e) padding-box,
    var(--gold-reflective) border-box;
  box-shadow:
    0 1.3rem 2.6rem rgba(22,45,31,.42),
    0 .35rem .7rem rgba(53,35,12,.28),
    inset 0 0 0 .25rem rgba(255,250,229,.66);
}
.reader-main::before{
  content:"";
  position:absolute;
  inset:.55rem;
  pointer-events:none;
  border:.0625rem solid rgba(113,78,25,.45);
  box-shadow:inset 0 0 0 .125rem rgba(255,255,255,.34);
  border-radius:.35rem;
}
.reader-main>*{position:relative;z-index:1}
.chapter-text{
  max-width:72ch;
  margin:1.1rem auto 0;
  padding:clamp(1.5rem,4vw,3rem);
  color:#30291f;
  background:
    radial-gradient(circle at 12% 8%,rgba(137,91,25,.055),transparent 26%),
    radial-gradient(circle at 86% 88%,rgba(101,69,28,.05),transparent 30%),
    linear-gradient(90deg,rgba(106,74,31,.05),transparent 5%,transparent 95%,rgba(106,74,31,.06)),
    #f8edcf;
  border:.0625rem solid #bba67f;
  border-radius:.18rem;
  box-shadow:
    inset .4rem 0 .8rem rgba(102,69,24,.08),
    inset -.35rem 0 .8rem rgba(102,69,24,.08),
    inset 0 0 1.2rem rgba(98,65,19,.09),
    0 .45rem .8rem rgba(55,36,11,.22);
}
.chapter-head,
.canonical-notice,
.speech-reader,
.reader-mode-switch{max-width:72ch;margin-left:auto;margin-right:auto}

/* Explore context: cool gray analysis surface with silver-green accents. */
.research-panel{
  background:linear-gradient(180deg,#edf0ed,#d8dedb);
  border:.125rem solid #78978a;
  color:#27342f;
  box-shadow:0 .65rem 1.4rem rgba(23,52,40,.24),inset 0 .0625rem 0 rgba(255,255,255,.78);
}
.research-panel__head{
  padding-bottom:.8rem;
  border-bottom:.125rem solid #9dafaa;
}
.research-panel__head .eyebrow{color:#55766a}
.research-panel__head h2{color:#354b43;text-shadow:0 .0625rem 0 #fff}
.research-panel .context-meta>div{border-bottom-color:#aebbb6}
.research-panel .context-meta dt{color:#587268}
.research-panel .context-meta dd{color:#263b33}
.research-panel .context-meta__status{
  border:.0625rem solid #718e83;
  background:linear-gradient(180deg,#f8fbfa,#cddad5);
  color:#35564a;
}
.research-placeholder{
  margin-top:1rem;
  padding-top:.8rem;
  border-top:.0625rem solid #aab8b2;
}
.research-shelves li{border-color:#a6b7b0;background:#eef3f1;color:#3c5e52}

/* Compact sans-serif book pagination with deliberately quiet labels. */
.book-pagination .meta{
  font-family:var(--sans);
  font-size:.68rem;
  font-weight:750;
  letter-spacing:.09em;
  line-height:1.2;
  text-transform:uppercase;
  color:#746d61;
}
.book-pagination__link,
.chapter-nav-button{
  font-family:var(--sans)!important;
  font-size:.84rem;
  font-weight:650;
  padding:.46rem .65rem;
}

/* Previous/next paragraph are transport controls: arrows only. */
.speech-button--track{
  min-width:2.35rem;
  padding:.48rem .58rem;
  font-size:1rem;
  line-height:1;
}
.speech-button--track span{display:block!important;line-height:1}

/* Footer hierarchy: identity, prose, technical text, and fingerprint are distinct. */
footer{color:#e7f1ec}
.footer-section strong{
  display:block;
  margin-bottom:.35rem;
  color:#f1cf61;
  font-family:var(--sans);
  font-size:.92rem;
  letter-spacing:.025em;
  text-shadow:0 .0625rem .125rem rgba(0,0,0,.4);
}
.footer-section p{margin:0;color:#d7e5df}
.footer-section--principle p{color:#bdd5ca}
.footer-section--build p{color:#a9c7bb}
.footer-bottom{color:#a7c2b7}
.footer-bottom span{color:#c6dbd2}
.footer-bottom code{
  color:#e5d497;
  background:rgba(0,0,0,.15);
  padding:.12rem .35rem;
  border-radius:.2rem;
}

@media(max-width:67.5rem){
  .reader-main{transform:none}
}
@media(max-width:50rem){
  .reader-workspace-section{padding:1rem 0 1.5rem}
  .reader-main{padding:.85rem;box-shadow:0 .75rem 1.5rem rgba(22,45,31,.35)}
  .chapter-text{padding:1.25rem .9rem}
  .speech-button--track{flex:0 0 2.75rem}
}

/* v0.4.3.15 reader hierarchy refinement
   The outer reading column carries the antiqued-book treatment; the inner page
   keeps only a light inset stroke and restrained bevel. */
.reader-main{
  background:
    radial-gradient(circle at 12% 8%,rgba(137,91,25,.055),transparent 26%),
    radial-gradient(circle at 86% 88%,rgba(101,69,28,.05),transparent 30%),
    linear-gradient(90deg,rgba(106,74,31,.05),transparent 5%,transparent 95%,rgba(106,74,31,.06)),
    #f8edcf;
  border:.125rem solid #b49455;
  box-shadow:
    0 1.4rem 2.8rem rgba(22,45,31,.46),
    0 .42rem .9rem rgba(53,35,12,.3),
    inset 0 0 0 .25rem rgba(255,250,229,.7),
    inset 0 0 1.3rem rgba(98,65,19,.1);
}
.reader-main::before{
  inset:.52rem;
  border:.0625rem solid rgba(255,252,236,.8);
  box-shadow:
    inset 0 0 0 .125rem rgba(139,104,48,.24),
    0 0 0 .0625rem rgba(100,70,25,.2);
}
.chapter-text{
  background:rgba(255,249,229,.42);
  border:.0625rem solid rgba(255,255,245,.84);
  border-radius:.16rem;
  box-shadow:
    inset 0 .0625rem 0 rgba(255,255,255,.78),
    inset 0 0 .5rem rgba(92,68,32,.08);
}

/* Chapter pagination is compact interface navigation. Titles stay on one line. */
.book-pagination{min-width:0}
.book-pagination>div{min-width:0;max-width:48%}
.book-pagination__link,
.chapter-nav-button{
  min-width:0;
  max-width:100%;
  font-family:var(--sans)!important;
  font-size:.76rem;
  line-height:1.15;
  padding:.4rem .58rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.book-pagination .meta{
  font-size:.6rem;
  line-height:1.1;
}

/* Footer headings retain the literary serif voice; footer body stays UI sans. */
.footer-section strong{
  font-family:var(--serif);
  font-size:1rem;
  letter-spacing:0;
}

/* v0.4.3.15 corrective reader simplification
   Keep the antiqued outer book, but remove all decorative styling from the
   actual story text surface. Pagination is quiet UI navigation, not buttons. */
.chapter-text{
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  padding:clamp(1.25rem,3vw,2.35rem);
}
.chapter-text p.is-reading{
  background:transparent;
  border-left:0;
  box-shadow:none;
}

.book-pagination{
  align-items:end;
  gap:1rem;
}
.book-pagination>div{
  min-width:0;
  max-width:49%;
}
.book-pagination .meta{
  margin-bottom:.18rem;
  font-family:var(--sans);
  font-size:.56rem;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
  color:#746d61;
}
.book-pagination__link,
.chapter-nav-button{
  display:inline-flex;
  align-items:center;
  min-width:0;
  max-width:100%;
  padding:.18rem .08rem;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:#3e443f;
  font-family:var(--sans)!important;
  font-size:.72rem;
  font-weight:650;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.book-pagination__link:hover,
.book-pagination__link:focus,
.chapter-nav-button:hover,
.chapter-nav-button:focus{
  background:transparent;
  border:0;
  box-shadow:none;
  color:var(--green);
  text-decoration:underline;
  text-underline-offset:.18rem;
  transform:none;
}
.book-pagination__link--next,
.book-pagination>div:last-child .book-pagination__link{
  justify-content:flex-end;
  text-align:right;
}

@media(max-width:50rem){
  .chapter-text{padding:1rem .35rem}
  .book-pagination{gap:.65rem}
  .book-pagination__link,.chapter-nav-button{font-size:.68rem}
}

/* v0.4.3.15 — Reader interaction and navigation correction
   Restore functional paragraph highlighting, complement the Contents panel
   with custom scrollbars, and retain compact button affordances for pagination. */

/* Active TTS paragraph: a quiet translucent reading wash, not a text box. */
.chapter-text p[data-speech-paragraph]{
  position:relative;
  margin-inline:-.45rem;
  padding-inline:.45rem;
  border-radius:.22rem;
  transition:
    background-color .18s ease,
    box-shadow .18s ease,
    color .18s ease;
}
.chapter-text p[data-speech-paragraph].is-reading,
.chapter-text p[data-speech-paragraph][aria-current="true"]{
  background:linear-gradient(90deg,rgba(255,226,112,.34),rgba(255,242,183,.2));
  box-shadow:inset .2rem 0 0 rgba(151,105,12,.82);
  color:#2f281d;
}

/* Contents scrollbar — warm catalog neutrals with emerald/gold detail. */
.toc,
.reader-sidebar{
  scrollbar-width:thin;
  scrollbar-color:#547d68 #e7dfcf;
}
.toc::-webkit-scrollbar,
.reader-sidebar::-webkit-scrollbar{
  width:.72rem;
  height:.72rem;
}
.toc::-webkit-scrollbar-track,
.reader-sidebar::-webkit-scrollbar-track{
  background:linear-gradient(90deg,#eee7da,#e3dac9);
  border-left:.0625rem solid rgba(128,105,70,.16);
  border-radius:999rem;
}
.toc::-webkit-scrollbar-thumb,
.reader-sidebar::-webkit-scrollbar-thumb{
  min-height:2.5rem;
  border:.16rem solid #e8e0d1;
  border-radius:999rem;
  background:linear-gradient(180deg,#6f9c82,#426d58);
  box-shadow:inset 0 .0625rem 0 rgba(255,255,255,.38);
}
.toc::-webkit-scrollbar-thumb:hover,
.reader-sidebar::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,#7cad90,#315f4a);
}
.toc::-webkit-scrollbar-corner,
.reader-sidebar::-webkit-scrollbar-corner{
  background:#e7dfcf;
}

/* Compact UI navigation buttons: visibly interactive, never oversized. */
.book-pagination{
  gap:clamp(.65rem,2vw,1.15rem);
  align-items:end;
}
.book-pagination>div{
  min-width:0;
  width:min(48%,24rem);
  max-width:48%;
}
.book-pagination .meta{
  margin:0 0 .22rem;
  font-family:var(--sans);
  font-size:.52rem;
  font-weight:700;
  letter-spacing:.085em;
  line-height:1;
  text-transform:uppercase;
  color:#6d716b;
}
.book-pagination__link,
.chapter-nav-button{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  width:auto;
  min-width:0;
  max-width:100%;
  min-height:2rem;
  padding:.34rem .62rem;
  border:.0625rem solid #a99b84;
  border-radius:.38rem;
  background:linear-gradient(180deg,#fffdf7 0%,#eee8dc 100%);
  box-shadow:
    0 .16rem .34rem rgba(39,44,39,.2),
    inset 0 .0625rem 0 rgba(255,255,255,.9);
  color:#3c423e;
  font-family:var(--sans)!important;
  font-size:.72rem;
  font-weight:650;
  line-height:1.15;
  text-decoration:none;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  transition:
    background .16s ease,
    border-color .16s ease,
    box-shadow .16s ease,
    color .16s ease,
    transform .16s ease;
}
.book-pagination__link:hover,
.book-pagination__link:focus-visible,
.chapter-nav-button:hover,
.chapter-nav-button:focus-visible{
  border-color:#718b79;
  background:linear-gradient(180deg,#ffffff 0%,#e2ece5 100%);
  box-shadow:
    0 .22rem .48rem rgba(31,54,41,.24),
    inset 0 .0625rem 0 rgba(255,255,255,.96);
  color:var(--green-deep);
  text-decoration:none;
  transform:translateY(-.0625rem);
}
.book-pagination__link--next,
.book-pagination>div:last-child .book-pagination__link{
  justify-content:flex-end;
  margin-left:auto;
  text-align:right;
}

@media(max-width:50rem){
  .book-pagination>div{
    width:48%;
    max-width:48%;
  }
  .book-pagination__link,
  .chapter-nav-button{
    min-height:1.9rem;
    padding:.3rem .48rem;
    font-size:.66rem;
  }
  .book-pagination .meta{font-size:.49rem}
}

/* v0.4.3.15 — balanced reading highlight and status-pill pagination */

/* Active TTS paragraph: balanced left/right breathing room for justified text. */
.chapter-text p[data-speech-paragraph]{
  margin-inline:0;
  padding-inline:1rem;
}
.chapter-text p[data-speech-paragraph].is-reading,
.chapter-text p[data-speech-paragraph][aria-current="true"]{
  background:linear-gradient(90deg,rgba(255,238,169,.24),rgba(255,244,196,.34),rgba(255,238,169,.24));
  box-shadow:
    inset 0 .0625rem 0 rgba(166,128,42,.24),
    inset 0 -.0625rem 0 rgba(166,128,42,.24);
  border-radius:.28rem;
}

/* Book pagination: widened status pills based on the Canonical badge language. */
.book-pagination{
  gap:clamp(.7rem,2vw,1.25rem);
}
.book-pagination>div{
  width:min(48%,27rem);
  max-width:48%;
}
.book-pagination .meta{
  margin-bottom:.28rem;
  font-size:.5rem;
  letter-spacing:.09em;
  color:#607168;
}
.book-pagination__link,
.chapter-nav-button{
  min-height:1.9rem;
  max-width:100%;
  padding:.3rem .72rem;
  border:.0625rem solid #718e83;
  border-radius:999rem;
  background:linear-gradient(180deg,#f8fbfa 0%,#cddad5 100%);
  color:#35564a;
  font-family:var(--sans)!important;
  font-size:.67rem;
  font-weight:700;
  line-height:1.1;
  box-shadow:
    0 .1rem .2rem rgba(42,66,56,.14),
    inset 0 .0625rem 0 rgba(255,255,255,.78);
}
.book-pagination__link:hover,
.book-pagination__link:focus-visible,
.chapter-nav-button:hover,
.chapter-nav-button:focus-visible{
  border-color:#527566;
  background:linear-gradient(180deg,#ffffff 0%,#bfd2ca 100%);
  color:#173f31;
  box-shadow:
    0 .16rem .32rem rgba(42,66,56,.2),
    inset 0 .0625rem 0 rgba(255,255,255,.86);
  transform:translateY(-.03125rem);
}

@media(max-width:50rem){
  .book-pagination__link,
  .chapter-nav-button{
    min-height:1.8rem;
    padding:.28rem .58rem;
    font-size:.62rem;
  }
  .book-pagination .meta{font-size:.47rem}
}

/* v0.4.3.15 — Canonical-scale pagination type and explicit right alignment */
.book-pagination>div:last-child,
.chapter-pager>div:last-child,
.book-pagination .next,
.chapter-pager .next{
  justify-self:end;
  align-items:flex-end;
  text-align:right;
}
.book-pagination>div:last-child .meta,
.chapter-pager>div:last-child .meta,
.book-pagination .next .meta,
.chapter-pager .next .meta{
  width:100%;
  text-align:right;
}
.book-pagination__link,
.chapter-nav-button{
  font-size:.73rem;
  font-weight:700;
}
.book-pagination__link--next,
.book-pagination>div:last-child .book-pagination__link,
.chapter-pager>div:last-child .chapter-nav-button,
.chapter-pager .next .chapter-nav-button{
  margin-left:auto;
  justify-content:flex-end;
}
@media(max-width:50rem){
  .book-pagination__link,
  .chapter-nav-button{
    font-size:.68rem;
  }
}

/* v0.4.3.15 — isolated book pager component.
   This component deliberately shares no selectors with Contents/chapter navigation. */
.book-pager{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(.75rem,2vw,1.5rem);
  align-items:end;
  margin-top:2rem;
  padding-top:1rem;
  border-top:.0625rem solid rgba(104,145,129,.35);
  font-family:var(--sans);
}
.book-pager__item{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
}
.book-pager__item--next{
  align-items:flex-end;
  text-align:right;
}
.book-pager__label{
  display:block;
  margin:0 0 .25rem;
  color:#607168;
  font-family:var(--sans);
  font-size:.5rem;
  font-weight:750;
  line-height:1;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.book-pager__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.32rem;
  min-width:0;
  max-width:100%;
  min-height:1.75rem;
  padding:.26rem .62rem;
  border:.0625rem solid #718e83;
  border-radius:999rem;
  background:linear-gradient(180deg,#f8fbfa 0%,#cddad5 100%);
  color:#35564a;
  font-family:var(--sans);
  font-size:.625rem;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  box-shadow:0 .08rem .16rem rgba(42,66,56,.14),inset 0 .0625rem 0 rgba(255,255,255,.78);
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.book-pager__title{
  display:block;
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.book-pager__button:hover,
.book-pager__button:focus-visible{
  border-color:#527566;
  background:linear-gradient(180deg,#fff 0%,#bfd2ca 100%);
  color:#173f31;
  box-shadow:0 .13rem .26rem rgba(42,66,56,.2),inset 0 .0625rem 0 rgba(255,255,255,.86);
  transform:translateY(-.03125rem);
}
.book-pager__button:focus-visible{
  outline:.125rem solid rgba(212,167,44,.45);
  outline-offset:.125rem;
}
@media(max-width:36rem){
  .book-pager{gap:.6rem}
  .book-pager__label{font-size:.46rem}
  .book-pager__button{
    max-width:100%;
    min-height:1.65rem;
    padding:.23rem .48rem;
    font-size:.575rem;
  }
}

/* v0.4.3.15 — restore sticky Reader player controls */
@media (min-width:50.0625rem){
  .reader-main .speech-reader{
    position:sticky;
    top:.75rem;
    z-index:30;
    margin-top:0;
    background:linear-gradient(145deg,rgba(255,245,233,.98) 0%,rgba(239,208,180,.98) 52%,rgba(214,154,107,.98) 100%);
    box-shadow:
      0 .55rem 1.35rem rgba(70,31,15,.28),
      inset 0 .0625rem 0 rgba(255,255,255,.72);
    backdrop-filter:blur(.35rem);
    -webkit-backdrop-filter:blur(.35rem);
  }
}

@media (max-width:50rem){
  .reader-main .speech-reader{
    position:static;
    top:auto;
  }
}

/* v0.4.3.15 — Reader usability restoration */
:root{
  --reader-sticky-offset:.75rem;
}
.reader-layout,
.reader-main{
  overflow:visible;
}
@media (min-width:50.0625rem){
  .reader-main .speech-reader{
    top:var(--reader-sticky-offset);
  }
}
/* v0.4.3.15 — aligned sticky Reader workspace and simplified book frame
   - Align Contents, sticky Audio Controls, and Explore Context at one viewport top.
   - Remove the decorative inner strokes from the outer Book Page container.
   - Keep Audio Controls sticky in compact mobile layouts. */

:root{
  --reader-sticky-offset:.75rem;
  --reader-mobile-sticky-offset:max(.25rem, env(safe-area-inset-top, 0rem));
}

/* The outer book retains its parchment, border, lift, and shadow.
   The extra inner rule/pseudo-element is removed. */
.reader-main::before{
  content:none!important;
  display:none!important;
}

/* Desktop/tablet: all three Reader zones share the same sticky top edge. */
@media (min-width:50.0625rem){
  .reader-sidebar,
  .reader-main .speech-reader,
  .mode-research .research-panel{
    top:var(--reader-sticky-offset)!important;
  }

  .reader-sidebar,
  .mode-research .research-panel{
    position:sticky!important;
    align-self:start;
    max-height:calc(100vh - (var(--reader-sticky-offset) * 2));
    overflow:auto;
  }

  .reader-main .speech-reader{
    position:sticky!important;
    z-index:40;
  }
}

/* Mobile: retain the compact player while keeping it available during reading. */
@media (max-width:50rem){
  .reader-main,
  .reader-layout{
    overflow:visible!important;
  }

  .reader-main .speech-reader{
    position:sticky!important;
    top:var(--reader-mobile-sticky-offset)!important;
    z-index:55;
    margin-inline:0;
    background:
      linear-gradient(
        145deg,
        rgba(255,245,233,.985) 0%,
        rgba(239,208,180,.985) 52%,
        rgba(214,154,107,.985) 100%
      );
    box-shadow:
      0 .45rem 1rem rgba(70,31,15,.26),
      inset 0 .0625rem 0 rgba(255,255,255,.74);
    backdrop-filter:blur(.3rem);
    -webkit-backdrop-filter:blur(.3rem);
  }
}

/* Oz Exploration Library v0.4.3.15
   Reader scrollbar thumb styled to match Read Chapter button */

.toc::-webkit-scrollbar-thumb,
.reader-sidebar::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#f6c676 0%,#d88b47 48%,#a55a28 100%) !important;
  border:.125rem solid #efe6d6;
  border-radius:999rem;
  box-shadow:
    inset 0 .0625rem 0 rgba(255,255,255,.55),
    0 .125rem .25rem rgba(74,39,12,.25);
}

.toc::-webkit-scrollbar-thumb:hover,
.reader-sidebar::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,#ffd48c 0%,#e59b55 48%,#b2642d 100%) !important;
}

.toc,
.reader-sidebar{
  scrollbar-color:#c97b3d #e7dfcf;
}

/* v0.4.3.16 — Reader controls, story rhythm, highlight, and scrollbar polish */

/* Preserve the previously aligned three-column sticky workspace while moving
   its shared sticky top down by the requested 4px equivalent. */
:root{
  --reader-sticky-offset:1rem;
}

/* Desktop and tablet Reader Tools:
   playback controls occupy row one; Reader and Speed occupy row two. */
@media (min-width:50.0625rem){
  .speech-reader__row{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    align-items:start;
    justify-content:stretch;
    gap:.65rem;
  }

  .speech-reader__controls{
    width:100%;
    flex:0 0 auto;
    justify-content:flex-start;
  }

  .speech-reader__settings{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:.7rem;
    flex-wrap:wrap;
  }

  .speech-reader__settings label{
    flex:0 1 auto;
    justify-content:flex-start;
  }
}

/* Contents scrollbar:
   golden-yellow thumb; orange arrow buttons remain distinct. */
.toc,
.reader-sidebar{
  scrollbar-color:#e3ae2e #e7dfcf;
}

.toc::-webkit-scrollbar-thumb,
.reader-sidebar::-webkit-scrollbar-thumb{
  background:linear-gradient(
    180deg,
    #fff1a6 0%,
    #f4cf55 30%,
    #dfa91e 70%,
    #c88a12 100%
  ) !important;
  border:.125rem solid #f3ead7;
  border-radius:999rem;
  box-shadow:
    inset 0 .0625rem 0 rgba(255,255,255,.72),
    0 .125rem .25rem rgba(91,59,8,.24);
}

.toc::-webkit-scrollbar-thumb:hover,
.reader-sidebar::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(
    180deg,
    #fff6bd 0%,
    #f8d966 30%,
    #e7b12b 70%,
    #d09419 100%
  ) !important;
}

.toc::-webkit-scrollbar-button,
.reader-sidebar::-webkit-scrollbar-button{
  background-color:#cf6f2f;
}

/* Story page:
   reduce accumulated page padding by roughly half and tighten paragraph rhythm
   while preserving the established reading width and line height. */
.chapter-text{
  padding:clamp(.7rem,1.5vw,1.2rem);
}

.chapter-text p{
  margin-bottom:.95em;
}

/* Active TTS paragraph:
   darker definition with a restrained light-to-deeper gold wash. */
.chapter-text p[data-speech-paragraph].is-reading,
.chapter-text p[data-speech-paragraph][aria-current="true"]{
  background:linear-gradient(
    180deg,
    rgba(255,246,198,.64) 0%,
    rgba(250,229,145,.58) 52%,
    rgba(238,201,91,.46) 100%
  );
  box-shadow:
    inset 0 .0625rem 0 rgba(159,108,12,.58),
    inset 0 -.0625rem 0 rgba(128,82,4,.52);
  color:#2f281d;
}

@media (max-width:50rem){
  .chapter-text{
    padding:.7rem .3rem;
  }

  .chapter-text p{
    margin-bottom:.95em;
  }
}

/* v0.4.3.17 — Tik-Tok Perfect Reader artwork for Audio Controls
   The supplied transparent full-width artwork is anchored at the upper-right.
   Existing copper color remains visible beneath transparent/faded regions. */
.speech-reader,
.reader-main .speech-reader{
  background-color:#e7b98f;
  background-image:
    url("../images/Tik-Tok-Audio-Controls-Background.png"),
    linear-gradient(
      145deg,
      rgba(255,245,233,.98) 0%,
      rgba(239,208,180,.98) 52%,
      rgba(214,154,107,.98) 100%
    ) !important;
  background-repeat:no-repeat,no-repeat;
  background-position:top right,center;
  background-size:auto 100%,cover;
}

/* Keep interactive and status content above the decorative artwork layer. */
.speech-reader__row,
.speech-reader__status{
  position:relative;
  z-index:2;
}

/* On narrow mobile screens, retain the image but reduce its footprint so the
   compact control rows remain clear and tappable. */
@media (max-width:36rem){
  .speech-reader,
  .reader-main .speech-reader{
    background-size:auto 72%,cover;
    background-position:top right,center;
  }
}

/* v0.4.3.18 — Outstanding Reader and Books polish */

/* Books cards: publication year is quiet metadata at the bottom. */
.book-card__year{
  order:7;
  width:100%;
  margin:.85rem 0 0;
  text-align:center;
  font-family:var(--sans);
  font-size:.68rem;
  font-weight:700;
  line-height:1;
  letter-spacing:.06em;
  text-transform:none;
  color:#745f3b;
}
.book-card__year span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:1.55rem;
  padding:.28rem .7rem;
  border:.0625rem solid #b79a54;
  border-radius:999rem;
  background:linear-gradient(180deg,#fff8dc 0%,#ead79d 100%);
  box-shadow:
    inset 0 .0625rem 0 rgba(255,255,255,.82),
    0 .08rem .16rem rgba(66,46,22,.1);
}

/* Dear Reader / Library Note is supporting metadata, not a primary action. */
.book-card__intro-link{
  color:#87918d;
  font-weight:400;
  text-decoration:none;
  border-bottom:0;
}
.book-card__intro-link .intro-mark{
  color:#bb8615;
}
.book-card__intro-link:hover,
.book-card__intro-link:focus-visible{
  color:#64746d;
  text-decoration:none;
  border-bottom:0;
}

/* Reader, Pitch, and Speed remain on the second row at desktop/tablet sizes. */
@media (min-width:50.0625rem){
  .speech-reader__settings{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:.65rem;
    width:100%;
    flex-wrap:wrap;
  }
  .speech-reader__settings label{
    flex:0 1 auto;
  }
}

/* Keep the three Reader zones aligned at the verified lower sticky offset. */
:root{
  --reader-sticky-offset:1rem;
}

/* v0.4.3.19 — aligned internal rows for Books cards */
.book-card{
  display:grid;
  grid-template-rows:
    2.5rem
    minmax(5.5rem,auto)
    minmax(5.25rem,auto)
    minmax(2.75rem,auto)
    minmax(4.5rem,auto)
    2rem;
  align-items:stretch;
  min-height:34.5rem;
}

.book-card__top,
.book-card__title-row,
.book-card__facts,
.book-card__intro,
.book-card__actions,
.book-card__year{
  width:100%;
  min-width:0;
}

.book-card__top{
  align-self:start;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  margin:0;
}

.book-card__title-row{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.book-card__title-row h3{
  margin:0;
  max-width:100%;
}

.book-card__facts{
  align-self:center;
  margin:0;
}

.book-card__intro{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0;
}

.book-card__actions{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0;
}

.book-card__year{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  margin:0;
}

/* Keep all cards orderly while allowing unusually long text to grow safely. */
@media (max-width:75rem){
  .book-card{
    grid-template-rows:
      2.5rem
      minmax(5.75rem,auto)
      minmax(5.25rem,auto)
      minmax(3rem,auto)
      minmax(4.5rem,auto)
      2rem;
  }
}

@media (max-width:50rem){
  .book-card{
    min-height:0;
    grid-template-rows:
      auto
      minmax(4.75rem,auto)
      auto
      minmax(2.75rem,auto)
      auto
      auto;
    row-gap:.65rem;
  }
}

/* v0.4.3.20 — corrective Books card grid
   Reset legacy flex/order rules and use named grid areas so every row aligns
   without overlap or excessive card height. */

.book-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr);
  grid-template-areas:
    "series"
    "title"
    "facts"
    "intro"
    "actions"
    "year";
  grid-template-rows:
    2.5rem
    minmax(5.25rem,auto)
    5rem
    2.75rem
    4.25rem
    2rem;
  row-gap:.7rem;
  align-items:stretch;
  min-height:25.5rem;
  padding:1.25rem;
}

.book-card__top{
  grid-area:series;
  order:initial!important;
  margin:0!important;
  align-self:start;
}

.book-card__title-row{
  grid-area:title;
  order:initial!important;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
}

.book-card__title-row h3{
  margin:0!important;
  width:100%;
  text-align:center;
}

.book-card__facts{
  grid-area:facts;
  order:initial!important;
  align-self:center;
  margin:0!important;
}

.book-card__intro{
  grid-area:intro;
  order:initial!important;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0!important;
  min-width:0;
}

.book-card__intro-link{
  max-width:100%;
  text-align:center;
}

.book-card__actions{
  grid-area:actions;
  order:initial!important;
  align-self:center;
  justify-content:center;
  margin:0!important;
}

.book-card__year{
  grid-area:year;
  order:initial!important;
  display:flex;
  align-items:end;
  justify-content:center;
  margin:0!important;
}

@media (max-width:75rem){
  .book-card{
    grid-template-rows:
      2.5rem
      minmax(5.75rem,auto)
      5rem
      3rem
      4.25rem
      2rem;
    min-height:26rem;
  }
}

@media (max-width:50rem){
  .book-card{
    grid-template-rows:
      auto
      minmax(4.5rem,auto)
      auto
      minmax(2.5rem,auto)
      auto
      auto;
    min-height:0;
    row-gap:.65rem;
  }
}

/* v0.4.3.21 — canonical 3D book covers in Books cards and Contents panels */
.book-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr);
  grid-template-areas:
    "cover"
    "title"
    "facts"
    "intro"
    "actions"
    "meta";
  grid-template-rows:
    11.25rem
    minmax(4.75rem,auto)
    5rem
    2.75rem
    4.25rem
    2rem;
  row-gap:.65rem;
  min-height:32.5rem;
  padding:1.25rem;
  align-items:stretch;
}
.book-card__cover-row{
  grid-area:cover;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
}
.book-card__cover{
  display:block;
  width:auto;
  height:10.75rem;
  max-width:100%;
  object-fit:contain;
  filter:drop-shadow(0 .42rem .38rem rgba(47,49,35,.22));
}
.book-card__title-row{grid-area:title;order:initial!important;}
.book-card__facts{grid-area:facts;order:initial!important;}
.book-card__intro{grid-area:intro;order:initial!important;}
.book-card__actions{grid-area:actions;order:initial!important;}
.book-card__meta-row{
  grid-area:meta;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:.75rem;
  min-width:0;
}
.book-card__series{
  margin:0;
  flex:0 1 auto;
}
.book-card__year{
  order:initial!important;
  width:auto;
  margin:0!important;
  flex:0 0 auto;
}
.book-card--no-cover{
  grid-template-areas:
    "title"
    "facts"
    "intro"
    "actions"
    "meta";
  grid-template-rows:
    minmax(5.5rem,auto)
    5rem
    2.75rem
    4.25rem
    2rem;
  min-height:21rem;
}

/* Contents cover/title block follows the supplied Desired Contents reference. */
.toc-heading--with-cover{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:.65rem;
  padding:.1rem .25rem 1rem;
}
.toc-heading--with-cover .eyebrow{
  align-self:flex-start;
}
.toc-book-cover{
  display:block;
  width:auto;
  height:13.5rem;
  max-width:92%;
  object-fit:contain;
  filter:drop-shadow(0 .45rem .4rem rgba(46,43,29,.24));
}
.toc-heading--with-cover h2{
  width:100%;
  margin:.15rem 0 0;
  font-size:1.45rem;
  line-height:1.08;
  text-align:center;
}
.toc-heading--with-cover + .chapter-list{
  border-top:.0625rem solid rgba(113,142,131,.35);
  padding-top:.75rem;
}

@media(max-width:75rem){
  .book-card{
    grid-template-rows:10.75rem minmax(5.25rem,auto) 5rem 3rem 4.25rem 2rem;
  }
  .book-card__cover{height:10.25rem;}
}
@media(max-width:50rem){
  .book-card{
    min-height:0;
    grid-template-rows:auto minmax(4.5rem,auto) auto minmax(2.5rem,auto) auto auto;
    row-gap:.7rem;
  }
  .book-card__cover{height:11.5rem;}
  .book-card--no-cover{
    grid-template-rows:auto auto auto auto auto;
    min-height:0;
  }
  .toc-book-cover{height:12rem;}
}

/* v0.5.0 — Baum-only Knowledge Base integration */
.knowledge-link{
  color:var(--green-deep);
  text-decoration:none;
  border-bottom:.0625rem solid rgba(20,100,72,.25);
}
.knowledge-link:hover,.knowledge-link:focus-visible{
  color:var(--emerald);
  border-bottom-color:currentColor;
}

.knowledge-index-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
  margin-top:1.5rem;
}
.knowledge-index-group h2{margin:.2rem 0 .8rem}
.knowledge-record-list{list-style:none;margin:0;padding:0}
.knowledge-record-list li+li{border-top:.0625rem solid var(--line)}
.knowledge-record-list a{
  display:block;
  padding:.8rem .15rem;
  color:var(--ink);
  text-decoration:none;
}
.knowledge-record-list a strong{
  display:block;
  color:var(--green-deep);
  font-family:var(--serif);
  font-size:1.05rem;
}
.knowledge-record-list a span{
  display:block;
  margin-top:.18rem;
  color:var(--muted);
  font-family:var(--sans);
  font-size:.82rem;
  line-height:1.45;
}
.knowledge-record-list a:hover strong{color:var(--emerald)}
.knowledge-prototype-note{margin-top:1rem}

.knowledge-record-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);
  gap:1.4rem;
  align-items:start;
}
.knowledge-record-main{display:grid;gap:1.1rem}
.knowledge-section h2,.knowledge-record-side h2{margin:.15rem 0 .85rem}
.knowledge-record-side{position:sticky;top:var(--reader-sticky-offset,1rem)}
.knowledge-head-badges{display:flex;gap:.45rem;flex-wrap:wrap}

.knowledge-classification{margin:0}
.knowledge-classification div{
  display:grid;
  grid-template-columns:minmax(7rem,35%) minmax(0,1fr);
  gap:.75rem;
  padding:.5rem 0;
  border-top:.0625rem solid var(--line);
}
.knowledge-classification div:first-child{border-top:0}
.knowledge-classification dt{
  color:var(--muted);
  font-family:var(--sans);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.knowledge-classification dd{margin:0}

.knowledge-claims{display:grid;gap:.8rem}
.knowledge-claim{
  padding:.9rem;
  border:.0625rem solid #b8c9c1;
  border-radius:.5rem;
  background:linear-gradient(180deg,#fbfdfc,#edf3f0);
}
.knowledge-claim p{margin:.45rem 0 .6rem}
.knowledge-claim__head{display:flex;justify-content:flex-start}
.knowledge-status{
  display:inline-flex;
  align-items:center;
  min-height:1.45rem;
  padding:.2rem .55rem;
  border:.0625rem solid #799789;
  border-radius:999rem;
  background:#e7efeb;
  color:#345548;
  font-family:var(--sans);
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.035em;
}
.knowledge-status--strong_inference{background:#eef0e7;border-color:#9da58b;color:#5b624c}
.knowledge-status--interpretive{background:#eeeef0;border-color:#9b9da6;color:#575b66}
.knowledge-status--contradictory_unresolved{background:#f5e9e4;border-color:#b78d7b;color:#784c3e}

.knowledge-sources{
  padding-top:.55rem;
  border-top:.0625rem solid rgba(94,124,111,.25);
}
.knowledge-sources>span{
  color:var(--muted);
  font-family:var(--sans);
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.knowledge-sources ul{margin:.3rem 0 0;padding-left:1.1rem}
.knowledge-sources a{font-family:var(--sans);font-size:.78rem}

.knowledge-relationships{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.knowledge-relationships li{
  display:flex;
  align-items:center;
  gap:.55rem;
  flex-wrap:wrap;
  padding:.55rem 0;
  border-top:.0625rem solid var(--line);
}
.knowledge-relationships li:first-child{border-top:0}
.knowledge-relation-predicate{
  color:var(--muted);
  font-family:var(--sans);
  font-size:.72rem;
  text-transform:capitalize;
}
.knowledge-reader-button{display:inline-flex;margin:.8rem 0}

.research-knowledge-context{
  margin-top:1rem;
  padding:.85rem;
  border:.0625rem solid #8da89d;
  border-radius:.5rem;
  background:linear-gradient(180deg,#f3f5f4,#e2e7e4);
}
.research-knowledge-context__head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:.75rem;
  margin-bottom:.65rem;
}
.research-knowledge-context__head h3{margin:0}
.research-knowledge-context__head a{
  font-family:var(--sans);
  font-size:.68rem;
  font-weight:700;
}
.knowledge-context-group+ .knowledge-context-group{margin-top:.7rem}
.knowledge-context-group h4{
  margin:0 0 .25rem;
  color:#5e766c;
  font-family:var(--sans);
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.knowledge-context-group ul{list-style:none;margin:0;padding:0;display:flex;gap:.35rem;flex-wrap:wrap}
.knowledge-context-group li a{
  display:inline-flex;
  padding:.22rem .5rem;
  border:.0625rem solid #819c90;
  border-radius:999rem;
  background:#f8faf9;
  color:#35584a;
  font-family:var(--sans);
  font-size:.7rem;
  font-weight:700;
  text-decoration:none;
}
.knowledge-context-group li a:hover,.knowledge-context-group li a:focus-visible{
  background:#dce8e2;
  border-color:#547664;
}
.knowledge-empty{
  margin:.2rem 0;
  color:#5e6b65;
  font-family:var(--sans);
  font-size:.82rem;
}

/* Exact evidence links from Knowledge Base records target Reader paragraphs. */
.chapter-text p:target:not(.is-reading){
  scroll-margin-top:9rem;
  background:linear-gradient(180deg,rgba(222,236,229,.72),rgba(194,217,206,.58));
  box-shadow:
    inset 0 .0625rem 0 rgba(72,109,92,.55),
    inset 0 -.0625rem 0 rgba(72,109,92,.42);
}

@media(max-width:50rem){
  .knowledge-index-grid,.knowledge-record-layout{grid-template-columns:1fr}
  .knowledge-record-side{position:static}
}

/* v0.6.0 — Baum Historical Atlas */
.historical-atlas-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.2rem;
  margin-top:1.5rem;
}
.historical-atlas-grid .card{display:flex;flex-direction:column;align-items:flex-start}
.historical-atlas-grid .card a{margin-top:auto}
.historical-timeline{display:grid;gap:1.5rem}
.historical-band__head{margin-bottom:.65rem}
.historical-event-list{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}
.historical-event-card{position:relative;padding:1rem 1.1rem}
.historical-event-card--conflict{border-color:#a77d6d;background:linear-gradient(180deg,#fffaf7,#f3e8e3)}
.historical-event-card__meta{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.4rem}
.historical-event-card h3{margin:.2rem 0 .4rem}
.historical-event-card h3 a{text-decoration:none}
.historical-compact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin:0 0 1.5rem}
.historical-compact-list a{padding:.5rem .65rem;border:.0625rem solid var(--line);border-radius:.4rem;background:#fbfdfc;text-decoration:none}
.historical-related{display:flex;gap:.4rem;flex-wrap:wrap}
.historical-related a,.historical-related span{
  display:inline-flex;padding:.25rem .55rem;border:.0625rem solid #8da89d;border-radius:999rem;background:#f3f7f5;font:700 .72rem var(--sans)
}
.historical-cross-nav{display:grid;gap:.4rem;margin:.8rem 0}
.knowledge-sources-list{margin:0;padding-left:1.1rem}
.entity-timeline{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.entity-timeline li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem;padding:.5rem 0;border-top:.0625rem solid var(--line)}
.entity-timeline li:first-child{border-top:0}
.entity-timeline li span{color:var(--muted);font:700 .64rem var(--sans);text-align:right}
.research-history-context{
  margin-top:.8rem;padding:.8rem;border:.0625rem solid #8da89d;border-radius:.5rem;
  background:linear-gradient(180deg,#eff2f0,#dce3df)
}
.research-event-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}
.research-event-list li{padding:.35rem 0;border-top:.0625rem solid rgba(104,137,122,.25)}
.research-event-list li:first-child{border-top:0}
.research-event-list a{display:block;font:700 .72rem var(--sans);text-decoration:none}
.research-event-list span{display:block;margin-top:.1rem;color:var(--muted);font:600 .6rem var(--sans)}
@media(max-width:50rem){
  .historical-atlas-grid,.historical-compact-list{grid-template-columns:1fr}
  .entity-timeline li{grid-template-columns:1fr}
  .entity-timeline li span{text-align:left}
}

/* v0.6.1 — first-class access to Knowledge Base and Historical Atlas */
.primary .container{
  flex-wrap:wrap;
}
.atlas-directory{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin:1rem 0 1.35rem;
}
.atlas-directory a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2rem;
  padding:.35rem .75rem;
  border:.0625rem solid #9b8548;
  border-radius:999rem;
  background:linear-gradient(180deg,#fff6cf 0%,#e6ce83 100%);
  color:#55431d;
  font-family:var(--sans);
  font-size:.72rem;
  font-weight:800;
  text-decoration:none;
  box-shadow:inset 0 .0625rem 0 rgba(255,255,255,.8);
}
.atlas-directory a:hover,
.atlas-directory a:focus-visible{
  background:linear-gradient(180deg,#fff9df 0%,#edd995 100%);
}

/* v0.7.0 — architecture clarity */
.site-architecture-note{
  font-family:var(--sans);
}

/* v0.7.1 — Knowledge Architecture Consolidation */
.knowledge-directory{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.9rem;
  margin:1.35rem 0 2rem;
}
.knowledge-directory__card{
  display:block;
  color:var(--ink);
  text-decoration:none;
}
.knowledge-directory__card h2{margin:.2rem 0 .45rem}
.knowledge-directory__card p{margin:0;color:var(--muted);font-family:var(--sans);font-size:.82rem;line-height:1.45}
.knowledge-directory__card:hover h2,.knowledge-directory__card:focus-visible h2{color:var(--emerald)}
.knowledge-records-head{margin-top:.5rem}
.knowledge-all-records{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.45rem;
}
.knowledge-all-records a{
  display:flex;
  flex-direction:column;
  gap:.12rem;
  padding:.55rem .7rem;
  border:.0625rem solid var(--line);
  border-radius:.4rem;
  background:#fbfdfc;
  text-decoration:none;
}
.knowledge-all-records a span{color:var(--muted);font:700 .62rem var(--sans);text-transform:uppercase;letter-spacing:.04em}
.knowledge-all-records a strong{color:var(--green-deep);font-family:var(--serif)}
.knowledge-collection-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.knowledge-collection-card{display:flex;flex-direction:column;align-items:flex-start}
.knowledge-collection-card__meta{display:flex;gap:.4rem;flex-wrap:wrap}
.knowledge-collection-card h2{margin:.5rem 0 .45rem}
.knowledge-collection-card h2 a{text-decoration:none}
.knowledge-collection-card p{margin:0;color:var(--muted);font-family:var(--sans);line-height:1.5}
.knowledge-empty-collection{margin-top:.5rem}
.library-architecture-grid .card{min-height:14rem}
.exploration-directory .card{display:flex;flex-direction:column;align-items:flex-start}
.exploration-directory .card .explore-button{margin-top:auto}

@media(max-width:70rem){
  .knowledge-directory{grid-template-columns:repeat(2,minmax(0,1fr))}
  .knowledge-all-records{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:50rem){
  .knowledge-directory,.knowledge-all-records,.knowledge-collection-grid{grid-template-columns:1fr}
}

/* v0.7.2 — Library Integrity */
.integrity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin:1.2rem 0}
.integrity-grid h2{margin:.2rem 0}
.integrity-detail{margin-top:1rem}
.integrity-warning{border-left-color:#9a4f35;background:#f7e9e2;color:#6d3525}
.integrity-routes{display:flex;flex-wrap:wrap;gap:.35rem}
.integrity-routes code{padding:.25rem .45rem;border:.0625rem solid var(--line);border-radius:.3rem;background:#f4f7f5;font-size:.68rem}
.integrity-problems{border-color:#b38472}
@media(max-width:70rem){.integrity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:50rem){.integrity-grid{grid-template-columns:1fr}}

/* v0.7.3 — Baum Locations Gazetteer */
.location-stats{margin-bottom:1.25rem}
.location-controls{
  display:grid;
  grid-template-columns:minmax(15rem,2fr) repeat(3,minmax(8rem,1fr)) auto;
  gap:.65rem;
  align-items:end;
  padding:1rem;
  margin:1rem 0;
  border:.0625rem solid var(--line);
  border-radius:.65rem;
  background:#f7faf8;
}
.location-controls label{display:grid;gap:.25rem;font-family:var(--sans);font-size:.68rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.location-controls input,.location-controls select{
  width:100%;
  min-height:2.35rem;
  padding:.45rem .55rem;
  border:.0625rem solid #a9bdb4;
  border-radius:.4rem;
  background:#fff;
  color:var(--ink);
  font:500 .82rem var(--sans);
}
.location-controls button{
  min-height:2.35rem;padding:.45rem .75rem;border:.0625rem solid #8ba294;border-radius:.4rem;background:#edf4f0;color:var(--green-deep);font:800 .72rem var(--sans)
}
.results-count{margin:.6rem 0 1rem;color:var(--muted);font:700 .75rem var(--sans)}
.location-directory{display:grid;gap:.65rem}
.letter-heading{margin:1.2rem 0 .15rem;padding-bottom:.35rem;border-bottom:.0625rem solid var(--line)}
.location-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(12rem,18rem);
  gap:1rem;
  align-items:start;
}
.location-card.hidden,.letter-heading.hidden{display:none}
.location-card h3{margin:0 0 .25rem}
.location-card h3 a{text-decoration:none}
.location-card p{margin:.25rem 0;color:var(--muted);font-family:var(--sans);font-size:.8rem;line-height:1.45}
.location-aliases{font-size:.72rem!important}
.location-card__meta{display:flex;gap:.3rem;flex-wrap:wrap;justify-content:flex-end;font-family:var(--sans)}
.location-card__meta>span{
  display:inline-flex;padding:.18rem .42rem;border:.0625rem solid #a6b9b0;border-radius:999rem;background:#f0f5f2;color:#50675d;font-size:.62rem;font-weight:800
}
.location-card__meta small{flex-basis:100%;text-align:right;color:var(--muted);font-size:.65rem}
.location-evidence{margin:.5rem 0;padding:.75rem 1rem;border-left:.18rem solid #9f7d25;background:#fbf4d7}
.location-appearances{display:grid;gap:.45rem}
.location-appearances>div{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-top:.0625rem solid var(--line)}
.location-appearances>div:first-child{border-top:0}
.location-appearances span{font-family:var(--sans);font-size:.75rem;text-align:right}
.location-child-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}
.location-child-grid a{
  display:flex;justify-content:space-between;gap:.5rem;padding:.5rem .65rem;border:.0625rem solid var(--line);border-radius:.4rem;background:#f8fbf9;text-decoration:none
}
.location-child-grid span{color:var(--muted);font:700 .64rem var(--sans)}
.locations-knowledge-callout{
  display:flex;justify-content:space-between;align-items:center;gap:1.2rem;margin:1.25rem 0 1.5rem
}
.locations-knowledge-callout h2{margin:.15rem 0 .35rem}
.locations-knowledge-callout p{margin:0;max-width:55rem;color:var(--muted);font-family:var(--sans)}
@media(max-width:65rem){
  .location-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
  .location-controls .search{grid-column:1/-1}
  .location-card{grid-template-columns:1fr}
  .location-card__meta{justify-content:flex-start}
  .location-card__meta small{text-align:left}
}
@media(max-width:45rem){
  .location-controls,.location-child-grid{grid-template-columns:1fr}
  .locations-knowledge-callout{display:block}
  .locations-knowledge-callout .explore-button{margin-top:.8rem}
}

/* v0.7.4 — Baum Character Registry */
.characters-page .character-stats{margin-bottom:1.4rem}.character-methodology{margin:1rem 0 1.35rem}.character-controls{display:grid;grid-template-columns:minmax(260px,2fr) minmax(180px,1fr) minmax(220px,1fr) auto;gap:.8rem;align-items:end;margin:1.25rem 0}.character-controls label{display:grid;gap:.35rem;font-weight:700}.character-controls input,.character-controls select{width:100%}.character-directory{display:grid;gap:.75rem}.character-directory .letter-heading{margin:1.25rem 0 .15rem;border-bottom:1px solid rgba(95,72,29,.28);padding-bottom:.3rem}.character-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.34fr);gap:1rem;align-items:start}.character-card h3{margin-top:0}.character-card__meta{display:grid;gap:.4rem;text-align:right}.character-card__meta span,.character-card__meta small{display:block}.character-aliases{font-size:.94em}.character-appearance-timeline{display:grid;gap:1rem}.character-state{border-left:4px solid rgba(154,104,44,.55);padding:.15rem 0 .15rem 1rem}.character-state h3{margin:.35rem 0}.character-evidence{font-size:1.02rem;line-height:1.65}.hidden{display:none!important}@media(max-width:800px){.character-controls{grid-template-columns:1fr}.character-card{grid-template-columns:1fr}.character-card__meta{text-align:left}}
