:root{color-scheme:light;--paper:#fff1e5;--ink:#262321;--muted:#70645b;--accent:#9b3c27;--line:#d3c2b5;font:19px/1.75 Georgia,'Times New Roman',serif;background:var(--paper);color:var(--ink)}
html[data-theme=dark]{color-scheme:dark;--paper:#211c1b;--ink:#f3e7dc;--muted:#c1b0a5;--accent:#e2b39b;--line:#5d514b}*{box-sizing:border-box}body{margin:0}a{color:var(--accent);text-underline-offset:.2em}button,select{font:12px/1.4 ui-monospace,monospace;background:transparent;color:var(--ink);border:1px solid var(--line);padding:7px 10px;cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}
.read-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;padding:8px 18px;border-bottom:1px solid var(--line);background:var(--paper);font:12px/1.4 ui-monospace,monospace}.read-brand{margin-right:auto;color:var(--ink);font:600 20px Georgia,serif;text-decoration:none}.read-header nav{display:flex;gap:18px;align-items:center}.read-header nav a{text-decoration:none}.read-header #read-contents-toggle{display:none}
.read-layout{display:grid;grid-template-columns:250px minmax(0,1fr);max-width:1420px;margin:auto}.read-contents{position:sticky;top:57px;align-self:start;height:calc(100dvh - 57px);overflow:auto;padding:26px 16px 45px 22px;border-right:1px solid var(--line);font:12px/1.5 ui-monospace,monospace}.read-contents h2{font:inherit;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.read-contents a{display:block;padding:7px 0;text-decoration:none;color:var(--muted)}.read-contents a:hover,.read-contents a[aria-current]{color:var(--accent)}
.read-main{min-width:0;max-width:850px;width:100%;padding:50px 50px 90px;margin:auto}.reading-title{margin-bottom:50px;border-bottom:1px solid var(--line);padding-bottom:30px}.reading-title h1{font:normal clamp(42px,5vw,68px)/1.06 Georgia,serif;margin:10px 0 22px}.reading-title .byline{font:12px/1.7 ui-monospace,monospace;color:var(--muted)}.reading-title .share-volume{margin-top:12px}.room-book>section{margin:0 0 70px;scroll-margin-top:85px}.room-book h2{font:normal 34px/1.2 Georgia,serif;margin:0 0 20px;color:var(--ink)}.room-book h3{font:600 24px/1.35 Georgia,serif;margin:38px 0 16px;scroll-margin-top:85px}.room-book h4{font-size:20px;margin:30px 0 12px;scroll-margin-top:85px}.room-book p{position:relative;margin:0 0 1.15em;overflow-wrap:anywhere;scroll-margin-top:85px}.room-book ul,.room-book ol{padding-left:1.4em}.room-book li{margin:8px 0}.room-book blockquote{margin:24px 0;padding:4px 0 4px 24px;border-left:2px solid var(--accent);color:var(--muted)}.room-book table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;font-size:16px}.room-book th,.room-book td{padding:10px;border:1px solid var(--line)}.room-book img{max-width:100%;height:auto}.room-book pre{overflow:auto;font-size:14px}.room-book .room-note{font:12px/1.65 ui-monospace,monospace;color:var(--muted)}.room-book .section-share{display:block;margin:12px 0 28px;padding:4px 7px;font-size:10px;color:var(--muted)}
.paragraph-link{position:absolute;left:-25px;top:0;text-decoration:none;color:var(--muted);font:12px/2.7 ui-monospace,monospace;opacity:0}.room-book p:hover>.paragraph-link,.paragraph-link:focus-visible{opacity:1}.heading-link{text-decoration:none;opacity:.45;font:14px ui-monospace,monospace;margin-left:8px}.heading-link:hover{opacity:1}
.read-footer{display:flex;gap:20px;align-items:center;padding:15px 20px;border-top:1px solid var(--line);font:11px/1.5 ui-monospace,monospace}.read-footer>a:first-child{margin-right:auto}.read-footer a{text-decoration:none}.read-footer output{color:var(--muted)}#read-support{width:min(850px,95vw);height:min(780px,90dvh);max-height:90dvh;padding:0;border:1px solid var(--line);background:var(--paper);color:var(--ink)}#read-support header{display:flex;align-items:center;justify-content:space-between;gap:20px;height:50px;padding:8px 16px;font:14px ui-monospace,monospace}#read-support iframe{width:100%;height:calc(100% - 50px);border:0;display:block}#read-support::backdrop{background:#0009}
.read-layout{grid-template-columns:210px minmax(0,1fr) 280px;max-width:1600px}.read-main{padding-inline:40px}.listen-rail{position:sticky;top:75px;align-self:start;margin:30px 18px 30px 0;min-width:0;font:13px/1.5 ui-monospace,monospace;border-block:1px solid var(--line);padding:14px 0}.listen-rail summary{cursor:pointer;color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.listen-rail h2{font:normal 24px/1.2 Georgia,serif;margin:18px 0}.listen-rail select{width:100%;max-width:100%;font-size:11px}.listen-controls{display:flex;gap:8px;margin:12px 0}.listen-controls button:first-child{min-width:90px;background:var(--ink);color:var(--paper)}.listen-rail input[type=range]{width:100%;accent-color:var(--accent)}.listen-rail output,.listen-rail p{color:var(--muted);font-size:11px}.listen-transcript{margin:18px 0;border-top:1px solid var(--line);padding-top:14px}.listen-transcript p{font:15px/1.5 Georgia,serif;max-height:6.5em;overflow:auto;margin:10px 0}.listen-transcript #listen-current{font-size:18px;color:var(--ink)}.listen-transcript #listen-previous,.listen-transcript #listen-next{opacity:.6}.chapter-reading .reading-title{margin-bottom:30px;padding-bottom:16px}.chapter-reading .reading-title h1{font-size:28px}
@media(max-width:850px){.read-header{gap:7px;flex-wrap:wrap;padding:7px 10px}.read-brand{font-size:17px}.read-header nav{order:5;flex-basis:100%;gap:18px;padding:5px 0}.read-header #read-contents-toggle{display:block}.read-layout{display:block}.read-contents{display:none;position:fixed;top:98px;left:0;bottom:0;height:auto;width:min(340px,90vw);z-index:15;background:var(--paper)}.read-contents[data-open=true]{display:block}.read-main{padding:36px 28px 65px}.read-header button,.read-header select{font-size:11px;padding:5px}.reading-title h1{font-size:42px}.room-book h2{font-size:30px}.paragraph-link{opacity:.4;left:-20px}.read-footer{padding:12px;flex-wrap:wrap;gap:12px}}
@media(max-width:1100px){.read-layout{display:flex;flex-direction:column}.read-contents{display:none;position:fixed;top:98px;left:0;bottom:0;width:min(340px,90vw);height:auto;background:var(--paper);z-index:25}.read-contents[data-open=true]{display:block}.read-header #read-contents-toggle{display:block}.listen-rail{order:1;position:static;margin:14px 28px 0;padding:10px 0}.read-main{order:2;padding-inline:28px}.listen-rail h2{font-size:20px}.listen-rail #listen-section{max-width:600px}.listen-transcript p{max-height:4.5em}.room-book>section,.room-book p,.room-book h3,.room-book h4{scroll-margin-top:115px}}
/* The spoken passage owns its height; no nested transcript scroll panes. */
.listen-transcript,.listen-transcript p{height:auto;max-height:none;overflow:visible}
.read-header nav{display:none}
.read-footer{flex-wrap:wrap}
.read-footer button{border:0;padding:2px 4px}
#read-settings{width:min(500px,92vw);padding:24px;background:var(--paper);color:var(--ink);border:1px solid var(--line)}
#read-settings header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
#read-settings h2{font:28px Georgia,serif;margin:0}
#read-settings .reader-theme-setting{display:flex;align-items:center;gap:14px;font:14px ui-monospace,monospace}
#read-settings::backdrop{background:#0009}
@media(max-width:1100px){.read-contents{top:53px}}
.chapter-next{margin-top:40px;padding-top:18px;border-top:1px solid var(--line)}
.chapter-next a{display:inline-flex;flex-direction:column;gap:6px;text-decoration:none;max-width:100%}
.chapter-next span{font:12px/1.5 ui-monospace,monospace}
.chapter-next strong{font:normal 23px/1.35 Georgia,serif}
.chapter-next a:hover strong{text-decoration:underline;text-underline-offset:.2em}
/* Reading-mode navigation stays reachable without scrolling the book. */
body{padding-bottom:var(--reading-footer-height,100px)}
.read-footer{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--paper);padding-bottom:max(12px,env(safe-area-inset-bottom))}
.read-contents{height:calc(100dvh - 57px - var(--reading-footer-height,100px))}
@media(max-width:1100px){.read-contents{bottom:var(--reading-footer-height,100px);height:auto;max-height:calc(100dvh - 53px - var(--reading-footer-height,100px))}}

/* Additions to the approved Civic reading typography, not a second bezel. */
.room-book{overflow-wrap:anywhere;min-width:0}.room-book .math.inline{display:inline-block;max-width:100%;overflow-x:auto;vertical-align:middle}
.read-contents select{width:100%;font-size:11px;white-space:normal;margin:6px 0 16px}.volume-label{font:11px ui-monospace,monospace;color:var(--muted)}.skip-reading{position:fixed;left:12px;top:-100px;z-index:100;background:var(--paper);padding:12px}.skip-reading:focus{top:8px}.room-book math[display=block],.room-book .math.display{display:block;max-width:100%;overflow-x:auto;padding-block:12px}.room-book figure{margin:30px 0}.room-book figure img{display:block;width:100%;height:auto;background:#fff}.room-book figcaption{font:14px/1.55 Georgia,serif;color:var(--muted)}.room-book h3,.room-book h4,.room-book h5,.room-book h6{overflow-wrap:anywhere}.room-book h5,.room-book h6{font:600 19px/1.4 Georgia,serif}.room-book .footnotes{font-size:16px}.read-brand{overflow-wrap:anywhere}.read-main:focus{outline:none}.read-layout{min-height:calc(100dvh - 110px)}.listen-transcript p{white-space:normal}.room-book code{overflow-wrap:anywhere}.room-book img{object-fit:contain}.read-footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}.read-header{padding-top:max(8px,env(safe-area-inset-top))}
@media(max-width:600px){.read-brand{font-size:16px}.read-main{padding-inline:26px;font-size:18px}.room-book h2{font-size:29px}.reading-title h1{font-size:38px}.read-header{gap:6px}.read-footer{gap:12px}.read-contents{max-height:calc(100dvh - 60px);overflow-y:auto}}
