:root{color-scheme:light;--paper:#faf8f2;--ink:#26352e;--muted:#63736b;--line:#dce1d7;--accent:#246948}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.8 system-ui,-apple-system,"Noto Sans SC",sans-serif}a{color:var(--accent);text-underline-offset:4px}a:hover{color:#153e2a}a:focus-visible,input:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid #c98636;outline-offset:4px}.site-header{max-width:1200px;margin:auto;padding:24px 32px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;align-items:center}.brand{text-decoration:none;font-weight:800;font-size:23px;white-space:nowrap}.brand span{font-size:11px;letter-spacing:3px;margin-left:10px}nav{display:flex;gap:18px;flex-wrap:wrap}nav a{text-decoration:none}main{max-width:1120px;margin:48px auto 80px;padding:0 28px;min-height:60vh}h1{font-family:serif;font-size:clamp(32px,5vw,52px);line-height:1.25;margin:14px 0 22px}h2{font-size:23px;line-height:1.45}.eyebrow,.meta{color:var(--muted);font-size:13px}.eyebrow{letter-spacing:1px}.summary{max-width:800px;font-size:20px;color:#526358}.formats{font-size:12px;margin:20px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px}.card{padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px}.card h2{margin:6px 0 14px}.card h2 a{text-decoration:none}.card p{font-size:15px}.tags{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.tags a{font-size:12px;text-decoration:none;background:#eaf0e8;border-radius:4px;padding:2px 8px}.search-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap;background:#edf0e8;padding:20px;border-radius:8px;margin:24px 0 32px}label{display:flex;flex-direction:column;font-size:13px;gap:6px}.search-form label:first-child{flex:1;min-width:180px}input,select,button{font:inherit;font-size:15px;border:1px solid #bdc9bd;border-radius:4px;padding:10px 12px;min-height:44px;max-width:100%}button{background:var(--accent);color:white;cursor:pointer;padding-inline:24px}.type-links{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0 42px}.type-links a{padding:10px 20px;border:1px solid var(--line);text-decoration:none;border-radius:4px}.prose{max-width:800px;margin:36px 0;font-size:18px}.prose pre{overflow:auto;background:#eaf0e8;padding:16px}.prose img{max-width:100%}section{border-top:1px solid var(--line);padding-top:16px;margin-top:32px}section p{margin:4px 0;font-size:14px}.relations{list-style:none;padding:0}.relations li{padding:12px 0}.relations small{display:block;font-size:12px;overflow-wrap:anywhere}.relation-label{color:var(--muted);margin-right:12px}.langs{display:flex;gap:10px;font-size:13px;text-transform:uppercase}.langs a[aria-current="true"]{font-weight:700;text-decoration:none;color:var(--ink)}.fallback-note{background:#fff6e8;border:1px solid #e8c48a;padding:10px 14px;border-radius:6px}footer{border-top:1px solid var(--line);text-align:center;font-size:12px;color:var(--muted);padding:28px}.skip{position:absolute;left:12px;top:-100px;background:white;padding:8px}.skip:focus{top:8px}.empty{padding:32px 0;color:var(--muted)}@media(max-width:760px){.site-header{align-items:start;flex-direction:column;padding:20px}nav{gap:14px}main{margin-top:32px;padding:0 20px}.search-form{padding:16px}.search-form label{flex:1}.search-form button{width:100%}}
.info-box{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px 20px;margin:20px 0 8px;max-width:800px}.info-box h2{margin:0 0 12px;font-size:18px}.info-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 18px;margin:0}.info-fields div{display:flex;flex-direction:column;gap:2px;padding:6px 0;border-bottom:1px dashed var(--line)}.info-fields dt{font-size:12px;color:var(--muted)}.info-fields dd{margin:0;font-size:15px}

.site-header{flex-wrap:wrap}.langs{flex-basis:100%;gap:6px 14px;text-transform:none}.langs a{white-space:nowrap}.relation-label{margin-right:0;margin-inline-end:12px}.brand span{margin-left:0;margin-inline-start:10px}

nav.toc { margin: 1rem 0; padding: 0.75rem 1rem; border: 1px solid #ddd; border-radius: 6px; }
nav.toc ol { margin: 0.25rem 0 0; padding-left: 1.25rem; }
nav.toc .toc-l3, nav.toc .toc-l4, nav.toc .toc-l5, nav.toc .toc-l6 { margin-left: 0.75rem; }
mark { background: #ffe08a; padding: 0 0.1em; }
sup.footnote a { text-decoration: none; }
.footnotes .fn-back { margin-left: 0.35rem; opacity: 0.7; }
.ask-form { margin-bottom: 1.25rem; }
.info-box { margin: 1rem 0; }
.perspectives { margin-top: 3rem; }
.perspective-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: 1rem; margin-top: 1rem; }
.perspective { scroll-margin-top: 1rem; min-width: 0; overflow-wrap: anywhere; }
.footnote a, .fn-back { scroll-margin-top: 2rem; }
.footnotes li:target, .footnote a:target { background: #f6edc4; }
.name-primary{display:inline-block;margin-inline-start:8px;vertical-align:middle;font-size:12px;font-weight:600;line-height:1.6;background:#eaf0e8;color:var(--accent);border-radius:4px;padding:0 8px}
.pager{display:flex;align-items:center;justify-content:center;gap:20px;margin:32px 0;font-size:15px}.pager a{padding:8px 18px;border:1px solid var(--line);border-radius:4px;text-decoration:none}.pager span{color:var(--muted);font-variant-numeric:tabular-nums}.relations .relation-more{padding-top:4px;font-size:14px}
.session{margin:0;font-size:13px;color:var(--muted)}.session-out{min-height:0;padding:2px 10px;font-size:13px;background:transparent;color:var(--accent);border:1px solid var(--line)}.page-label{font-size:.5em;color:var(--muted);font-weight:400}
