:root {
  --bg:#fbfaf7; --surface:#fff; --ink:#1d1d1f; --muted:#5d5d66; --rule:#e3e0d8;
  --accent:#4a90d9; --accent-ink:#2667a8; --accent-soft:#edf5fd; --accent-fill:#d4e8fb;
  --def:#4b5563; --def-bg:#eef0f3; --prov:#1f7a4d; --prov-bg:#e3f4ea;
  --here:#2667a8; --here-bg:#e3f0fc; --heur:#8a6100; --heur-bg:#fbf1d9;
  --open:#a3324a; --open-bg:#f9e3e8;
  --body:1rem; --small:.88rem; --h1:1.75rem; --h2:1.3rem; --h3:1.05rem;
  --left:58%; --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
}
html{font-size:17px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:var(--body)/1.65 Georgia,"Times New Roman",serif}header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 28px 8px}main{padding:0 28px 32px;max-width:2000px;margin:auto}h1{font-size:var(--h1);line-height:1.25;margin:5px 0}h2{font-size:var(--h2);line-height:1.35;margin:5px 0}h3{font-size:var(--h3);line-height:1.4;margin:18px 0 8px}p{margin:9px 0}a{color:var(--accent-ink)}button,input,select{font:var(--small)/1.4 var(--sans);color:var(--ink);border:1px solid var(--rule);background:var(--surface);border-radius:7px;padding:7px 10px}button{cursor:pointer}button:hover{border-color:var(--accent)}button:disabled{opacity:.4;cursor:default}input,select{min-width:0;max-width:100%}button[aria-pressed="true"]{background:var(--accent-fill);border-color:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:var(--small)/1.6 var(--sans);padding:12px;border:1px solid var(--rule);border-radius:7px;max-width:100%;background:var(--bg)}code{overflow-wrap:anywhere}summary{cursor:pointer;font-family:var(--sans);font-size:var(--small)}.kicker{font:var(--small)/1.4 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.small{font-size:var(--small);color:var(--muted)}.target{padding:10px 0 18px;margin:0}.target button{margin-left:8px}.tag{display:inline-block;font:var(--small)/1.4 var(--sans);font-weight:600;border-radius:999px;padding:2px 8px;margin:3px 5px 3px 0}.t-open{background:var(--open-bg);color:var(--open)}.t-here{background:var(--here-bg);color:var(--here)}.t-prov{background:var(--prov-bg);color:var(--prov)}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:10px;min-width:0;overflow:hidden}.panel-head{padding:13px 16px;border-bottom:1px solid var(--rule)}.panel-head .small{margin:5px 0}.panel-letter{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--rule);border-radius:6px;margin-right:8px;font:var(--small)/1 var(--sans);color:var(--accent-ink)}.workspace{display:grid;grid-template-columns:minmax(0,var(--split-left,50%)) 14px minmax(0,1fr);align-items:start}.left{min-width:0;padding-right:10px}.divider{align-self:stretch;justify-self:center;width:4px;background:var(--rule);border-radius:5px;cursor:col-resize;touch-action:none}.toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font:var(--small)/1.4 var(--sans);padding:10px 14px}.toolbar input{flex:1;min-width:100px}.toolbar label{display:flex;align-items:center;gap:6px}.graph-scroll{height:430px;overflow:auto;overscroll-behavior:contain;background-image:radial-gradient(var(--rule) 1px,transparent 1px);background-size:20px 20px}#graph-inner{position:relative}.graph-canvas{width:840px;height:1250px;position:relative;transform-origin:0 0}#edges{position:absolute;width:840px;height:1250px;inset:0;overflow:visible}.edge{fill:none;stroke:var(--muted);stroke-width:2;opacity:.4;pointer-events:stroke;cursor:pointer}.edge.hi{stroke:var(--accent);stroke-width:3;opacity:1}.edge.challenge{stroke:var(--open);stroke-dasharray:6 4}.graph-node{position:absolute;width:240px;height:124px;padding:11px 13px;text-align:left;white-space:normal;color:var(--ink);border-radius:10px}.graph-node .role{display:block;color:var(--muted);font-size:var(--small)}.node-title{display:block;font-size:var(--body);font-weight:600;line-height:1.3;margin:7px 0}.graph-node.status-open{border-color:var(--open)}.graph-node.status-here{border-color:var(--here)}.graph-node.selected{outline:3px solid var(--accent);outline-offset:3px;background:var(--accent-soft)}.graph-node.dim{opacity:.18}.graph-caption{padding:10px 14px;border-top:1px solid var(--rule)}.node-list{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0}.detail-panel{margin-top:14px}.detail-body{padding:0 18px 16px}.detail-body>h3:first-child{margin-top:14px}.gap-box{padding:9px 13px;border-left:3px solid var(--open);background:var(--open-bg);border-radius:0 6px 6px 0;margin:16px 0}.gap-box h3{margin:0}.gap-box p{margin-bottom:0}#argument-details{margin:15px 0}.grounding{margin:10px 0;padding:12px;border:1px solid var(--rule);border-radius:8px}.grounding h4{margin:0 0 4px;font-size:var(--h3)}.grounding .relation{font:var(--small)/1.4 var(--sans);color:var(--accent-ink)}.grounding button{margin:4px 0}.grounding dl{margin:10px 0}.grounding dt{font:var(--small)/1.5 var(--sans);font-weight:600;margin-top:8px}.grounding dd{margin:3px 0}.original-links{display:flex;flex-wrap:wrap;gap:5px}.reader{display:flex;flex-direction:column;margin-top:14px}.reader label{font:var(--small)/1.4 var(--sans);color:var(--muted);display:block;margin-top:8px}.reader .panel-head>select{width:100%;margin-top:3px}.reader-controls{padding:8px 0 0}.reader-controls label{display:flex;margin:0}.reader-body{overflow:auto;min-height:140px;padding:12px 15px}.reader-links{display:flex;flex-wrap:wrap;gap:10px;font:var(--small)/1.4 var(--sans)}.relevance-key{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font:var(--small)/1.4 var(--sans)}.swatch{width:18px;height:12px;border:1px solid #276ba6;border-radius:2px}.direct{background:rgba(51,139,222,.34)}.analogous{background:rgba(51,139,222,.20)}.context{background:rgba(51,139,222,.09)}.reader-stage{height:440px;min-height:220px;overflow:auto;max-width:100%;background:#f1f1f1;margin:12px 0;border:1px solid var(--rule)}.reader-page{position:relative;min-height:30px}.reader-sheet{position:relative;background:white}.reader-sheet+.reader-sheet{margin-top:10px}.reader-page img{display:block;width:100%;height:auto}.passage-highlight{position:absolute;background:rgba(51,139,222,var(--strength));border:1px solid rgba(24,91,150,.5);pointer-events:none;mix-blend-mode:multiply}.source-metadata{margin-top:16px}.source-metadata p{font-size:var(--small);overflow-wrap:anywhere}.katex{font-size:1.1em}.katex-display{overflow:auto;padding:3px 0}.reader-text{margin:14px 0}#original-references h3{font-size:var(--h3)}
@media(max-width:900px){header{padding:16px}.workspace{grid-template-columns:1fr}.left{padding:0}.divider{display:none}.reader{position:static;max-height:950px;margin-top:16px}main{padding:0 16px 30px}}
@media(max-width:560px){header{padding:14px 12px;align-items:flex-start}header h1{font-size:var(--h2)}main{padding:0 10px 24px}.panel-head{padding:11px 12px}.detail-body{padding:0 12px 14px}.reader-body{padding:10px}.graph-scroll{height:350px}.target .katex{font-size:var(--small)}.target button{margin-left:0}.toolbar input{width:100%;flex-basis:100%}.graph-node .tag{font-size:var(--small)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.right{min-width:0}.draft-stage{height:260px;min-height:160px;margin:0}.draft-panel .toolbar{padding:4px 0 0}.draft-panel .toolbar a{font:var(--small)/1.4 var(--sans)}.extract-list{list-style:none;padding:0;margin:8px 0 0;max-height:200px;overflow:auto}.extract-list li{margin:4px 0}.extract-list button{display:flex;gap:9px;width:100%;text-align:left;padding:7px 9px}.extract-rank{color:var(--accent-ink);min-width:18px}.extract-list small{display:block;color:var(--muted);font:var(--small)/1.4 var(--sans);margin-top:2px}.reader-body>h3:first-child{margin-top:0}.idea-swatch{background:rgba(229,166,45,.34);border-color:#a87516}.passage-highlight.idea{background:rgba(229,166,45,var(--strength));border-color:rgba(159,110,20,.5)}.highlight-kind{font:var(--small)/1.4 var(--sans);font-weight:600}.button-link{display:inline-block;padding:7px 10px;border:1px solid var(--accent);border-radius:7px;font:var(--small)/1.4 var(--sans);background:var(--accent-soft)}.methodology{margin-top:18px}.methodology ol{padding-left:22px}.methodology li{margin:7px 0}#original-references{margin:14px 0}#parent-link{display:block;margin-bottom:7px;font:var(--small)/1.4 var(--sans)}#literature-summary{border-top:1px solid var(--rule);padding-top:2px}.detail-panel .katex-display{max-width:100%}
@media(max-width:900px){.right{margin-top:16px}.reader{max-height:none}.reader-stage{height:380px}.draft-stage{height:240px}}

.graph-node.status-prov{border-color:var(--prov)}

.panel-toggle{position:relative;display:block;width:100%;padding:0 30px 0 0;border:0;background:none;font:inherit;text-align:left}.panel-toggle .chevron{position:absolute;right:8px;top:50%;width:9px;height:9px;margin-top:-8px;border:solid var(--muted);border-width:0 2px 2px 0;transform:rotate(45deg)}.panel-toggle[aria-expanded="false"] .chevron{margin-top:-5px;transform:rotate(-45deg)}.panel-toggle:hover .chevron{border-color:var(--accent)}.panel.collapsed .panel-head{border-bottom:0}.panel.collapsed .toolbar,.panel.collapsed details,.panel.collapsed .reader-body{display:none}

.notation{margin:-8px 0 16px;max-width:120ch}#gap>ul{margin:6px 0 0;padding-left:20px}#gap li{margin:4px 0}#gap>p{margin:6px 0 0}.detail-body ul,.detail-body ol{padding-left:22px}.detail-body li{margin:4px 0}.reader-stage{resize:vertical;cursor:grab}.reader-stage.dragging{cursor:grabbing;user-select:none}.reader-page img{user-select:none;-webkit-user-drag:none}.zoom-hint{font:var(--small)/1.4 var(--sans);color:var(--muted)}#draft-fit,#reader-fit{min-width:4.2em}.gap-box.s-here{border-left-color:var(--here);background:var(--here-bg)}.gap-box.s-prov{border-left-color:var(--prov);background:var(--prov-bg)}

.introduction{margin:0 0 20px}.introduction-body{max-width:1180px;margin:auto;padding:4px 24px 22px}.setting{margin:14px 0}.setting>summary{font-weight:600}.math-list{padding-left:24px}.math-list>li{margin:16px 0}.math-list .katex-display{margin:.6em 0;max-width:100%}.hypotheses button{margin-top:6px}.proposition{border-left:4px solid var(--prov);background:var(--prov-bg);padding:12px 18px;margin:24px 0}.proposition h3{margin-top:0}.proof-draft{padding:0;list-style:none;counter-reset:proof}.proof-step{--role-color:var(--accent);counter-increment:proof;padding:12px 16px;margin:14px 0;border-left:4px solid var(--role-color);border-radius:0 7px 7px 0;background:color-mix(in srgb,var(--role-color) 8%,var(--surface));scroll-margin-top:20px}.proof-step.selected{outline:2px solid var(--accent);outline-offset:3px}.proof-link{background:transparent;border:0;padding:0;text-align:left;font-weight:600;font-size:var(--body)}.proof-link::before{content:counter(proof) ". ";color:var(--muted)}.role-label{display:inline-block;font:var(--small)/1.5 var(--sans);color:var(--role-color);border:1px solid color-mix(in srgb,var(--role-color) 35%,transparent);border-radius:5px;padding:1px 6px;margin-right:7px}.role-purpose{--role-color:#9971c2}.role-assumption{--role-color:var(--def)}.role-method{--role-color:var(--heur)}.role-result{--role-color:var(--here)}.role-conclusion{--role-color:var(--prov)}.graph-node .role{color:var(--role-color,var(--muted))}.arrow-key{display:flex;flex-wrap:wrap;gap:8px 18px;padding:10px 14px;border-bottom:1px solid var(--rule);background:var(--bg);font:var(--small)/1.5 var(--sans)}.arrow-key>span{flex:1 1 180px}.arrow-key strong{display:block;color:var(--accent-ink)}.contribution{margin:14px 0;padding:10px 13px;border-left:3px solid var(--accent);background:var(--accent-soft)}.contribution p{margin:0}.reference-notes{margin-top:20px}.reference-notes li{margin:12px 0}.introduction .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden}.introduction .katex{font-size:1em}.introduction-nav{display:flex;gap:14px;flex-wrap:wrap;font:var(--small)/1.4 var(--sans);margin:12px 0}.proof-step a{overflow-wrap:anywhere}
@media(max-width:560px){.introduction-body{padding:4px 12px 16px}.math-list{padding-left:20px}.proof-step{padding:10px 12px}.proposition{padding:10px 12px}.proof-link{font-size:var(--small)}.arrow-key>span{flex-basis:100%}}

.arrow-key{display:block}.arrow-key summary{display:list-item;font-weight:600}.arrow-label{display:inline-block;margin:3px 0 3px 12px;font-weight:600}.arrow-motivates{color:var(--accent-ink)}.arrow-leads{color:var(--prov)}.arrow-challenges{color:var(--open)}.arrow-key ul{padding-left:22px;margin:9px 0}.arrow-key li{margin:5px 0}.arrow-key strong{display:inline;color:inherit}.edge-motivates{--edge-color:var(--accent-ink)}.edge-leads_to{--edge-color:var(--prov)}.edge-challenges{--edge-color:var(--open)}.edge,.edge.hi{stroke:var(--edge-color,var(--muted));stroke-dasharray:none}.edge{opacity:.65}.edge.hi{opacity:1}.arrow-marker path{fill:var(--edge-color,var(--muted))}.arrow-key .arrow-motivates{color:var(--accent-ink)}.arrow-key .arrow-leads{color:var(--prov)}.arrow-key .arrow-challenges{color:var(--open)}

.definition>summary,.step-argument>summary,.local-argument>summary{color:var(--accent-ink);font-weight:600;padding:7px 0}
.definition>ul,.step-argument>ul{margin-top:8px}
.proof-step .step-argument{margin-top:7px}
.hub{max-width:1100px}.hub>section{margin:26px 0 38px}.proposition-cards{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.hub table{width:100%;border-collapse:collapse}.hub th,.hub td{padding:10px;text-align:left;border-bottom:1px solid var(--rule)}
@media(max-width:800px){.proposition-cards{grid-template-columns:1fr}}

.proposition-cards>article{min-width:0}.hub .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden}
.definitions{list-style:none;padding-left:0;margin:12px 0}.definitions>li{margin:0;border-bottom:1px solid var(--rule)}.definitions>li:first-child{border-top:1px solid var(--rule)}.definitions .definition{margin:0;padding:0 0 6px 20px}.definitions .definition>summary{margin-left:-20px;padding:10px 0}.definitions .definition>p{margin:10px 0}
.hub .katex-display{margin:.9em 0}.proposition-cards .katex-display{margin:1em 0}
.argument-steps{padding-left:22px}.argument-steps>li{margin:12px 0}
.table-scroll{overflow-x:auto;margin:16px 0;position:relative}.compare th,.compare td{vertical-align:top}.compare tbody th{font-weight:600;white-space:nowrap;color:var(--muted);font-family:var(--sans);font-size:var(--small)}.compare thead th{font-family:var(--sans);font-size:var(--small)}
.hyp-ref{font:600 var(--small)/1.25 var(--sans);color:var(--accent-ink);background:var(--accent-soft);border:1px solid var(--accent);border-radius:5px;padding:0 5px;margin:0 1px;cursor:pointer;vertical-align:baseline}.hyp-ref:hover{background:var(--accent-fill)}.hyp-ref[aria-expanded="true"]{background:var(--accent-fill)}.hyp-ref[aria-expanded="true"]::after{content:" ▴"}
.hyp-copy{margin:8px 0 4px;padding:6px 14px;border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 7px 7px 0;font-size:.95em}.hyp-copy .katex-display{margin:.5em 0}

.proof-plan{margin:6px 0 4px}.step-goal{margin:10px 0 0}.proof-step .katex-display{margin:.6em 0}.step-argument>summary{display:list-item}
/* Recall: prose terms and symbols open a copy of their definition, hypothesis chips a copy of the statement. */
.term-ref{font:inherit;color:inherit;background:none;border:0;border-radius:3px;padding:0;margin:0;cursor:pointer;text-decoration:underline dotted color-mix(in srgb,var(--accent) 80%,transparent);text-decoration-thickness:1.5px;text-underline-offset:3px}.term-ref:hover,.term-ref.recall-open{background:var(--accent-soft)}
.katex [data-term],.katex [data-hyp]{cursor:pointer;border-radius:3px;padding-bottom:2px;background:linear-gradient(to right,color-mix(in srgb,var(--accent) 80%,transparent) 50%,transparent 0) left bottom/4px 1.5px repeat-x}.katex [data-term]:hover,.katex [data-hyp]:hover{background-color:var(--accent-soft)}.katex .recall-open{background-color:var(--accent-fill)}
.term-copy .recall-head{margin:.3em 0 .4em;font:600 var(--small)/1.4 var(--sans);color:var(--accent-ink)}.recall-more{margin:.4em 0 .15em;font-size:var(--small)}.recall-source{font-size:var(--small);white-space:nowrap}.recall-item+.recall-item{margin-top:.6em;padding-top:.6em;border-top:1px solid var(--rule)}.hyp-copy .part-focus{background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:4px;padding:2px 6px;margin-left:-6px}.copy-row>td{padding:0 10px 10px;border-top:0}
/* Proof-step pictures and the reasons for step 2 */
.proof-step{display:flow-root}.step-figure{float:right;width:min(400px,44%);margin:6px 0 12px 22px}.step-figure img{display:block;width:100%;height:auto;border:1px solid var(--rule);border-radius:7px;background:#fbfaf7}.step-figure figcaption{margin-top:6px;font:var(--small)/1.45 var(--sans);color:var(--muted)}ul.step-why{margin:.4em 0 .6em;padding-left:22px}ul.step-why li{margin:.35em 0}
@media(max-width:760px){.step-figure{float:none;width:100%;max-width:440px;margin:10px auto 12px}}
.step-figure.wide{float:none;width:min(760px,100%);max-width:none;margin:14px 0 16px}
/* Page navigation (assets/build_nav.py). One row: the index, then a tab per proposition; a tab's chevron opens the
   pages that first appear under that proposition, and an underline marks the current page's tab. */
.site-nav{position:relative;z-index:30;background:var(--surface);box-shadow:inset 0 -1px 0 var(--rule);font:500 var(--small)/20px var(--sans)}
.site-nav+main{padding-top:22px}
.nav-bar{display:flex;align-items:stretch;gap:22px;margin:0;padding:0 24px;list-style:none;white-space:nowrap}
.nav-bar>li{position:relative;display:flex;align-items:stretch}
.nav-bar>li>a{display:block;padding:13px 4px;color:var(--muted);text-decoration:none}
.nav-home{margin-right:8px}.nav-home>a{font-weight:650;color:var(--ink)}.nav-tab>a .nav-key{font-weight:650}
.nav-bar>.nav-current{box-shadow:inset 0 -2px 0 var(--accent-ink)}
.nav-bar>.nav-current>a,.nav-bar>.nav-current summary,.nav-bar>li>a:hover,.nav-bar summary:hover,.nav-bar details[open]>summary{color:var(--ink)}
.nav-bar summary{display:flex;align-items:center;gap:8px;min-height:46px;padding:0 6px;list-style:none;color:var(--muted);font:inherit}
.nav-bar summary::-webkit-details-marker{display:none}
.nav-bar summary::after{content:"";width:6px;height:6px;margin-top:-4px;border:solid currentColor;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
.nav-bar details[open]>summary::after{margin-top:4px;transform:rotate(-135deg)}
.nav-crumb::before{content:"›";margin-right:8px;color:var(--muted)}
.nav-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.site-nav :focus-visible{outline-offset:-3px;border-radius:7px}.site-nav sub{font-size:.72em;line-height:0}
.nav-menu{position:absolute;top:calc(100% + 5px);left:-14px;z-index:40;min-width:15rem;margin:0;padding:6px;list-style:none;background:var(--surface);border:1px solid var(--rule);border-radius:10px;box-shadow:0 18px 40px -18px rgba(29,29,31,.32),0 2px 6px rgba(29,29,31,.06)}
.nav-menu a{display:flex;align-items:baseline;gap:12px;padding:8px 10px;border-radius:7px;color:var(--ink);text-decoration:none}
.nav-menu a:hover{background:color-mix(in srgb,var(--rule) 50%,var(--surface))}
.nav-menu a[aria-current="page"]{background:var(--accent-soft);color:var(--accent-ink)}
.nav-menu .nav-key{min-width:3.2em;color:var(--muted)}.nav-menu a[aria-current="page"] .nav-key{color:inherit}
.nav-caption{padding:6px 10px 4px;font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
@media(max-width:1120px){.on-subpage .nav-tab:not(.nav-current) .nav-long{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
@media(max-width:900px){.nav-bar{padding:0 12px;gap:16px}.nav-tab:not(.nav-current) .nav-long{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
@media(max-width:640px){.on-subpage .nav-current .nav-long,.nav-home .nav-long{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
@media(max-width:560px){.nav-bar{overflow-x:auto;scrollbar-width:none;padding:0 8px;gap:12px}.nav-bar::-webkit-scrollbar{display:none}.nav-bar>li{position:static}.nav-menu{left:10px;right:10px;min-width:0}}
@media(max-width:420px){.nav-bar{gap:10px;padding:0 6px}.nav-home{margin-right:0}.nav-bar summary{gap:6px;padding:0 4px}}
/* Hypotheses: each statement is a disclosure, closed by default; its label is the summary. */
.hypotheses{list-style:none;padding-left:0;margin:12px 0}.hypotheses>li{margin:0;border-bottom:1px solid var(--rule)}.hypotheses>li:first-child{border-top:1px solid var(--rule)}
.hypothesis{padding:0 0 10px 20px}.hypothesis>summary{margin-left:-20px;padding:10px 0;font:inherit}.hypothesis>summary strong{font-weight:600}.hypothesis[open]>summary{padding-bottom:4px}
.hyp-discussion{margin:14px 0 2px}
/* Link to the paper-style PDF of a proposition, first item of section G. */
.paper-link{margin:12px 0 6px}.compare.dictionary td{padding:5px 12px 5px 0}
/* Footnotes inside a definition card: marker in the text, note at the card's foot. */
.fn-ref{font:600 .72em/0 var(--sans);vertical-align:super;margin-left:1px}.fn-ref a{text-decoration:none;padding:0 2px}
.footnote{margin:16px 0 6px;padding-top:8px;border-top:1px solid var(--rule);font-size:var(--small);color:var(--muted);scroll-margin-top:20px}.footnote p{margin:6px 0}.footnote ul{padding-left:20px;margin:6px 0}.footnote li{margin:6px 0}.footnote .katex-display{margin:.4em 0}.footnote .fn-back{font-family:var(--sans);text-decoration:none;margin-left:4px}

/* Literature reader key: colour = role, strength = ranking tier (same three labels as the extract list) */
.relevance-key{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:6px 14px;margin:4px 0 10px}
.relevance-key .key-head{font-weight:600;color:var(--muted)}
.relevance-key .key-row{display:flex;flex-wrap:wrap;gap:4px 18px}.relevance-key .key-row:last-child{flex-direction:column}
.relevance-key .key-item{display:inline-flex;align-items:center;gap:6px;color:var(--muted);white-space:nowrap}
.relevance-key .key-item.current{color:var(--ink);font-weight:600}
.swatch.tier-3{background:rgba(51,139,222,.34)}.swatch.tier-2{background:rgba(51,139,222,.21)}.swatch.tier-1{background:rgba(51,139,222,.10)}
.definitions-toggle>summary{font:inherit;font-size:var(--body)}.definitions-toggle>summary>h2{display:inline;margin:0;font-family:Georgia,"Times New Roman",serif;font-size:var(--h2)}
.page-figure{margin:20px auto;max-width:760px;text-align:center}.page-figure img{display:block;width:100%;height:auto;border-radius:8px}.page-figure figcaption{font:var(--small)/1.5 var(--sans);color:var(--muted);margin-top:6px}

/* Cross-link between the two sites (sheaves ↔ functions): pushed to the right, muted. */
.nav-bar{flex-wrap:wrap}
.nav-cross{margin-left:auto}.nav-cross>a{color:var(--muted);font-size:var(--small);padding-top:15px}.nav-cross>a:hover{color:var(--accent-ink)}
@media(max-width:560px){.nav-cross{margin-left:0}}
/* The function page and the summary page: unboxed numbered sections under a rule, as on the Iwahori site. */
.hub.classical>section{margin:28px 0 44px}
.hub.classical>section>h2{padding-bottom:8px;border-bottom:1px solid var(--rule);margin:0 0 14px}
body:has(>main.hub.classical) header{max-width:1100px;margin:0 auto}
table.compare caption{caption-side:top;text-align:left;font:var(--small)/1.45 var(--sans);color:var(--muted);padding:0 0 6px}
.compare .status-yes{color:var(--prov);font-weight:600}.compare .status-no{color:var(--open);font-weight:600}.compare .status-open{color:var(--here);font-weight:600}.compare .status-cond{color:var(--prov);font-weight:600;font-style:italic}
/* Statement boxes with a title row and status tag; hypothesis lists with labels. */
.proposition h3{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin:0 0 8px}
.proposition h3 .tag{margin:0;font-weight:600}
.proposition .katex-display{margin:.7em 0}
.hyps{list-style:none;padding:0;margin:8px 0 0}
.hyps>li{display:grid;grid-template-columns:3.4em minmax(0,1fr);gap:0 8px;margin:8px 0;align-items:baseline}
.hyps>li>.hyp-key{font:600 var(--small)/1.7 var(--sans);color:var(--prov)}
@media(max-width:560px){.hyps>li{grid-template-columns:1fr}}
/* Remarks and literature: a closed disclosure after the last section. */
.hub>.aside{margin:8px 0 44px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.aside>summary{cursor:pointer;list-style:none;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;padding:12px 0;font-size:var(--h3);font-weight:600;color:var(--muted)}
.aside>summary::-webkit-details-marker{display:none}
.aside>summary::before{content:"";flex:none;width:8px;height:8px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-3px) rotate(-45deg);transition:transform .15s}
.aside[open]>summary::before{transform:translateY(-6px) rotate(45deg)}
.aside>summary:hover{color:var(--accent-ink)}
.aside>summary .small{font:var(--small)/1.5 var(--sans);color:var(--muted)}
.aside>.math-list{margin:0 0 18px}.aside>.math-list>li{margin:12px 0}
/* Proposition II sub-pages: second navigation row, setting list, part links (assets/build_trace_pages.py). */
.subtabs{display:flex;flex-wrap:wrap;gap:4px 22px;max-width:1180px;border-bottom:1px solid var(--rule);margin:0 auto 18px;padding:0 24px;list-style:none;font:var(--small)/1.4 var(--sans)}
.subtabs li{margin:0}.subtabs a{display:block;padding:7px 0 8px;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}
.subtabs a:hover{color:var(--ink)}.subtabs a[aria-current]{color:var(--ink);font-weight:600;border-bottom-color:var(--accent-ink)}
.setting-list{padding-left:22px;margin:6px 0 12px}.setting-list>li{margin:6px 0}
.claim-proof{display:inline-block;margin-top:4px;font:var(--small)/1.4 var(--sans);white-space:nowrap}
.proposition>ol>li{margin:10px 0}.proposition ol[type="i"]{padding-left:22px}
table.claim-map{width:100%;border-collapse:collapse;font-size:var(--small)}table.claim-map th,table.claim-map td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--rule);vertical-align:top}
.dict-table td,.dict-table th{padding:8px 10px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}.dict-table{border-collapse:collapse;width:100%;font-size:var(--small)}
.stmt{border-left:4px solid var(--def);background:var(--def-bg);padding:10px 16px;margin:18px 0;border-radius:0 7px 7px 0}.stmt.prop{border-left-color:var(--prov);background:var(--prov-bg)}.stmt-head{margin:0 0 6px;font-weight:600}
@media(max-width:560px){.subtabs{padding:0 12px;gap:2px 16px}}

/* nav-cost: tokens used to make these pages */
.nav-bar>li.nav-cost{margin-left:auto}.nav-cross~li.nav-cost{margin-left:0}
.nav-cost summary{gap:8px;font-variant-numeric:tabular-nums}.nav-cost summary::after{display:none}
.nav-cost .cost-tok{color:var(--ink);font-weight:600}.nav-cost .cost-usd{color:#8a5a1c;font-weight:600}
.nav-cost .cost-menu{left:auto;right:-6px;width:min(25rem,calc(100vw - 20px));padding:12px 14px;white-space:normal;color:var(--ink);font-weight:400}
.cost-menu .cost-head{margin:0 0 6px;font-weight:650}
.cost-menu table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.cost-menu th{font-weight:500;color:var(--muted);text-align:right;padding:2px 0 4px 10px}
.cost-menu td{padding:5px 0 5px 10px;text-align:right;border-top:1px solid var(--rule);vertical-align:top}
.cost-menu td:first-child{text-align:left;padding-left:0}.cost-menu td small{display:block;color:var(--muted)}
.cost-menu tr.cost-sum td{font-weight:650}
.cost-menu p{margin:8px 0 0;line-height:1.45}.cost-menu .cost-note{color:var(--muted);font-size:.92em}
@media(max-width:560px){.nav-bar>li.nav-cost{margin-left:0}.nav-cost .cost-menu{left:10px;right:10px;width:auto}}
/* IId: the embedded attempt tree */
.tree-embed{display:block;width:100%;height:760px;border:1px solid var(--rule);border-radius:10px;background:var(--surface);margin:10px 0}
@media(max-width:640px){.tree-embed{height:560px}}
.compare.spaced th,.compare.spaced td{padding:6px 16px 6px 0;line-height:1.45}.compare.spaced thead th{border-bottom:1px solid var(--rule);text-align:left}.compare.spaced tbody tr+tr th,.compare.spaced tbody tr+tr td{border-top:1px solid var(--rule)}

/* Keep the literature reader simple: hide reference lists, text fallback, highlight list, provenance and methodology. */
#original-references,#reader-text,details:has(>#highlight-descriptions),details.source-metadata,details.methodology{display:none}
