@font-face{font-family:"EB Garamond";src:url(../fonts/ebg.woff2) format("woff2"),url(../fonts/ebg.ttf) format("truetype");font-weight:400 800;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(../fonts/ebg-i.woff2) format("woff2"),url(../fonts/ebg-i.ttf) format("truetype");font-style:italic;font-weight:400 800;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(../fonts/corm.woff2) format("woff2"),url(../fonts/corm.ttf) format("truetype");font-weight:300 700;font-display:swap}
@font-face{font-family:"Inter";src:url(../fonts/inter.woff2) format("woff2"),url(../fonts/inter.ttf) format("truetype");font-weight:100 900;font-display:swap}
:root{--navy:#0f1a2e;--navy2:#16233a;--navy3:#1f3150;--gold:#c2a565;--gold2:#e2cf9e;--ink:#1f2328;--paper:#f8f5ee;--paper2:#efe9db;--line:#d9cfb5;--serif:"EB Garamond",Georgia,serif;--display:"Cormorant Garamond","EB Garamond",serif;--sans:"Inter",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;font-family:var(--serif);font-size:20px;line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
a{color:#7a6231}img{max-width:100%}
#progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),var(--gold2));z-index:60}
.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:14px;height:60px;padding:0 18px;background:rgba(15,26,46,.95);backdrop-filter:blur(8px);border-bottom:1px solid rgba(194,165,101,.35);color:var(--gold2)}
.brand{font-family:var(--display);font-size:21px;font-weight:600;color:#f3ead2;text-decoration:none;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}
.brand-orn{color:var(--gold)}.tb-right{display:flex;gap:10px;align-items:center}
.icon-btn{background:none;border:1px solid rgba(194,165,101,.4);color:var(--gold2);width:40px;height:40px;border-radius:50%;cursor:pointer;display:grid;place-items:center;font-size:22px;transition:.25s;flex:0 0 auto}
.icon-btn:hover,.icon-btn:focus-visible{background:rgba(194,165,101,.15);border-color:var(--gold)}
.icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
.burger,.burger:before,.burger:after{display:block;width:16px;height:1.5px;background:currentColor;position:relative}.burger:before,.burger:after{content:"";position:absolute;left:0}.burger:before{top:-5px}.burger:after{top:5px}
.dl{font-family:var(--sans);font-size:12px;letter-spacing:.18em;color:var(--navy);background:var(--gold);padding:9px 14px;border-radius:20px;text-decoration:none;font-weight:600}
.toc-panel{position:fixed;top:60px;left:0;bottom:0;width:min(420px,92vw);overflow:auto;background:var(--navy);color:#e8dfc6;z-index:55;padding:22px 24px 60px;transform:translateX(-100%);transition:transform .35s ease;border-right:1px solid rgba(194,165,101,.3);visibility:hidden}
.toc-panel[hidden]{display:block}.toc-panel.open{transform:none;visibility:visible}
.tp-head{font-family:var(--sans);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
#scrim{position:fixed;inset:60px 0 0;background:rgba(5,10,20,.5);z-index:54}
.toc-tree{list-style:none;padding:0;margin:0}.toc-tree ol{list-style:none;padding:0 0 0 14px;margin:4px 0 14px;border-left:1px solid rgba(194,165,101,.25)}
.tp-h{display:block;font-family:var(--display);font-size:20px;color:#f3ead2;text-decoration:none;margin-top:12px}.tp-h span{font-family:var(--sans);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);display:block}
.toc-tree ol a{display:block;padding:4px 8px;font-size:16px;line-height:1.35;color:#cfc4a6;text-decoration:none;border-radius:4px}
.toc-tree ol a:hover,.toc-tree a.cur{color:#fff;background:rgba(194,165,101,.14)}
.search{position:fixed;inset:0;z-index:70;background:rgba(8,14,26,.94);padding:10vh 16px;overflow:auto}
.s-box{max-width:720px;margin:0 auto;display:flex;gap:10px}
#sq{flex:1;font:22px var(--serif);padding:14px 18px;border-radius:8px;border:1px solid var(--gold);background:var(--navy2);color:#f3ead2;outline:none}
#sres{max-width:720px;margin:18px auto;list-style:none;padding:0}
#sres a{display:block;padding:14px 16px;border-bottom:1px solid rgba(194,165,101,.2);color:#e8dfc6;text-decoration:none}
#sres a:hover,#sres a:focus{background:rgba(194,165,101,.1)}#sres b{display:block;font-family:var(--display);font-size:22px;color:#f3ead2}#sres small{font-family:var(--sans);font-size:11px;letter-spacing:.15em;color:var(--gold);text-transform:uppercase}#sres p{margin:4px 0 0;font-size:16px;color:#bdb39a}#sres mark{background:rgba(194,165,101,.35);color:#fff}
.eyebrow{font-family:var(--sans);font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);text-decoration:none}
.sec-h{font-family:var(--display);font-weight:500;font-size:clamp(34px,4.5vw,52px);line-height:1.1;margin:.2em 0 .6em;color:var(--navy)}
.hero{position:relative;min-height:calc(100vh - 60px);display:flex;align-items:center;background:var(--navy);color:#f3ead2;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:right center;animation:slowzoom 30s ease-in-out infinite alternate}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,26,46,.97) 30%,rgba(15,26,46,.55) 60%,rgba(15,26,46,.15))}
.hero-in{position:relative;z-index:2;padding:40px 7vw;max-width:780px}
.hero h1{font-family:var(--display);font-weight:500;font-size:clamp(44px,7vw,92px);line-height:1.02;margin:.25em 0 0;color:#f6eed8}
.rule{width:90px;border-top:1px solid var(--gold);margin:28px 0}.sub{font-style:italic;font-size:clamp(20px,2.4vw,27px);color:#d9cba6;margin:0}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}
.btn{font-family:var(--sans);font-size:13px;letter-spacing:.16em;text-transform:uppercase;padding:14px 22px;border-radius:30px;text-decoration:none;transition:.25s}
.btn.gold{background:var(--gold);color:var(--navy);font-weight:600}.btn.gold:hover{background:var(--gold2)}.btn.ghost{border:1px solid rgba(194,165,101,.6);color:var(--gold2)}.btn.ghost:hover{background:rgba(194,165,101,.12)}
.scroll-cue{position:absolute;bottom:26px;left:50%;width:22px;height:36px;border:1px solid var(--gold);border-radius:12px;z-index:3}.scroll-cue:after{content:"";position:absolute;left:50%;top:7px;width:2px;height:7px;margin-left:-1px;background:var(--gold);animation:cue 1.8s infinite}
@keyframes cue{to{transform:translateY(12px);opacity:0}}@keyframes slowzoom{to{transform:scale(1.07)}}
.tl-sec{background:var(--navy2);color:#e8dfc6;padding:80px 0 70px;text-align:center}.tl-sec .sec-h{color:#f3ead2}
.tl-scroller{overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--gold) transparent;padding:30px 0 10px;cursor:grab}
.tl-track{position:relative;display:flex;align-items:flex-start;min-width:max-content;padding:0 8vw}
.tl-track:before{content:"";position:absolute;left:8vw;right:8vw;top:39px;border-top:1px solid rgba(194,165,101,.5)}
.tl-node{position:relative;flex:0 0 auto;background:none;border:0;color:inherit;cursor:pointer;padding:0 6px;display:flex;flex-direction:column;align-items:center;font:inherit}
.tl-gap{flex:0 0 auto}
.tl-date{font-family:var(--sans);font-size:11px;letter-spacing:.12em;color:var(--gold);height:30px;white-space:nowrap}
.tl-dot{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--gold);background:var(--navy2);transition:.3s;position:relative}
.tl-dot:after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--gold);transform:scale(0);transition:.3s}
.tl-name{margin-top:14px;font-family:var(--display);font-size:17px;line-height:1.15;max-width:120px;color:#cfc4a6;transition:.3s}
.tl-node:hover .tl-dot,.tl-node:focus-visible .tl-dot{box-shadow:0 0 0 6px rgba(194,165,101,.18)}
.tl-node.active .tl-dot{transform:scale(1.35);box-shadow:0 0 18px rgba(226,207,158,.7)}.tl-node.active .tl-dot:after{transform:scale(1)}.tl-node.active .tl-name{color:#fff}
.tl-ctrl{display:flex;justify-content:center;gap:12px;margin:10px 0 20px}
.tl-card{max-width:760px;margin:0 auto;padding:30px 34px;text-align:left;border:1px solid rgba(194,165,101,.45);border-radius:6px;background:linear-gradient(180deg,rgba(31,49,80,.6),rgba(15,26,46,.6));position:relative;animation:fadeup .45s ease}
.tl-card:before{content:"";position:absolute;inset:6px;border:1px solid rgba(194,165,101,.18);border-radius:3px;pointer-events:none}
.tl-card h3{font-family:var(--display);font-weight:500;font-size:34px;line-height:1.1;margin:4px 0 14px;color:#f6eed8}
.tl-card dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 18px}.tl-card dt{font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);padding-top:6px}.tl-card dd{margin:0}
.tl-card a.go{position:relative;display:inline-block;margin-top:18px;font-family:var(--sans);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold2)}
@keyframes fadeup{from{opacity:0;transform:translateY(10px)}}
.parts-sec,.contents-sec{max-width:1180px;margin:0 auto;padding:80px 22px 20px}.contents-sec .toc-tree{columns:2;column-gap:50px}.contents-sec .tp{break-inside:avoid}
.contents-sec .tp-h{color:var(--navy)}.contents-sec .toc-tree ol a{color:#4a4a45}.contents-sec .toc-tree ol a:hover{color:var(--navy);background:var(--paper2)}.contents-sec .toc-tree ol{border-color:var(--line)}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.pcard{position:relative;min-height:220px;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;text-decoration:none;color:#f3ead2;background-color:var(--navy);background-size:cover;background-position:center;box-shadow:0 10px 30px rgba(15,26,46,.18);transition:transform .4s}
.pcard:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,26,46,.96) 15%,rgba(15,26,46,.35));transition:.4s}.pcard:hover{transform:translateY(-4px)}.pcard:hover:before{background:linear-gradient(0deg,rgba(15,26,46,.92) 10%,rgba(15,26,46,.15))}
.pcard>*{position:relative}.pc-l{font-family:var(--sans);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}.pc-t{font-family:var(--display);font-size:28px;line-height:1.1;margin:6px 0}.pc-n{font-size:15px;color:#cfc4a6;font-style:italic}
.part-hero,.ch-hero{position:relative;background-color:var(--navy);background-size:cover;background-position:center;color:#f3ead2;text-align:center}
.part-hero{min-height:62vh;display:grid;place-items:center}.ch-hero{min-height:340px;display:grid;place-items:center}
.part-hero:before,.ch-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,26,46,.55),rgba(15,26,46,.92))}
.ph-in,.ch-hero-in{position:relative;padding:60px 22px;max-width:900px}
.part-hero h1{font-family:var(--display);font-weight:500;font-size:clamp(46px,7vw,84px);margin:.15em 0;line-height:1.05}
.ch-hero h1{font-family:var(--display);font-weight:500;font-size:clamp(32px,4.6vw,56px);margin:.3em 0 .1em;line-height:1.1;color:#f6eed8}
.orn{color:var(--gold);font-size:18px}
.part-list{max-width:820px;margin:0 auto;padding:60px 22px}.chap-list{list-style:none;padding:0;margin:0}
.chap-list a{display:flex;gap:18px;align-items:baseline;padding:18px 6px;border-bottom:1px solid var(--line);font-family:var(--display);font-size:26px;line-height:1.2;color:var(--navy);text-decoration:none;transition:.25s}.chap-list a:hover{padding-left:16px;color:#7a6231}
.chap-list .n{font-family:var(--sans);font-size:12px;letter-spacing:.2em;color:var(--gold)}
.prose.wide{max-width:900px;margin:0 auto;padding:0 22px 40px}
.ch-grid{display:grid;grid-template-columns:260px minmax(0,760px);gap:56px;justify-content:center;padding:56px 24px 40px}
.onpage{position:sticky;top:84px;align-self:start;max-height:calc(100vh - 110px);overflow:auto;font-size:15px;line-height:1.35}
.op-h{font-family:var(--sans);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#8a7444;margin-bottom:10px}
.onpage ol{list-style:none;padding:0;margin:0;border-left:1px solid var(--line)}.onpage a{display:block;padding:6px 0 6px 14px;margin-left:-1px;border-left:2px solid transparent;color:#5d5c56;text-decoration:none}.onpage a:hover,.onpage a.cur{color:var(--navy);border-left-color:var(--gold)}
.prose p{margin:0 0 1em;hyphens:auto}.prose strong{color:var(--navy2)}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin:.45em 0}.prose li::marker{color:var(--gold)}
.prose .lead{font-weight:700;color:var(--navy2)}
.prose h3{font-family:var(--display);font-weight:600;font-size:30px;line-height:1.15;color:var(--navy);margin:1.8em 0 .5em}
.prose h3.allcaps{font-size:24px;letter-spacing:.05em}
.prose h3:after{content:"";display:block;width:56px;border-top:1px solid var(--gold);margin-top:12px}
.prose h4{font-family:var(--display);font-weight:600;font-size:24px;color:var(--navy2);margin:1.5em 0 .4em}
blockquote.pull{margin:1.6em 0;padding:8px 0 8px 26px;border-left:2px solid var(--gold);font-family:var(--display);font-style:italic;font-size:28px;line-height:1.3;color:var(--navy3)}blockquote.pull p{margin:0}
code{font-size:.82em;background:var(--paper2);padding:1px 5px;border-radius:3px}
.table-wrap{margin:1.6em 0;overflow-x:auto;border-radius:6px;border:1px solid var(--line);background:#fff;box-shadow:0 6px 24px rgba(15,26,46,.06)}
table{border-collapse:collapse;width:100%;font-size:16.5px;line-height:1.45}td p{margin:0!important}
th{background:var(--navy);color:var(--gold2);font-family:var(--sans);font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;text-align:left;padding:13px 14px}th p,th strong{color:inherit!important}
td{padding:12px 14px;border-top:1px solid #ece5d3;vertical-align:top}tbody tr:nth-child(even) td{background:#fbf9f3}tbody tr:hover td{background:#f4eedf}
td:first-child{font-weight:600;color:var(--navy2)}
figure.diagram{margin:2em 0;padding:28px 22px;background:var(--navy);color:#e8dfc6;border-radius:8px;position:relative;box-shadow:0 14px 40px rgba(15,26,46,.22)}
figure.diagram:before{content:"";position:absolute;inset:7px;border:1px solid rgba(194,165,101,.25);border-radius:4px;pointer-events:none}
.fig-title{font-family:var(--sans);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);text-align:center;margin-bottom:18px}
.fig-label{font-family:var(--display);font-style:italic;text-align:center;color:#cfc4a6;margin:6px 0;font-size:18px}
.flow{display:flex;flex-direction:column;align-items:center}
.entry{width:min(100%,520px);border:1px solid rgba(194,165,101,.55);border-radius:5px;background:rgba(31,49,80,.65);padding:14px 18px;text-align:center}
.elabel{font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold2)}
.etext{font-family:var(--display);font-size:19px;color:#f3ead2;margin-top:4px}
.ebul{font-size:15.5px;color:#cfc4a6;line-height:1.4;margin-top:4px}
.conn{height:44px;display:grid;place-items:center}.conn-svg{width:40px;height:44px}
.draw path{fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:120;stroke-dashoffset:120;transition:stroke-dashoffset 1s ease}
.fork-lines{width:min(100%,560px);height:60px}.fork-svg{width:100%;height:60px}.fork-svg path{stroke-dasharray:600;stroke-dashoffset:600}
.fork{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:min(100%,620px)}.fcol{border:1px solid rgba(194,165,101,.55);border-radius:5px;padding:14px;background:rgba(31,49,80,.65);text-align:center}
.reveal-diagram .entry,.reveal-diagram .fcol,.reveal-diagram .cycle td,.reveal-diagram .fig-label{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}
.reveal-diagram.in .entry,.reveal-diagram.in .fcol,.reveal-diagram.in .cycle td,.reveal-diagram.in .fig-label{opacity:1;transform:none}
.reveal-diagram.in .draw path{stroke-dashoffset:0}
.cyc{background:transparent;border:0;box-shadow:none}.cycle td{border:1px solid rgba(194,165,101,.4);background:rgba(31,49,80,.65)!important;text-align:center;font-weight:400!important;color:#e8dfc6!important}
.cy-date{font-family:var(--sans);font-size:12px;letter-spacing:.14em;color:var(--gold)}.cy-name{font-family:var(--display);font-size:20px;color:#f3ead2}.cy-txt{font-size:15px}.cy-foot{font-style:italic;color:var(--gold2)!important}
details.decoder{margin:2em 0;border:1px solid #d3c191;border-radius:8px;background:linear-gradient(180deg,#f4ecd8,#efe5cc);overflow:hidden}
details.decoder.chronology{background:linear-gradient(180deg,#e9edf3,#dfe5ee);border-color:#b8c3d4}
summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:16px 22px;font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--navy)}
summary::-webkit-details-marker{display:none}.dc-ico{color:#a3843f}.dc-chev{margin-left:auto;width:10px;height:10px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .3s}
details[open] .dc-chev{transform:rotate(225deg)}.dc-body{padding:0 24px 18px;font-size:18px}.dc-body>p:first-child{font-weight:600;font-style:italic;color:var(--navy2)}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:60px 0 10px}.pn a{display:block;padding:18px 20px;border:1px solid var(--line);border-radius:6px;text-decoration:none;color:var(--navy);background:#fff;transition:.25s}.pn a:hover{border-color:var(--gold);box-shadow:0 8px 24px rgba(15,26,46,.08)}
.pn small{display:block;font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8a7444}.pn span{font-family:var(--display);font-size:21px;line-height:1.2}.pn .next{text-align:right;grid-column:2}
.wheel-sec{margin:0 0 3em;padding:34px 24px;background:var(--navy);color:#e8dfc6;border-radius:10px;text-align:center}.wheel-sec .sec-h{color:#f3ead2;font-size:38px}
.wheel-wrap{display:grid;gap:20px;justify-items:center}
.wheel{width:min(100%,560px)}.wheel svg{width:100%;aspect-ratio:1;overflow:visible}
.w-ring{fill:none;stroke:rgba(194,165,101,.45)}.w-tick{stroke:rgba(194,165,101,.3)}
.w-node{cursor:pointer}.w-node circle{fill:var(--navy2);stroke:var(--gold);stroke-width:1.5;transition:.3s}.w-node text{fill:#cfc4a6;font:600 10.5px var(--sans);letter-spacing:.08em}
.w-node .hit{fill:transparent;stroke:none}
.w-node:hover circle:not(.hit),.w-node:focus circle:not(.hit),.w-node.active circle:not(.hit){fill:var(--gold)}.w-node.active text{fill:#fff}.w-node:focus{outline:none}
.w-pluto circle:not(.hit){fill:#24375a;stroke:var(--gold2);stroke-dasharray:2 2}
.w-hand{stroke:var(--gold);stroke-width:1.2;transition:transform .8s cubic-bezier(.4,1.4,.5,1);transform-origin:300px 300px}
.wheel-info{width:min(100%,640px);text-align:left;border:1px solid rgba(194,165,101,.45);border-radius:6px;padding:20px 24px;min-height:150px;animation:fadeup .4s}
.wheel-info h4{font-family:var(--display);font-size:28px;font-weight:500;margin:2px 0 10px;color:#f6eed8}.wheel-info dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:17px}.wheel-info dt{font-family:var(--sans);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);padding-top:5px}.wheel-info dd{margin:0}.wheel-info a{color:var(--gold2);font-family:var(--sans);font-size:12px;letter-spacing:.15em;text-transform:uppercase;display:inline-block;margin-top:12px}
.w-legend{font-family:var(--sans);font-size:11px;letter-spacing:.14em;color:#bdb39a;text-transform:uppercase}
.foot{background:var(--navy);color:#cfc4a6;text-align:center;padding:50px 20px 60px;margin-top:60px}.f-orn{color:var(--gold)}.f-t{font-family:var(--display);font-size:24px;color:#f3ead2}.f-s{font-style:italic;margin-bottom:14px}.foot a{color:var(--gold2);font-family:var(--sans);font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}.js .reveal.in{opacity:1;transform:none}
@media (max-width:1100px){.ch-grid{grid-template-columns:minmax(0,760px)}.onpage{display:none}}
@media (max-width:760px){body{font-size:18.5px}.topbar{height:56px;padding:0 10px;gap:8px}.brand{font-size:17px}.toc-panel{top:56px}#scrim{top:56px}
.hero{min-height:auto}.hero-in{padding:80px 22px 90px}.hero:after{background:linear-gradient(180deg,rgba(15,26,46,.75),rgba(15,26,46,.95))}.hero-bg{background-position:70% center}
.ch-grid{padding:34px 18px}.tl-card{margin:0 14px;padding:22px}.tl-card h3{font-size:28px}.tl-card dl,.wheel-info dl{grid-template-columns:1fr;gap:2px}.tl-card dd,.wheel-info dd{margin-bottom:8px}
.contents-sec .toc-tree{columns:1}.pn{grid-template-columns:1fr}.pn .next{grid-column:1}
.table-wrap:not(.cyc){border:0;background:none;box-shadow:none}.table-wrap:not(.cyc) thead{display:none}.table-wrap:not(.cyc) tr{display:block;margin-bottom:14px;border:1px solid var(--line);border-radius:6px;background:#fff;overflow:hidden}
.table-wrap:not(.cyc) td{display:block;border-top:1px solid #ece5d3;background:#fff!important}.table-wrap:not(.cyc) td:first-child{border-top:0;background:var(--navy)!important;color:var(--gold2)}.table-wrap:not(.cyc) td:first-child strong{color:var(--gold2)}
.table-wrap:not(.cyc) td:before{content:attr(data-label);display:block;font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#8a7444;font-weight:600}.table-wrap:not(.cyc) td:first-child:before{color:var(--gold)}
.cycle,.cycle tbody,.cycle tr,.cycle td{display:block;width:100%}.cycle td{margin-bottom:6px}.fork{grid-template-columns:1fr}.fork-lines{display:none}figure.diagram{padding:24px 14px}
blockquote.pull{font-size:24px}.dl,#askBtn{padding:8px 11px}.wheel-sec{padding:26px 12px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .reveal,.reveal-diagram .entry,.reveal-diagram .fcol,.reveal-diagram .cycle td,.reveal-diagram .fig-label{opacity:1!important;transform:none!important}.draw path{stroke-dashoffset:0!important}}
/* Ask the Ledger */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ask-btn{-webkit-appearance:none;appearance:none;font-family:var(--sans);font-size:12px;line-height:normal;letter-spacing:.18em;color:var(--navy);background:var(--gold);border:0;margin:0;padding:9px 14px;border-radius:20px;cursor:pointer;font-weight:600;white-space:nowrap;text-transform:none}
.ask-btn:hover,.dl:hover{filter:brightness(1.1)}.ask-btn:focus-visible,.dl:focus-visible{outline:2px solid var(--gold2);outline-offset:2px}
.ask-btn.big{letter-spacing:.08em;text-transform:uppercase;font-size:14px;padding:14px 26px;margin-top:10px}
.ask-panel{position:fixed;right:18px;bottom:18px;top:78px;width:min(440px,calc(100vw - 36px));z-index:70;display:flex;flex-direction:column;background:var(--navy);color:#ece3c8;border:1px solid rgba(194,165,101,.5);border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.45);font-family:var(--sans);font-size:15px;line-height:1.55;opacity:0;transform:translateY(12px);transition:.25s}
.ask-panel.open{opacity:1;transform:none}
.ask-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid rgba(194,165,101,.3)}
.ask-k{color:var(--gold);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.ask-t{font-family:var(--display);font-size:20px;color:#f3ead2}
.ask-log{flex:1;overflow:auto;padding:14px 16px;display:flex;flex-direction:column;gap:12px}
.ask-intro{color:#b9b09a;font-size:13.5px}.ask-intro b{color:var(--gold2)}
.ask-sugg{display:flex;flex-wrap:wrap;gap:8px}
.ask-chip{font:inherit;font-size:13px;background:rgba(194,165,101,.1);color:var(--gold2);border:1px solid rgba(194,165,101,.4);border-radius:16px;padding:6px 11px;cursor:pointer;text-align:left}
.ask-chip:hover,.ask-chip:focus-visible{background:rgba(194,165,101,.25)}
.ask-q{align-self:flex-end;background:var(--navy3);border:1px solid rgba(194,165,101,.3);padding:8px 12px;border-radius:12px 12px 2px 12px;max-width:88%}
.ask-a p{margin:.2em 0 .5em}
.ask-book,.ask-beyond{background:var(--navy2);border-left:3px solid var(--gold);border-radius:6px;padding:10px 12px}
.ask-beyond{border-left-color:#6f8fb8;margin-top:8px;background:#122039}
.ask-lab{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:4px;font-weight:600}.ask-beyond .ask-lab{color:#9fbbe0}.ask-lab span{text-transform:none;letter-spacing:0;font-weight:400;color:#8c9ab0}
.ask-cites{list-style:none;padding:0;margin:6px 0 0;font-size:12.5px}.ask-cites a,.ask-ref{color:var(--gold2)}.ask-beyond .ask-cites a,.ask-beyond .ask-ref{color:#b8cfee}
.ask-err{color:#f0b9a0}
.ask-form{display:flex;gap:8px;padding:10px 12px;border-top:1px solid rgba(194,165,101,.3)}
.ask-form textarea{flex:1;resize:none;font:inherit;background:#0a1322;color:#f3ead2;border:1px solid rgba(194,165,101,.4);border-radius:10px;padding:10px}
.ask-form textarea:focus{outline:2px solid var(--gold);outline-offset:0}
.ask-send{background:var(--gold);color:var(--navy);border:0;border-radius:10px;width:46px;font-size:18px;cursor:pointer}
.ask-disc{font-size:11px;color:#8c9ab0;padding:0 14px 10px}
.ask-dots i{display:inline-block;width:7px;height:7px;margin:0 2px;border-radius:50%;background:var(--gold);animation:askd 1s infinite alternate}.ask-dots i:nth-child(2){animation-delay:.2s}.ask-dots i:nth-child(3){animation-delay:.4s}
@keyframes askd{to{opacity:.2}}
.ask-sec{max-width:820px;margin:60px auto;padding:34px 28px;text-align:center;background:var(--navy);color:#ece3c8;border:1px solid rgba(194,165,101,.45);border-radius:14px}
.ask-sec .sec-h{color:#f3ead2}.home-sugg{justify-content:center;font-family:var(--sans);margin:16px 0}
@media (max-width:760px){.ask-panel{inset:60px 0 0 0;width:100%;border-radius:0}#askBtn{padding:9px 10px;font-size:10.5px}.dl{display:none}}
@media (prefers-reduced-motion:reduce){.ask-panel{transition:none}.ask-dots i{animation:none}}

.ch-sources{margin:56px 0 24px;padding-top:24px;border-top:1px solid rgba(194,165,101,.45);font-size:.92em}
.ch-sources h2{font-family:var(--serif,serif);font-size:1.35em;margin:1.4em 0 .5em}
.ch-sources ol{padding-left:1.6em}.ch-sources li{margin:.55em 0;line-height:1.5}
.ch-sources .st{display:inline-block;font-family:var(--sans,sans-serif);font-size:.7em;letter-spacing:.08em;text-transform:uppercase;border:1px solid currentColor;border-radius:4px;padding:0 5px;margin-right:6px;opacity:.85}
.ch-sources .st.corrected{color:#2e7d4f}.ch-sources .st.differs{color:#b26b00}.ch-sources .st.verified{color:#1f5f8b}
.ch-sources .nt{display:block;opacity:.8;font-size:.95em}.ch-sources .sl a{word-break:break-word}
.ch-sources li:target{background:rgba(194,165,101,.15);border-radius:6px}
sup.sref{font-size:.62em;line-height:0;margin-left:2px}sup.sref a{text-decoration:none;font-family:var(--sans,sans-serif)}
.pg-wrap{max-width:900px;margin:0 auto;padding:110px 20px 70px}.pg-wrap h1{font-family:var(--serif,serif);font-size:clamp(30px,5vw,48px);margin:.2em 0 .4em}
.pg-wrap table{width:100%;border-collapse:collapse;font-size:.92em}.pg-wrap td,.pg-wrap th{border-bottom:1px solid rgba(194,165,101,.3);padding:6px;text-align:left;vertical-align:top}
.rx .rx-filters{top:60px}

.see-also{margin:32px 0;padding:14px 18px;border-left:3px solid rgba(194,165,101,.8);background:rgba(194,165,101,.08);border-radius:6px}
