:root{font-family:Arial,sans-serif;color:#233c36;background:#e9e5da;font-synthesis:none;--ink:#233c36;--muted:#6b786d;--paper:#faf7ee;--line:#d9dbcc;--accent:#bf6b42}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer;background:transparent;border:1px solid var(--line);color:inherit;padding:.75rem 1rem;border-radius:4px;text-align:left}button:hover{background:#e6e7da}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #bf6b42;outline-offset:4px}button[aria-pressed=true]{background:var(--ink);color:var(--paper)}header{display:flex;align-items:center;gap:3rem;padding:24px 4vw;border-bottom:1px solid #c7cdbe;background:#e9e5da}.brand{display:flex;gap:14px;align-items:center;color:inherit;text-decoration:none;font-size:11px;letter-spacing:2px;font-weight:700;line-height:1.45}.symbol{font:44px Georgia;color:var(--accent)}.topnote{font:12px/1.6 Georgia;color:var(--muted)}header nav{margin-left:auto;display:flex;gap:6px}header nav button{border:0;font-size:12px;padding:12px 20px}.workspace{display:grid;grid-template-columns:330px minmax(0,1fr);max-width:1600px;margin:auto;min-height:calc(100vh - 110px)}aside{padding:48px 28px 36px 36px;border-right:1px solid #c7cdbe;align-self:start;position:sticky;top:0}.eyebrow{font:10px/1.7 Arial;letter-spacing:2px;color:#75806a;font-weight:700}h1{font: 34px/1.1 Georgia;letter-spacing:-1px;margin:20px 0}.intro{font:14px/1.7 Georgia;color:#667160}.entries{margin-top:32px}.entries button{display:flex;align-items:center;gap:13px;width:100%;border:0;border-bottom:1px solid #d1d6c8;border-radius:0;padding:18px 8px;font:14px Georgia}.entries button small{display:block;margin-top:7px;font:10px Arial;color:#71816b}.entries button.selected{background:#233c36;color:#faf7ee;border-radius:4px}.entries button.selected small{color:#bccab7}.entry-number{color:#a0a893;font:11px monospace}.entries button>span:last-child{margin-left:auto}.depth{display:flex;gap:4px;margin-top:30px}.depth i{height:5px;background:#ccd1bf;flex:1}.depth i.lit{background:#bf6b42}.aside-note{font:12px/1.6 Georgia;color:#75806a}.tools{display:grid;gap:8px;margin-top:25px}.tools button{font-size:11px;border-color:#c3cbb7}main{background:var(--paper);min-width:0}.paper-top{display:flex;justify-content:space-between;padding:22px 38px;border-bottom:1px solid var(--line);font:9px monospace;letter-spacing:1px;color:#7c8574}article{max-width:760px;margin:0 auto;padding:58px 55px 80px}h2{font:normal clamp(36px,4vw,57px)/1.05 Georgia;letter-spacing:-1.8px;margin:22px 0}.byline{font:italic 13px/1.6 Georgia;color:#8c907c;padding:14px 0 34px;border-bottom:1px solid var(--line);margin-bottom:38px}article p{font:17px/1.85 Georgia;white-space:pre-wrap}article .eyebrow{font:10px/1.7 Arial;letter-spacing:2px}.event{margin:38px 0}.event-index{font:9px monospace;letter-spacing:1.5px;color:#9a7a5e}h3{font: 26px/1.3 Georgia;margin:12px 0}.transition{display:flex;gap:20px;margin:40px 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#748069}.transition span{color:var(--accent);font:32px Georgia}.transition p{font:italic 16px/1.7 Georgia;margin:0}.opening>p:last-child:first-letter{font-size:52px;line-height:1;color:#bf6b42;float:left;margin:7px 8px 0 0}.clue-button{width:100%;border-left:3px solid #bf6b42;font:13px Georgia;margin:20px 0}.clues{border-left:1px solid #c9cbb8;padding-left:25px}.clues p{font:14px/1.7 Georgia;color:#69765f}.primary{background:var(--ink);color:var(--paper);border:0;padding:16px 20px;font-size:12px}.primary:hover{background:#385249}.continue{margin-top:32px;width:100%;display:flex;justify-content:space-between}.ending{border-top:1px solid var(--line);margin-top:40px;padding-top:35px}.endmark{text-align:center;font-size:34px;color:var(--accent);margin:35px}.afterword{text-align:center;font-style:italic!important;color:#829073}.map{list-style:none;padding:20px 0}.map li{display:flex;gap:20px;border-left:1px solid #acb7a2;margin-left:20px;padding:0 0 26px}.node{flex-shrink:0;border:1px solid #9ba88c;border-radius:50%;width:40px;height:40px;background:var(--paper);font:12px/40px monospace;text-align:center;margin-left:-20px}.shown .node{background:var(--ink);color:#fff}.map small{font:9px monospace;color:#8c977d}.map p{font-size:13px}.map h3{font-size:21px}.clue-link{border-left:2px solid var(--accent);padding-left:14px}.terminal{background:#e8ecdf;padding:20px;margin-bottom:25px}.terminal b{font:13px monospace}.terminal p,.author p{font-size:14px}.author details{padding:15px 0;border-top:1px solid var(--line)}summary{cursor:pointer;font-size:12px;line-height:1.7}.author-actions{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.author-actions button{font-size:11px}label{display:grid;gap:8px;font-size:12px;margin:18px 0}input,textarea{width:100%;min-width:0;border:1px solid #c8cebb;border-radius:3px;padding:12px;background:#fffdf6;color:var(--ink)}textarea{min-height:130px;line-height:1.6;resize:vertical}.json{font:11px/1.6 monospace;min-height:280px;tab-size:2}fieldset{border:1px solid var(--line);margin:15px 0;padding:15px}legend{font:10px monospace}.warning{background:#fff1db;padding:12px}pre{font:12px/1.6 monospace;white-space:pre-wrap;overflow-wrap:anywhere}footer{border-top:1px solid #c7cdbe;padding:20px 4vw;background:#e2e4d6;display:flex;align-items:start;gap:25px;flex-wrap:wrap;font-size:11px}footer>p{flex:1;min-width:240px;line-height:1.7;margin:0}footer details{max-width:500px}footer details p{line-height:1.8}footer button{margin:8px 8px 0 0;font-size:11px}footer small{font-size:9px;color:#748267}@media(max-width:950px){.workspace{grid-template-columns:270px 1fr}aside{padding:30px 20px}article{padding:35px 30px}h1{font-size:29px}.topnote{display:none}}@media(max-width:700px){header{padding:16px 20px;gap:10px}.brand{font-size:9px}header nav button{padding:10px}.workspace{display:block}aside{position:static;border-right:0;border-bottom:1px solid #c7cdbe;padding:25px}h1{font-size:30px}.intro{font-size:13px}.entries{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:20px}.entries button{border:1px solid #c7cdbe;padding:12px 8px;font-size:12px}.entries button small{font-size:9px}.tools{display:flex}.depth{margin-top:20px}article{padding:32px 25px 55px}.paper-top{padding:18px 25px;font-size:8px}h2{font-size:41px}article p{font-size:17px}footer{padding:22px 25px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}h1,h2,h3,.entries button span{white-space:pre-wrap}header nav{flex-wrap:wrap}@media(max-width:420px){header{flex-wrap:wrap}header nav{margin-left:0;width:100%}}
