@import url('data:text/css,');
:root{--paper:#f4f0e7;--paper-2:#ebe5d9;--ink:#172420;--muted:#6f766f;--line:rgba(23,36,32,.14);--green:#1f574b;--green-2:#2e7665;--gold:#c38a38;--rust:#a95836;--white:#fffdf8;--serif:"Noto Serif SC","Source Han Serif SC","Songti SC",serif;--sans:Inter,"PingFang SC","Microsoft YaHei",sans-serif;--shadow:0 28px 70px rgba(43,52,43,.13);--radius:28px;--max:1280px;--reader-link:#4f19d8;--reader-link-hover:#2f0799}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{touch-action:manipulation}.symbols{position:absolute;width:0;height:0;overflow:hidden}.icon{width:1.1em;height:1.1em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:relative;z-index:30;border-bottom:1px solid var(--line);background:rgba(244,240,231,.92);backdrop-filter:blur(18px)}.header-inner{height:82px;max-width:var(--max);margin:auto;padding:0 28px;display:grid;grid-template-columns:230px 1fr 250px;align-items:center;gap:24px}.brand{display:inline-flex;align-items:center;gap:12px;width:max-content}.brand-mark{position:relative;width:34px;height:34px;display:block}.brand-mark i{position:absolute;inset:4px 15px 4px 5px;border:1.5px solid var(--ink);border-radius:50% 0 50% 50%;transform:rotate(-26deg);transform-origin:bottom right}.brand-mark i:nth-child(2){inset:7px 5px 7px 15px;transform:rotate(26deg);border-radius:0 50% 50% 50%}.brand-mark i:nth-child(3){inset:10px 11px 10px;border-color:var(--gold);border-radius:50%;transform:none}.brand b{font-family:Georgia,serif;font-size:16px;letter-spacing:.18em;display:block;line-height:1}.brand small{font-size:10px;letter-spacing:.28em;color:var(--muted)}.main-nav{display:flex;align-items:center;justify-content:center;gap:36px;height:100%}.main-nav a{height:100%;display:grid;place-items:center;position:relative;font-size:14px;letter-spacing:.08em}.main-nav a:after{content:"";position:absolute;left:50%;bottom:-1px;width:0;height:2px;background:var(--green);transition:.25s}.main-nav a:hover:after,.main-nav a[aria-current=page]:after{left:0;width:100%}.search-trigger{height:42px;border:1px solid var(--line);border-radius:22px;display:flex;align-items:center;gap:10px;padding:0 12px 0 15px;color:var(--muted);font-size:13px;background:rgba(255,255,255,.35)}.search-trigger kbd{margin-left:auto;background:var(--paper-2);border:1px solid var(--line);border-radius:5px;padding:1px 6px;font-size:11px}.menu-toggle{display:none;border:0;background:none;padding:8px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--green-2);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.eyebrow i{width:24px;height:1px;background:var(--gold)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:700;color:var(--green);padding-bottom:4px;border-bottom:1px solid rgba(31,87,75,.3)}.text-link .icon{transition:transform .2s}.text-link:hover .icon{transform:translateX(4px)}.button-link{display:inline-flex;width:max-content;align-items:center;gap:10px;background:var(--green);color:#fff;padding:13px 20px;border-radius:999px;border:0}.section{max-width:var(--max);margin:auto;padding:100px 28px}.section-heading{max-width:760px;margin-bottom:40px}.section-heading.split{max-width:none;display:flex;justify-content:space-between;align-items:end;gap:32px}.section-heading h2{font:500 clamp(32px,4vw,54px)/1.18 var(--serif);margin:16px 0}.section-heading p{color:var(--muted);font-size:17px;max-width:680px}.hero{position:relative;overflow:hidden;background:#183f37;color:#f5f1e8;min-height:690px}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 28%,rgba(214,175,90,.24),transparent 25%),linear-gradient(110deg,rgba(255,255,255,.02),transparent 60%)}.hero-noise{position:absolute;inset:0;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.hero-inner{position:relative;max-width:var(--max);margin:auto;min-height:590px;padding:72px 28px 48px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:50px}.hero .eyebrow{color:#dcb56a}.hero-copy h1{font:500 clamp(48px,5.8vw,78px)/1.08 var(--serif);letter-spacing:-.035em;margin:20px 0}.hero-copy h1 em{font-style:normal;color:#dcb56a}.hero-copy>p{max-width:610px;color:rgba(255,255,255,.74);font-size:18px}.hero-search{max-width:630px;height:64px;background:#fff;border-radius:6px;margin-top:34px;display:flex;align-items:center;padding-left:20px;color:var(--ink);box-shadow:0 18px 45px rgba(0,0,0,.18)}.hero-search .icon{color:var(--green)}.hero-search input{flex:1;border:0;background:transparent;padding:0 15px;outline:0;min-width:0}.hero-search button{height:100%;padding:0 24px;border:0;background:var(--gold);color:#fff;font-weight:700;border-radius:0 6px 6px 0}.hero-prompts{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px;font-size:12px;color:rgba(255,255,255,.55)}.hero-prompts a{color:rgba(255,255,255,.85);border-bottom:1px solid rgba(255,255,255,.28)}.hero-visual{position:relative;height:470px}.constellation{position:absolute;inset:0}.hero-book{position:absolute;width:260px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(3deg);z-index:2}.node{position:absolute;display:grid;place-items:center;width:68px;height:68px;border:1px solid rgba(255,255,255,.28);border-radius:50%;font-size:12px;background:rgba(20,55,48,.7);backdrop-filter:blur(8px);z-index:3}.n1{left:5%;top:12%}.n2{right:5%;top:14%}.n3{left:1%;bottom:20%}.n4{right:0;bottom:19%}.n5{right:25%;bottom:0}.line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(220,181,106,.7),transparent);transform-origin:left}.l1{width:47%;left:12%;top:19%;transform:rotate(17deg)}.l2{width:45%;left:52%;top:45%;transform:rotate(-35deg)}.l3{width:46%;left:10%;top:72%;transform:rotate(-15deg)}.l4{width:42%;left:54%;top:72%;transform:rotate(26deg)}.hero-foot{position:relative;max-width:var(--max);height:100px;margin:auto;padding:0 28px;border-top:1px solid rgba(255,255,255,.14);display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:24px}.hero-foot span{font-size:11px;color:#dcb56a;letter-spacing:.16em}.hero-foot strong{font:400 18px var(--serif)}.hero-foot a{display:flex;align-items:center;gap:8px;font-size:13px}.cover-art{position:relative;aspect-ratio:3/4;overflow:hidden;background:#ddc077;color:#fff;border-radius:5px;box-shadow:0 18px 40px rgba(41,49,39,.2);isolation:isolate}.cover-art.teal{background:#265c60}.cover-art:before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(255,255,255,.22),transparent 38%),radial-gradient(circle at 50% 44%,transparent 0 16%,rgba(255,255,255,.08) 16.5% 17%,transparent 17.5%);z-index:-1}.cover-art:after{content:"";position:absolute;inset:7px;border:1px solid rgba(255,255,255,.46);border-radius:2px}.cover-orbit{position:absolute;border:1px solid rgba(255,255,255,.45);border-radius:50%}.orbit-a{width:76%;height:35%;left:12%;top:24%;transform:rotate(24deg)}.orbit-b{width:42%;height:68%;left:30%;top:11%;transform:rotate(-18deg)}.orbit-c{width:35%;height:35%;left:33%;top:24%;background:rgba(255,255,255,.08)}.cover-title{position:absolute;inset:auto 10% 11%;z-index:2}.cover-title small{display:block;font-size:9px;letter-spacing:.18em;margin-bottom:8px}.cover-title strong{display:block;font:500 clamp(22px,2.4vw,34px)/1.1 var(--serif)}.cover-title em{font-style:normal;display:block;font:10px Georgia,serif;letter-spacing:.08em;margin-top:6px;opacity:.8}.cover-number{position:absolute;right:10%;top:8%;font:12px Georgia,serif}.featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.work-card{background:rgba(255,255,255,.4);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:grid;grid-template-columns:210px 1fr;gap:30px}.work-card-copy{padding:16px 10px 10px 0}.work-card h3{font:500 34px/1.2 var(--serif);margin:14px 0 0}.work-card .original{font:italic 13px Georgia,serif;color:var(--muted);margin:2px 0 18px}.work-card p{color:var(--muted);font-size:14px}.pills{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.pills span{border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:11px;background:rgba(255,255,255,.35)}.work-card .text-link{margin-top:14px}.pathways{border-top:1px solid var(--line)}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.path-card{position:relative;background:var(--white);padding:34px;border-radius:20px;min-height:310px;border:1px solid rgba(23,36,32,.08)}.path-index{font:italic 18px Georgia,serif;color:var(--gold)}.path-card h3{font:500 27px var(--serif);margin:28px 0 22px}.path-card>a{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line);font-size:14px}.path-card>a .icon{width:14px;transition:.2s}.path-card>a:hover .icon{transform:translateX(3px)}.relation-preview{max-width:none;background:#ded8cb;display:grid;grid-template-columns:minmax(330px,520px) minmax(480px,700px);justify-content:center;gap:70px;align-items:center}.relation-copy h2{font:500 clamp(36px,4vw,58px)/1.14 var(--serif);margin:18px 0}.relation-copy p{color:var(--muted);font-size:17px}.relation-copy .button-link{margin-top:22px}.mini-network{height:440px;position:relative;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.66),transparent 63%)}.avatar{position:absolute;width:100px;height:100px;border-radius:50%;display:grid;place-items:center;background:#f7f3e9;border:1px solid var(--line);box-shadow:0 12px 30px rgba(53,60,51,.11);z-index:2;font:500 14px var(--serif)}.a1{left:40%;top:35%;width:120px;height:120px;background:var(--green);color:#fff}.a2{left:4%;top:8%}.a3{right:2%;top:8%}.a4{right:8%;bottom:2%}.edge{position:absolute;height:1px;background:var(--gold);transform-origin:left;left:48%;top:48%}.e1{width:45%;transform:rotate(-143deg)}.e2{width:42%;transform:rotate(-35deg)}.e3{width:38%;transform:rotate(38deg)}.relation-caption{position:absolute;left:15%;bottom:8%;background:var(--white);padding:8px 14px;border-radius:99px;font-size:11px}.collection-strip{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.collection-strip h2{font:500 46px/1.2 var(--serif)}.collection-list a{display:grid;grid-template-columns:130px 1fr auto 30px;gap:18px;align-items:center;padding:22px 0;border-top:1px solid var(--line)}.collection-list small{font-size:10px;color:var(--green-2);letter-spacing:.1em}.collection-list strong{font:500 20px var(--serif)}.collection-list span{font-size:12px;color:var(--muted)}.site-footer{background:#172420;color:#ece8dd;padding:68px 28px}.footer-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:50px}.site-footer .brand-mark i{border-color:#ece8dd}.site-footer .brand-mark i:nth-child(3){border-color:var(--gold)}.site-footer .brand small{color:#aeb8b1}.footer-grid>div{display:flex;flex-direction:column;gap:10px}.footer-grid p,.footer-grid a,.footer-grid span{font-size:12px;color:#aeb8b1}.footer-grid b{font-size:12px;letter-spacing:.12em;margin-bottom:8px}.footer-note{justify-content:flex-end}.page-hero{max-width:var(--max);margin:auto;padding:90px 28px 65px}.page-hero.compact{min-height:410px;display:flex;align-items:center}.page-hero h1,.search-page-head h1{font:500 clamp(46px,6vw,76px)/1.1 var(--serif);margin:18px 0}.page-hero p{max-width:670px;font-size:18px;color:var(--muted)}.discover-layout{padding-top:20px;display:grid;grid-template-columns:260px 1fr;gap:44px}.filter-panel{position:sticky;top:20px;align-self:start;border-top:2px solid var(--ink)}.filter-panel h2{font:500 21px var(--serif);padding:20px 0;border-bottom:1px solid var(--line)}.catalog-filters{display:grid;gap:13px;padding:2px 0 20px}.catalog-filters label{display:grid;gap:5px;font-size:12px;font-weight:700}.catalog-filters input,.catalog-filters select{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--white);padding:9px 10px;color:var(--ink)}.catalog-filters button{border:0;border-radius:10px;background:var(--green);color:#fff;padding:10px 12px;cursor:pointer}.catalog-filters>a{text-align:center;font-size:12px;color:var(--muted)}.filter-panel details{border-bottom:1px solid var(--line)}.filter-panel summary{cursor:pointer;padding:17px 0;display:flex;align-items:center;justify-content:space-between;list-style:none;font-size:13px;font-weight:700}.filter-panel summary .icon{width:14px}.check-list{display:grid;gap:9px;padding:0 0 17px;font-size:12px;color:var(--muted)}.check-list input{accent-color:var(--green)}.discover-results{display:grid;gap:20px}.results-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:5px}.results-head span,.results-head strong{display:block}.results-head span{font-size:11px;color:var(--muted)}.results-head select{border:1px solid var(--line);background:transparent;padding:8px 12px}.discover-results .work-card{grid-template-columns:190px 1fr}.search-page-head{background:#e4ded2;padding:80px 28px}.search-page-head>div{max-width:900px;margin:auto;text-align:center}.search-bar-large{height:68px;background:var(--white);border-radius:8px;display:flex;align-items:center;padding-left:20px;margin-top:30px;box-shadow:var(--shadow)}.search-bar-large input{flex:1;border:0;outline:0;padding:0 16px;background:transparent;font-size:18px}.search-bar-large button{height:100%;border:0;background:var(--green);color:white;padding:0 28px;border-radius:0 8px 8px 0}.search-results{max-width:920px}.search-meta{display:flex;gap:12px;align-items:baseline;margin-bottom:35px}.search-meta span{font:500 30px var(--serif)}.search-meta strong{color:var(--muted);font-size:13px}.result-group{margin:38px 0}.result-group header{display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:10px}.result-group header h2{font:500 22px var(--serif);margin:0}.result-group header span{background:var(--ink);color:#fff;border-radius:99px;padding:1px 7px;font-size:10px}.result-row{display:grid;grid-template-columns:62px 1fr 30px;gap:18px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.result-row b{font:500 20px var(--serif)}.result-row small{display:block;color:var(--muted);font-size:11px}.result-row p{margin:5px 0 0;color:var(--muted);font-size:13px}.result-monogram,.portrait-dot{width:56px;height:56px;border-radius:10px;display:grid;place-items:center;color:#fff;background:#c39b4c;font:500 20px var(--serif)}.result-monogram.teal{background:#2e6968}.portrait-dot{border-radius:50%;background:var(--accent)}.work-hero{position:relative;background:#e8dfcc;padding:72px 28px 0;overflow:hidden}.work-hero.teal{background:#d6e0db}.work-hero-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:370px 1fr;gap:80px;align-items:center}.work-art-wrap{position:relative;width:320px}.work-art-wrap .source-stamp{position:absolute;right:-42px;bottom:32px;background:var(--white);padding:8px 13px;font-size:10px;transform:rotate(-3deg);box-shadow:0 6px 18px rgba(0,0,0,.1)}.work-intro{padding-bottom:66px}.work-intro h1{font:500 clamp(58px,7vw,94px)/1.02 var(--serif);margin:18px 0 2px}.original-title{font:italic 15px Georgia,serif;color:var(--muted);letter-spacing:.04em}.work-promise{font:500 26px/1.5 var(--serif);max-width:740px;margin:30px 0 16px}.work-summary{max-width:710px;color:var(--muted)}.work-intro dl{display:flex;gap:50px;margin-top:28px}.work-intro dl div{border-left:1px solid var(--line);padding-left:15px}.work-intro dt{font-size:10px;color:var(--muted)}.work-intro dd{margin:3px 0;font:500 14px var(--serif)}.work-tabs{max-width:var(--max);margin:auto;display:flex;gap:36px;border-top:1px solid var(--line)}.work-tabs a{padding:19px 0;position:relative;font-size:13px}.work-tabs a[aria-current=page]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background:var(--green)}.work-body{display:grid;grid-template-columns:1fr 300px;gap:80px}.work-main{display:grid;gap:82px}.lead-reading{max-width:760px}.lead-reading h2{font:500 42px/1.3 var(--serif);margin:14px 0}.lead-reading>p{font-size:17px;color:var(--muted)}blockquote{margin:35px 0 0;padding:30px;border-left:3px solid var(--gold);background:#ece5d9;font:500 23px/1.6 var(--serif)}.spoiler-badge{border:1px solid var(--line);border-radius:99px;padding:7px 12px;font-size:11px}.character-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.character-card{border:1px solid var(--line);background:rgba(255,255,255,.35);border-radius:18px;padding:24px;position:relative}.portrait{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 72%,#fff);color:#fff;margin-bottom:20px}.portrait i{font:500 24px var(--serif);font-style:normal}.character-card small{font-size:10px;color:var(--green-2)}.character-card h3{font:500 25px var(--serif);margin:4px 0}.character-card p{font-size:12px;color:var(--muted);min-height:60px}.character-card .open{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;margin-top:14px}.path-line{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin:30px 0}.path-line div{position:relative;padding:32px 18px 20px 0}.path-line div:before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:var(--gold)}.path-line span{display:block;color:var(--gold);font:italic 13px Georgia,serif}.path-line b{display:block;font:500 16px var(--serif);margin-top:10px}.path-line small{font-size:10px;color:var(--muted)}.work-aside{display:grid;gap:18px;align-self:start}.fact-card,.source-card,.next-card{border:1px solid var(--line);padding:24px;background:rgba(255,255,255,.35)}.fact-card>span{font-size:10px;color:var(--muted);letter-spacing:.12em}.fact-card div{display:inline-flex;width:48%;flex-direction:column;margin-top:20px}.fact-card strong{font:500 30px var(--serif)}.fact-card small{font-size:10px;color:var(--muted)}.source-card h3{font:500 18px var(--serif)}.source-card p,.source-card span{font-size:11px;color:var(--muted)}.next-card{background:var(--green);color:#fff}.next-card small,.next-card b{display:block}.next-card b{font:500 19px/1.5 var(--serif);margin:12px 0 20px}.next-card a{font-size:11px;display:flex;align-items:center;gap:8px}.character-hero{max-width:1100px;margin:auto;padding:95px 28px 70px;display:grid;grid-template-columns:320px 1fr;gap:70px;align-items:center}.character-sigil{position:relative;width:260px;height:260px;border-radius:50%;background:color-mix(in srgb,var(--accent) 20%,transparent);display:grid;place-items:center}.character-sigil span{width:140px;height:140px;background:var(--accent);color:white;border-radius:50%;display:grid;place-items:center;font:500 62px var(--serif);z-index:2}.character-sigil i{position:absolute;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:50%;inset:20px}.character-sigil i:last-child{inset:-12px 70px;transform:rotate(50deg)}.character-hero h1{font:500 clamp(56px,7vw,90px)/1 var(--serif);margin:18px 0 0}.character-lead{font:500 22px/1.65 var(--serif);max-width:680px}.character-actions{display:flex;gap:24px;align-items:center;margin-top:30px}.character-body{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 300px;gap:70px}.character-body h2{font:500 40px var(--serif)}.arc-list{display:grid;gap:0}.arc-list article{display:grid;grid-template-columns:90px 1fr 1.2fr;gap:25px;padding:26px 0;border-top:1px solid var(--line);align-items:start}.arc-list span{font:italic 13px Georgia,serif;color:var(--gold)}.arc-list h3{font:500 20px var(--serif);margin:0}.arc-list p{margin:0;color:var(--muted);font-size:13px}.evidence-panel{background:#e8e1d5;padding:25px}.evidence-panel h3{font:500 20px var(--serif)}.evidence-panel dl div{padding:13px 0;border-top:1px solid var(--line)}.evidence-panel dt{font-size:10px;color:var(--muted)}.evidence-panel dd{margin:2px 0;font-size:12px}.relationship-head,.timeline-head{display:flex;justify-content:space-between;align-items:end;max-width:var(--max)}.spoiler-control{display:flex;padding:4px;background:#e5dfd4;border-radius:99px}.spoiler-control :is(a,button){border:0;background:transparent;min-height:44px;padding:9px 14px;border-radius:99px;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.spoiler-control :is(a,button).active{background:var(--green);color:white}.network-stage{max-width:var(--max);margin:0 auto 80px;padding:0 28px;display:grid;grid-template-columns:1fr 330px;gap:20px}.network-canvas{position:relative;height:580px;background:#e2dcd1;border-radius:26px;overflow:hidden}.network-canvas:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(23,36,32,.12) 1px,transparent 1px);background-size:22px 22px}.network-person{position:absolute;text-align:center;z-index:2}.network-person span{width:90px;height:90px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:white;border:6px solid #eee8de;box-shadow:0 15px 30px rgba(33,44,37,.16);font:500 28px var(--serif)}.network-person b,.network-person small{display:block}.network-person b{font:500 14px var(--serif);margin-top:7px}.network-person small{font-size:9px;color:var(--muted)}.np1{left:42%;top:38%}.np2{left:10%;top:12%}.np3{right:9%;top:10%}.np4{right:13%;bottom:8%}.net-line{position:absolute;height:2px;background:var(--gold);left:48%;top:46%;transform-origin:left}.nl1{width:39%;transform:rotate(-145deg)}.nl2{width:36%;transform:rotate(-38deg)}.nl3{width:33%;transform:rotate(42deg)}.edge-label{position:absolute;background:var(--white);padding:5px 9px;border-radius:99px;font-size:9px;z-index:3}.el1{left:24%;top:29%}.el2{right:27%;top:28%}.el3{right:26%;bottom:26%}.relation-detail{background:var(--green);color:#fff;border-radius:26px;padding:34px;align-self:stretch}.relation-detail small{color:#c5d6d0}.relation-detail h2{font:500 30px/1.2 var(--serif)}.relation-kind{display:inline-block;background:rgba(255,255,255,.12);padding:5px 9px;border-radius:99px;font-size:10px}.relation-detail p{color:#c5d6d0;font-size:13px;margin:24px 0}.relation-detail dl div{padding:13px 0;border-top:1px solid rgba(255,255,255,.15)}.relation-detail dt{font-size:9px;color:#9db8ae}.relation-detail dd{margin:1px 0;font-size:12px}.relation-table{padding-top:20px}.relation-row{display:grid;grid-template-columns:140px 1fr 140px;gap:18px 24px;align-items:center;padding:26px 0;border-top:1px solid var(--line)}.relation-row>b{font:500 15px var(--serif)}.relation-row>span{height:30px;position:relative;display:flex;align-items:center}.relation-row>span:before{content:"";position:absolute;width:100%;height:1px;background:var(--line)}.relation-row>span i{height:2px;background:var(--gold);position:relative}.relation-row>span em{position:absolute;left:50%;transform:translateX(-50%);background:var(--paper);padding:0 8px;font-style:normal;font-size:9px}.relation-reading{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start}.relation-reading p{margin:0;max-width:820px;color:var(--muted);font-size:14px}.relation-reading small{font-size:11px;color:var(--green-2);white-space:nowrap}.timeline-layout{padding-top:10px;display:grid;grid-template-columns:1fr 280px;gap:70px}.timeline-rail{position:relative}.timeline-rail:before{content:"";position:absolute;left:34px;top:10px;bottom:10px;width:1px;background:var(--line)}.timeline-item{display:grid;grid-template-columns:70px 1fr;gap:28px;padding-bottom:55px}.time-marker{position:relative;z-index:2}.time-marker span{width:68px;height:68px;border-radius:50%;background:var(--paper);border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold);font:italic 15px Georgia,serif}.timeline-item small{color:var(--green-2);font-size:10px}.timeline-item h2{font:500 27px var(--serif);margin:6px 0}.timeline-item p{color:var(--muted);max-width:650px}.event-links{display:flex;gap:9px;align-items:center;margin-top:13px}.event-links span{font-size:9px;color:var(--muted)}.event-links a{font-size:10px;border:1px solid var(--line);padding:3px 7px;border-radius:99px}.timeline-aside{position:sticky;top:30px;align-self:start;background:#e7e0d4;padding:26px}.timeline-aside div+div{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.timeline-aside span,.timeline-aside b,.timeline-aside small{display:block}.timeline-aside span{font-size:9px;color:var(--muted)}.timeline-aside b{font:500 20px var(--serif)}.timeline-aside small,.timeline-aside p{font-size:11px;color:var(--muted)}.world-hero{background:#d9c48e;min-height:600px;padding:90px max(28px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center;overflow:hidden}.world-hero.teal{background:#cbded8}.world-hero h1{font:500 clamp(64px,9vw,118px)/1 var(--serif);margin:18px 0}.world-hero p{max-width:580px;font-size:18px;color:rgba(23,36,32,.7)}.map-art{height:430px;position:relative;border:1px solid rgba(23,36,32,.2);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.36),transparent 62%)}.map-art:before,.map-art:after{content:"";position:absolute;inset:12%;border:1px dashed rgba(23,36,32,.2);border-radius:48% 52% 45% 55%;transform:rotate(18deg)}.map-art:after{inset:25%;transform:rotate(-30deg)}.map-center,.map-node{position:absolute;z-index:2;background:var(--green);color:#fff;border-radius:50%;display:grid;place-items:center;text-align:center}.map-center{width:112px;height:112px;left:41%;top:38%;font:500 18px var(--serif)}.map-node{width:76px;height:76px;font-size:10px;background:var(--white);color:var(--ink);border:1px solid var(--line)}.mn1{left:8%;top:15%}.mn2{right:9%;top:8%}.mn3{left:13%;bottom:7%}.mn4{right:10%;bottom:10%}.places{padding-top:80px}.place-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.place-grid article{display:grid;grid-template-columns:48px 1fr 24px;gap:18px;padding:26px 0;border-top:1px solid var(--line)}.place-grid article>span{font:italic 13px Georgia,serif;color:var(--gold)}.place-grid h3{font:500 22px var(--serif);margin:0}.place-grid p{font-size:12px;color:var(--muted)}.collection-hero{background:var(--green);color:#fff;min-height:540px;padding:90px max(28px,calc((100vw - 1100px)/2));display:grid;grid-template-columns:260px 1fr;gap:60px;align-items:center}.collection-number{font:italic 160px/1 Georgia,serif;color:rgba(255,255,255,.08);border-right:1px solid rgba(255,255,255,.14)}.collection-hero .eyebrow{color:#dcb56a}.collection-hero h1{font:500 clamp(52px,7vw,88px)/1.08 var(--serif);margin:18px 0}.collection-hero p{color:#bdd0c9;max-width:680px;font-size:17px}.collection-hero>div>span:last-child{font-size:11px;color:#dcb56a}.essay{max-width:1100px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:70px}.essay>aside{border-top:2px solid var(--ink);padding-top:20px}.essay>aside span,.essay>aside b{display:block}.essay>aside span{font-size:10px;color:var(--muted)}.essay>aside b{font:500 21px/1.5 var(--serif);margin-top:12px}.essay>article>p{font:400 18px/1.9 var(--serif);color:#3f4943}.dropcap:first-letter{float:left;font:500 80px/.72 var(--serif);padding:12px 10px 0 0;color:var(--green)}.essay h2{font:500 34px var(--serif);margin-top:70px}.essay-works{display:grid;gap:18px}.essay-works .work-card{grid-template-columns:160px 1fr}.empty-page{min-height:650px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 28px}.empty-page h1{font:500 54px var(--serif);margin:18px}.empty-page p{color:var(--muted);margin-bottom:28px}
@media(max-width:1000px){.header-inner{grid-template-columns:190px 1fr auto}.search-trigger span,.search-trigger kbd{display:none}.search-trigger{width:42px;justify-content:center;padding:0}.main-nav{gap:20px}.hero-inner{grid-template-columns:1fr}.hero-visual{display:none}.featured-grid{grid-template-columns:1fr}.relation-preview{grid-template-columns:1fr;padding-left:28px;padding-right:28px}.collection-strip{grid-template-columns:1fr}.work-hero-inner{grid-template-columns:280px 1fr;gap:45px}.work-art-wrap{width:260px}.work-body{grid-template-columns:1fr}.work-aside{grid-template-columns:repeat(3,1fr)}.character-hero{grid-template-columns:240px 1fr}.network-stage{grid-template-columns:1fr}.relation-detail{min-height:auto}.world-hero{grid-template-columns:1fr}.map-art{max-width:680px;width:100%;margin:auto}}
@media(max-width:720px){body{font-size:15px}.site-header{position:sticky;top:0}.header-inner{height:68px;grid-template-columns:1fr auto}.brand-mark{width:30px;height:30px}.main-nav{display:none;position:absolute;left:0;right:0;top:68px;height:auto;background:var(--paper);padding:15px 24px 25px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.main-nav a{height:auto;padding:13px 0;display:block;border-bottom:1px solid var(--line)}.menu-toggle{display:block}.search-trigger{display:none}.section{padding:68px 18px}.section-heading.split{display:block}.hero{min-height:650px}.hero-inner{padding:55px 18px;min-height:570px}.hero-copy h1{font-size:47px}.hero-copy>p{font-size:15px}.hero-search{height:auto;display:grid;grid-template-columns:36px 1fr;margin-top:26px;padding:10px 10px 10px 14px}.hero-search button{grid-column:1/-1;border-radius:5px;height:46px;margin-top:8px}.hero-foot{height:auto;padding:22px 18px;grid-template-columns:1fr auto}.hero-foot>span{display:none}.hero-foot strong{font-size:14px}.featured-grid{gap:16px}.work-card,.discover-results .work-card{grid-template-columns:112px 1fr;gap:16px;padding:12px;border-radius:18px}.work-card-copy{padding:4px 3px 3px 0}.work-card .eyebrow{display:none}.work-card h3{font-size:23px;margin-top:4px}.work-card .original{font-size:10px;margin-bottom:8px}.work-card p{font-size:11px;line-height:1.55}.work-card .pills{display:none}.work-card .text-link{font-size:11px;margin-top:6px}.path-grid{grid-template-columns:1fr}.relation-preview{padding:68px 18px;gap:30px}.mini-network{height:340px}.avatar{width:76px;height:76px;font-size:11px}.a1{width:90px;height:90px}.collection-list a{grid-template-columns:90px 1fr 25px}.collection-list span{display:none}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child,.footer-note{grid-column:1/-1}.page-hero{padding:68px 18px 45px}.page-hero h1,.search-page-head h1{font-size:46px}.discover-layout{grid-template-columns:1fr;padding-top:0}.filter-panel{position:static}.filter-panel details:not(:first-of-type){display:none}.results-head{font-size:12px}.search-page-head{padding:55px 18px}.search-bar-large{height:58px}.search-bar-large button{padding:0 18px}.search-results{padding-top:55px}.result-row{grid-template-columns:48px 1fr 18px}.result-monogram,.portrait-dot{width:44px;height:44px}.work-hero{padding:46px 18px 0}.work-hero-inner{grid-template-columns:112px 1fr;gap:18px;align-items:start}.work-art-wrap{width:112px}.work-art-wrap .source-stamp{display:none}.work-intro{padding-bottom:30px}.work-intro h1{font-size:43px}.work-intro .eyebrow{font-size:9px}.work-promise{font-size:17px;margin:14px 0 8px}.work-summary{font-size:12px}.work-intro .pills,.work-intro dl{display:none}.work-tabs{overflow:auto;gap:24px;padding:0 18px;white-space:nowrap}.work-body{gap:45px}.work-main{gap:56px}.lead-reading h2{font-size:30px}.character-grid{grid-template-columns:1fr}.path-line{grid-template-columns:1fr 1fr}.work-aside{grid-template-columns:1fr}.character-hero{grid-template-columns:100px minmax(0,1fr);gap:22px;padding:62px 18px}.character-hero>div{min-width:0}.character-sigil{width:96px;height:96px}.character-sigil span{width:62px;height:62px;font-size:30px}.character-hero h1{font-size:44px}.character-lead{font-size:14px}.character-actions{display:block}.character-actions .text-link{margin-top:18px}.character-body{grid-template-columns:1fr}.arc-list article{grid-template-columns:48px 1fr}.arc-list article p{grid-column:2}.relationship-head,.timeline-head{display:block}.spoiler-control{width:100%;max-width:100%;margin-top:25px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:18px}.network-stage{padding:0 18px}.network-canvas{height:420px}.network-person span{width:64px;height:64px;font-size:20px}.network-person b{font-size:11px}.edge-label{display:none}.relation-row{grid-template-columns:75px 1fr 75px}.relation-reading{display:block}.relation-reading p{font-size:13px}.relation-reading small{display:block;margin-top:8px;white-space:normal}.timeline-layout{grid-template-columns:1fr}.timeline-aside{display:none}.timeline-item{grid-template-columns:52px 1fr;gap:18px}.time-marker span{width:50px;height:50px}.timeline-rail:before{left:25px}.timeline-item h2{font-size:21px}.world-hero{padding:65px 18px}.world-hero h1{font-size:66px}.map-art{height:340px}.map-center{left:35%;top:36%;width:96px;height:96px}.map-node{width:62px;height:62px}.place-grid{grid-template-columns:1fr}.collection-hero{padding:65px 18px;grid-template-columns:1fr;min-height:520px}.collection-number{display:none}.collection-hero h1{font-size:51px}.essay{grid-template-columns:1fr}.essay>aside{position:static}.essay-works .work-card{grid-template-columns:105px 1fr}}
.catalog-shelf{padding-top:38px}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.catalog-card{display:grid;grid-template-columns:128px 1fr;gap:18px;padding:15px;background:rgba(255,253,248,.72);border:1px solid var(--line);border-radius:20px;min-height:225px;transition:transform .25s,box-shadow .25s}.catalog-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(43,52,43,.1)}.catalog-cover{position:relative;min-height:194px;border-radius:11px;overflow:hidden;padding:17px 13px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(145deg,#365b55,#15382f);box-shadow:0 13px 28px rgba(25,40,34,.18)}.catalog-cover:before,.catalog-cover:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.28);border-radius:50%;width:95px;height:95px;left:-28px;top:14px}.catalog-cover:after{width:58px;height:58px;left:34px;top:42px}.catalog-cover.coral{background:linear-gradient(145deg,#be6f55,#672f2f)}.catalog-cover.teal{background:linear-gradient(145deg,#2f786d,#173e3a)}.catalog-cover.ink{background:linear-gradient(145deg,#53606c,#17202a)}.catalog-cover.gold{background:linear-gradient(145deg,#c08b3f,#6b4720)}.catalog-cover.green{background:linear-gradient(145deg,#6f8f61,#294b37)}.catalog-cover.rust{background:linear-gradient(145deg,#a85a40,#4e2d2b)}.catalog-cover span,.catalog-cover strong,.catalog-cover small{position:relative;z-index:1}.catalog-cover span{position:absolute;right:10px;top:9px;font:10px var(--sans);letter-spacing:.08em}.catalog-cover strong{font:700 19px/1.25 var(--serif);margin-bottom:4px}.catalog-cover small{font:8px/1.3 Georgia,serif;opacity:.72}.catalog-card .eyebrow{font-size:9px;margin-top:4px}.catalog-card h3{font:700 22px var(--serif);margin:5px 0 8px}.catalog-card>div>p{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 10px}.catalog-card .pills{gap:5px}.catalog-card .pills span{font-size:9px;padding:4px 7px}.catalog-author{display:block;margin-top:12px;color:var(--green);font-size:10px}.discover-catalog{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}.catalog-work-hero{max-width:var(--max);margin:auto;padding:90px 28px 72px;display:grid;grid-template-columns:330px 1fr;gap:78px;align-items:center}.catalog-cover-large{width:310px;min-height:430px;padding:36px 28px;border-radius:18px}.catalog-cover-large:before{width:260px;height:260px;left:-80px;top:35px}.catalog-cover-large:after{width:150px;height:150px;left:85px;top:105px}.catalog-cover-large strong{font-size:38px}.catalog-cover-large small{font-size:12px}.catalog-work-hero h1{font:700 clamp(48px,6vw,82px)/1.08 var(--serif);margin:12px 0}.catalog-work-hero dl{display:flex;gap:42px;border-top:1px solid var(--line);padding-top:22px;margin-top:30px}.catalog-work-hero dl div{display:grid;gap:4px}.catalog-work-hero dt{font-size:10px;color:var(--muted);letter-spacing:.12em}.catalog-work-hero dd{margin:0;font-family:var(--serif)}.catalog-work-body{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:70px}.catalog-work-body h2{font:700 38px var(--serif);margin:16px 0}.catalog-intro{font:21px/1.9 var(--serif);max-width:760px}.question-card{margin-top:35px;padding:28px;border-left:3px solid var(--gold);background:var(--white);display:grid;gap:10px}.question-card small{color:var(--muted)}.question-card strong{font:600 22px/1.55 var(--serif)}.catalog-work-body aside{display:grid;gap:18px}.catalog-related{padding-top:35px}
@media(max-width:1100px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-work-hero{grid-template-columns:260px 1fr;gap:45px}.catalog-cover-large{width:245px;min-height:350px}.catalog-work-body{grid-template-columns:1fr}}
@media(max-width:720px){.catalog-grid,.discover-catalog{grid-template-columns:1fr}.catalog-card{grid-template-columns:104px 1fr;min-height:190px;padding:11px;gap:14px}.catalog-cover{min-height:168px;padding:12px 10px}.catalog-cover strong{font-size:16px}.catalog-card h3{font-size:19px}.catalog-card>div>p{font-size:11px}.catalog-card .pills span:nth-child(n+3){display:none}.catalog-work-hero{padding:45px 18px 55px;grid-template-columns:118px 1fr;gap:22px;align-items:start}.catalog-cover-large{width:118px;min-height:190px;padding:16px 12px}.catalog-cover-large strong{font-size:17px}.catalog-cover-large small{font-size:7px}.catalog-work-hero h1{font-size:38px}.catalog-work-hero .work-promise{font-size:14px}.catalog-work-hero dl{grid-column:1/-1;gap:20px;flex-wrap:wrap}.catalog-work-body{gap:35px}.catalog-work-body h2{font-size:30px}.catalog-intro{font-size:17px}.question-card strong{font-size:18px}}
.catalog-world-hero{background:linear-gradient(135deg,#173b35,#285b4f)}.catalog-world-hero h1{color:var(--paper)}.catalog-world-hero p,.catalog-world-hero .eyebrow{color:#e8ede8}.world-summary{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:4px 12px;align-items:end;margin:28px 0;color:rgba(255,255,255,.78)}.world-summary strong{font-family:var(--serif);font-size:36px;line-height:1;color:#fff}.world-summary span{font-size:13px}.catalog-place-grid article{align-items:start}.catalog-place-grid article>div{min-width:0}.catalog-place-grid small,.world-rule-grid small{display:block;color:var(--green-2);font-size:12px;letter-spacing:.04em;margin-bottom:5px}.world-rules{padding-top:10px}.world-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.world-rule-grid article{display:grid;grid-template-columns:46px 1fr;gap:16px;padding:24px;background:rgba(255,253,248,.72);border:1px solid var(--line);border-radius:18px}.world-rule-grid article>span{font-family:var(--serif);font-size:24px;color:var(--gold)}.world-rule-grid h3{margin:0 0 7px;font-family:var(--serif);font-size:21px}.world-rule-grid p{margin:0 0 12px;color:var(--muted)}@media(max-width:720px){.world-rule-grid{grid-template-columns:1fr}.world-summary{grid-template-columns:auto 1fr}.catalog-world-hero .map-art{display:none}}
.character-profile{padding-top:18px}.character-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.character-profile-grid article{padding:24px;border:1px solid var(--line);border-radius:18px;background:rgba(255,253,248,.8)}.character-profile-grid article>span,.relationship-evolution>span{display:block;margin-bottom:6px;color:var(--green-2);font-size:12px;letter-spacing:.08em}.character-profile-grid h3{margin:0 0 8px;font:700 21px var(--serif)}.character-profile-grid p{margin:0;color:var(--muted);line-height:1.75}.character-traits{margin-top:18px}.relationship-evolution{margin:12px 0;padding:13px 16px;border-left:2px solid var(--gold);background:rgba(196,149,79,.08)}.relationship-evolution p{margin:0!important;color:var(--ink)!important;font-size:14px!important;line-height:1.65!important}@media(max-width:720px){.character-profile-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}


/* Governed full-text reader */
.reader-hero{max-width:1240px;margin:0 auto;padding:clamp(72px,9vw,132px) 28px 58px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.7fr);gap:clamp(36px,6vw,84px);align-items:start}.reader-hero h1{font-family:var(--serif);font-size:clamp(48px,6vw,88px);line-height:.98;margin:22px 0 12px;letter-spacing:-.045em}.reader-hero>div>p{font-size:18px;line-height:1.75;max-width:680px}.reader-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:32px}.reader-rights{border:1px solid var(--line);background:rgba(255,255,255,.58);padding:28px;box-shadow:0 18px 45px rgba(32,39,46,.06)}.reader-rights>span{font-size:12px;letter-spacing:.16em;color:var(--muted)}.reader-rights h2{font-family:var(--serif);font-size:27px;line-height:1.2;margin:10px 0 22px}.reader-rights dl{display:grid;gap:12px;margin:0}.reader-rights dl div{display:grid;grid-template-columns:90px 1fr;gap:10px;padding-bottom:11px;border-bottom:1px solid var(--line)}.reader-rights dt{color:var(--muted);font-size:12px}.reader-rights dd{margin:0;font-size:13px;overflow-wrap:anywhere}.reader-rights p{font-size:13px;line-height:1.65;color:var(--muted);margin:20px 0}.reader-rights a{font-size:13px;font-weight:700}.reader-contents{padding-top:32px}.reader-contents>.section-heading>span{border:1px solid var(--line);padding:7px 12px;border-radius:999px;font-size:12px}.reader-contents ol{list-style:none;margin:38px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.reader-contents li{background:var(--paper)}.reader-contents li a{min-height:74px;padding:15px 18px;display:grid;grid-template-columns:46px 1fr 22px;align-items:center;gap:12px}.reader-contents li a:hover{background:var(--paper-strong)}.reader-contents li span{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px}.reader-contents li strong{font-family:var(--serif);font-size:18px;font-weight:600}.reader-entry{margin-top:14px;border-color:rgba(47,141,137,.35);background:rgba(47,141,137,.06)}
.chapter-shell{max-width:1180px;margin:0 auto;padding:72px 28px 92px}.chapter-head{max-width:780px;margin:0 auto 56px;text-align:center}.chapter-head>a{font-size:12px;letter-spacing:.08em;color:var(--muted)}.chapter-head>span{display:block;margin:28px 0 10px;color:var(--muted);font-size:12px;letter-spacing:.14em}.chapter-head h1{font-family:var(--serif);font-size:clamp(42px,5vw,70px);line-height:1.05;margin:0}.chapter-head p{font-size:13px;color:var(--muted);margin-top:14px}.chapter-prose{max-width:760px;margin:0 auto;font-family:var(--serif);font-size:clamp(18px,1.5vw,21px);line-height:1.9;color:#2d2a26}.chapter-prose h2{text-align:center;font-size:30px;line-height:1.25;margin:38px 0 30px;font-weight:600}.chapter-prose p{margin:0 0 1.38em}.chapter-prose p:first-of-type::first-letter{float:left;font-size:4.15em;line-height:.8;padding:.12em .1em 0 0;color:var(--accent)}.chapter-nav{max-width:900px;margin:68px auto 0;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.chapter-nav>a:not(.chapter-index){display:flex;flex-direction:column;gap:5px}.chapter-nav>a:last-child{text-align:right}.chapter-nav span{font-size:11px;color:var(--muted);letter-spacing:.12em}.chapter-nav strong{font-size:14px}.chapter-index{font-size:13px;padding:9px 14px;border:1px solid var(--line);border-radius:999px}.chapter-proof{max-width:760px;margin:26px auto 0;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;font-size:11px;color:var(--muted)}.chapter-proof b{color:var(--ink)}.chapter-proof a{text-decoration:underline}.page-reader-chapter .site-footer{margin-top:0}
.reader-actions a,.reader-contents a,.chapter-head>a,.chapter-nav a,.chapter-proof a{color:var(--reader-link)}.reader-actions a:hover,.reader-contents a:hover,.chapter-head>a:hover,.chapter-nav a:hover,.chapter-proof a:hover{color:var(--reader-link-hover)}.reader-actions a:focus-visible,.reader-contents a:focus-visible,.chapter-head>a:focus-visible,.chapter-nav a:focus-visible,.chapter-proof a:focus-visible{outline:3px solid var(--reader-link);outline-offset:4px;border-radius:4px}
@media(max-width:760px){.reader-hero{grid-template-columns:1fr;padding-top:58px}.reader-hero h1{font-size:48px}.reader-contents ol{grid-template-columns:1fr}.reader-contents li a{min-height:68px}.chapter-shell{padding:52px 20px 72px}.chapter-head{margin-bottom:42px}.chapter-head h1{font-size:43px}.chapter-prose{font-size:18px;line-height:1.85}.chapter-nav{grid-template-columns:1fr 1fr}.chapter-nav .chapter-index{grid-column:1/-1;grid-row:2;text-align:center}.chapter-proof{grid-template-columns:1fr;gap:7px}.reader-rights{padding:22px}}

/* LoreArk editorial surface */
/* ==========================================================================
   LoreArk LA-PUB-12 editorial skin
   Approved visual: deep ink-green, warm paper, restrained copper, illustrated
   covers and editorial typesetting. Targets PC 1920 / PC 1440 / WAP 390.

   Every rule is scoped to `body.editorial-site` so the skin can ship next to
   the current stylesheet without leaking into it. The page body is rendered
   into the shell's <main id="main-content">, which acts as the page container.

   Regions
     01 tokens and base
     02 layout primitives
     03 masthead and navigation
     04 buttons, links and pills
     05 covers and artwork credit
     06 cards: books, people, topics, worlds, entities
     07 home
     08 index and listing surfaces
     09 work surfaces: hero, bar, article, sidebar
     10 relationships, timeline, world
     11 pagination, forms and dialogs
     12 footer
     13 responsive: >=1700, <=1300, <=980, <=700
     14 motion preferences
   ========================================================================== */

/* --------------------------------------------------------------------------
   01 tokens and base
   -------------------------------------------------------------------------- */
body.editorial-site:not(.page-reader):not(.page-reader-chapter) .section { max-width: none; }
body.editorial-site .work-main { display: block; gap: normal; }
body.editorial-site .work-hero { background: transparent; overflow: visible; }
body.editorial-site .cover strong { text-wrap: balance; }
body.editorial-site {
  --paper: #f5f3ed;
  --paper-raised: #fcfbf6;
  --paper-sunken: #eeeee4;
  --ink: #253c3b;
  --ink-soft: #536862;
  --ink-faint: #97a18f;
  --green-deep: #123f38;
  --green: #1d5a50;
  --green-line: #b7c8a9;
  --copper: #ae884e;
  --copper-soft: #826437;
  --rule: #dce2d4;
  --rule-soft: #e4e7dc;
  --serif: Editorial, 'Songti SC', SimSun, serif;
  --sans: 'Microsoft YaHei', 'PingFang SC', 'Noto Sans CJK SC', sans-serif;

  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 16px/1.7 var(--sans);
}
body.editorial-site * { box-sizing: border-box; }
body.editorial-site a { color: inherit; text-decoration: none; }
body.editorial-site button { border: 0; background: none; color: inherit; cursor: pointer; }
body.editorial-site button:disabled { cursor: default; }
body.editorial-site button,
body.editorial-site input,
body.editorial-site select { font: inherit; }
body.editorial-site a,
body.editorial-site button,
body.editorial-site input { touch-action: manipulation; }
body.editorial-site a:focus-visible,
body.editorial-site button:focus-visible,
body.editorial-site input:focus-visible,
body.editorial-site select:focus-visible { outline: 3px solid #bd883f; outline-offset: 4px; }
body.editorial-site img { max-width: 100%; display: block; }
body.editorial-site svg { vertical-align: middle; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
body.editorial-site h1,
body.editorial-site h2,
body.editorial-site h3,
body.editorial-site p { margin: 0; }
body.editorial-site h1,
body.editorial-site h2 { font-family: var(--serif); font-weight: 600; }
body.editorial-site h1 { font-size: 44px; line-height: 1.35; letter-spacing: .015em; }
body.editorial-site h2 { font-size: 29px; line-height: 1.5; }
body.editorial-site h3 { font-size: 19px; line-height: 1.5; font-weight: 600; }
body.editorial-site p { color: var(--ink-soft); }
body.editorial-site small { font-size: 13px; }
body.editorial-site dl { margin: 0; }
body.editorial-site [hidden] { display: none !important; }

body.editorial-site .sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
body.editorial-site .skip {
  position: fixed; left: 12px; top: -70px; z-index: 100;
  background: #fff; padding: 12px; border-radius: 4px;
}
body.editorial-site .skip:focus { top: 10px; }

/* --------------------------------------------------------------------------
   02 layout primitives
   -------------------------------------------------------------------------- */
body.editorial-site .container,
body.editorial-site #main-content {
  max-width: 1440px;
  width: calc(100% - 100px);
  margin: 0 auto;
}
/* In-page targets (for example the work page character section) clear the sticky masthead. */
body.editorial-site #main-content [id] { scroll-margin-top: 104px; }
body.editorial-site .section { padding: 34px 0; }
body.editorial-site .section-rule { border-top: 1px solid #d8dfd4; }
body.editorial-site .section-title {
  display: flex; align-items: end; justify-content: space-between;
  gap: 24px; margin-bottom: 22px;
}
body.editorial-site .section-title p { font-size: 14px; margin-top: 5px; }
body.editorial-site .section-title .eyebrow { margin-bottom: 4px; }
body.editorial-site .eyebrow {
  display: flex; align-items: center; gap: 8px;
  letter-spacing: 2px; font-size: 12px; font-weight: 600;
  color: var(--copper-soft); margin-bottom: 12px;
}
body.editorial-site .eyebrow::before { content: ''; width: 18px; height: 1px; background: currentColor; }
body.editorial-site .breadcrumbs { padding: 20px 0; color: #606f67; font-size: 12px; }
body.editorial-site .breadcrumbs a:hover { color: var(--green); }
body.editorial-site .dot { padding: 0 10px; color: #a7ad9e; }
body.editorial-site .empty {
  padding: 45px 20px; text-align: center; color: var(--ink-faint);
  border: 1px dashed var(--rule); border-radius: 5px; background: var(--paper-raised);
}
body.editorial-site .empty h2 { font-size: 21px; color: var(--ink); }
body.editorial-site .empty p { font-size: 13px; margin-top: 8px; }
body.editorial-site .results-head {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 16px; padding: 0 0 16px; color: var(--ink-soft);
}
body.editorial-site .results-head strong { font-size: 15px; }
body.editorial-site .results-head small { color: var(--ink-faint); }

/* --------------------------------------------------------------------------
   03 masthead and navigation
   No-JS: the five navigation links stay visible and the header search is a
   real GET form. The drawer toggle and dialog trigger are only revealed by
   editorial-client.js, which also sets data-editorial-nav="enhanced".
   -------------------------------------------------------------------------- */
body.editorial-site .masthead {
  height: 88px; background: #fcfbf7; border-bottom: 1px solid #dfe2d9;
  position: sticky; top: 0; z-index: 20;
}
body.editorial-site .header-inner { height: 100%; display: flex; align-items: center; gap: 45px; }
body.editorial-site .brand { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
body.editorial-site .brand-mark {
  background: #164d46; color: #ecd8ad; width: 45px; height: 49px;
  display: grid; place-items: center; border-radius: 3px 3px 14px 3px;
}
body.editorial-site .brand strong {
  font: 600 23px var(--serif); letter-spacing: 3px; display: block; line-height: 1.35;
}
body.editorial-site .brand small { font-size: 10px; letter-spacing: 3px; color: #75847d; display: block; }
body.editorial-site .global-nav {
  display: flex; align-items: center; gap: 30px; height: 100%; margin-left: 25px;
}
body.editorial-site .global-nav a {
  font-size: 15px; font-weight: 600; white-space: nowrap; color: #606f67;
  height: 100%; display: flex; align-items: center; position: relative;
}
body.editorial-site .global-nav a:hover { color: #12574b; }
body.editorial-site .global-nav a.active { color: #17584f; }
body.editorial-site .global-nav a.active::after {
  content: ''; position: absolute; bottom: 0; left: 1px; right: 1px; height: 3px; background: var(--copper);
}
body.editorial-site .header-search {
  margin-left: auto; display: flex; align-items: center; gap: 10px;
  padding: 6px 8px 6px 14px; background: #f0f1e9; border: 1px solid #e0e4d9;
  border-radius: 5px; color: #606f67; font-size: 13px;
}
body.editorial-site .header-search input {
  border: 0; background: transparent; min-width: 0; width: 170px;
  font-size: 13px; color: var(--ink);
}
body.editorial-site .header-search-submit {
  font-size: 12px; font-weight: 600; color: var(--green);
  padding: 6px 10px; border-radius: 4px; background: #e4e9dd;
}
body.editorial-site .header-search kbd {
  font-size: 11px; color: #a0a799; border: 1px solid #d9ddcf; border-radius: 3px; padding: 0 4px;
}
body.editorial-site .search-trigger,
body.editorial-site .menu-toggle {
  display: none; min-width: 44px; min-height: 44px; place-items: center; padding: 8px;
}

/* --------------------------------------------------------------------------
   04 buttons, links and pills
   -------------------------------------------------------------------------- */
body.editorial-site .button {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  border: 1px solid #d4dcd0; border-radius: 4px; padding: 10px 19px;
  font-weight: 600; font-size: 14px; min-height: 44px;
  transition: background .18s, transform .18s;
}
body.editorial-site .button:hover { transform: translateY(-1px); }
body.editorial-site .button.primary { color: #fcfbf4; background: var(--green); border-color: var(--green); }
body.editorial-site .button.primary:hover { background: #174e44; }
body.editorial-site .button.outline { background: transparent; color: #235a50; }
body.editorial-site .button.warm { background: #eee1c7; color: #264b43; border-color: #eee1c7; }
body.editorial-site .text-link {
  display: inline-flex; gap: 10px; align-items: center;
  color: #256356; font-size: 14px; font-weight: 600;
}
body.editorial-site .text-link:hover { text-decoration: underline; }
body.editorial-site .pills { display: flex; flex-wrap: wrap; gap: 7px; }
body.editorial-site .pill {
  display: inline-flex; align-items: center; font-size: 12px; line-height: 1.5;
  color: var(--ink-soft); padding: 4px 9px; background: #eef1e6; border-radius: 3px;
}
body.editorial-site .arrow-circle {
  border: 1px solid #d5e2c56b; width: 32px; height: 32px; border-radius: 50%;
  display: grid; place-items: center; flex-shrink: 0;
}
body.editorial-site .icon-button {
  width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%;
}
body.editorial-site .icon-button:hover { background: #e9eee5; }

/* --------------------------------------------------------------------------
   05 covers and artwork credit
   Works without reviewed artwork keep a typeset cover: no placeholder shapes,
   and no work is hidden because its illustration is missing.
   -------------------------------------------------------------------------- */
body.editorial-site .cover {
  aspect-ratio: 2 / 3; position: relative; overflow: hidden; isolation: isolate;
  background: #39544c; color: #fff; border-radius: 2px 5px 5px 2px;
  box-shadow: 3px 7px 16px #13392c21;
}
body.editorial-site .cover::before {
  content: ''; position: absolute; inset: 0; z-index: 1;
  background:
    linear-gradient(90deg, #0006, transparent 5%, #fff1 7%, transparent 9%),
    linear-gradient(0deg, #082c28ed 0, transparent 66%);
}
body.editorial-site .cover::after {
  content: ''; position: absolute; inset: 12px; z-index: 2;
  border: 1px solid #f8e8b72e; pointer-events: none;
}
body.editorial-site .cover img {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; transition: transform .35s;
}
body.editorial-site .cover-typeset {
  background:
    radial-gradient(120% 80% at 20% 0%, #1c5348 0%, #123f38 55%, #0d322d 100%);
}
body.editorial-site .cover-typeset::before {
  background: linear-gradient(90deg, #0006, transparent 6%, #fff1 8%, transparent 10%);
}
body.editorial-site .cover .cover-type {
  position: absolute; left: 20px; top: 17px; z-index: 2;
  font-size: 9px; letter-spacing: 4px; color: #f1e7cf;
  background: #1b34295c; padding: 3px 6px;
  max-width: calc(100% - 40px); overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
}
body.editorial-site .cover-copy { position: absolute; left: 22px; right: 16px; bottom: 24px; z-index: 2; }
body.editorial-site .cover strong {
  display: block; font-family: var(--serif); font-weight: 600;
  font-size: 25px; line-height: 1.45; letter-spacing: 3px;
  color: #fff9ed; text-shadow: 0 1px 4px #0004;
}
body.editorial-site .cover em {
  display: block; margin-top: 9px; font-size: 10px; font-style: normal;
  letter-spacing: 1px; color: #e4dfd0; line-height: 1.4;
}
body.editorial-site .cover .cover-author {
  display: block; margin-top: 10px; font-size: 10px; letter-spacing: 1px; color: #cfd8c9;
}
body.editorial-site .cover-credit { font-size: 12px; line-height: 1.9; color: var(--ink-faint); }
body.editorial-site .cover-credit a { color: #256356; font-weight: 600; }

/* --------------------------------------------------------------------------
   06 cards
   -------------------------------------------------------------------------- */
body.editorial-site .book-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 27px; }
body.editorial-site .book-card .book-cover { display: block; }
body.editorial-site .book-card:hover .cover img { transform: scale(1.035); }
body.editorial-site .book-card .book-copy { padding: 14px 0 0; }
body.editorial-site .book-card h3 { font-size: 17px; }
body.editorial-site .book-card .book-copy > small { display: block; color: #606f67; font-size: 12px; margin-top: 4px; }
body.editorial-site .book-card p {
  font-size: 13px; line-height: 1.8; margin: 9px 0 10px;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
}
body.editorial-site .book-card .pills .pill { font-size: 10px; padding: 3px 6px; }

body.editorial-site .library-grid { grid-template-columns: repeat(3, 1fr); gap: 25px; }
body.editorial-site .library-grid .book-card,
body.editorial-site .book-row {
  display: grid; grid-template-columns: 130px 1fr; gap: 22px; padding: 22px;
  background: var(--paper-raised); border: 1px solid #e1e3d8; border-radius: 5px;
}
body.editorial-site .library-grid .cover strong { font-size: 18px; }
body.editorial-site .library-grid .cover-copy { left: 14px; right: 10px; bottom: 17px; }
body.editorial-site .library-grid .cover-type { left: 14px; top: 13px; font-size: 7px; letter-spacing: 2px; }
body.editorial-site .library-grid .book-copy { padding-top: 4px; }
body.editorial-site .library-grid .book-card h3 { font-size: 18px; }
body.editorial-site .library-grid .book-card p { font-size: 12px; -webkit-line-clamp: 3; }

body.editorial-site .people-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
body.editorial-site .people-grid-wide { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.editorial-site .person {
  background: #fffdf7; border: 1px solid #e1e7d9; padding: 20px; border-radius: 4px;
}
body.editorial-site .person-top { display: flex; align-items: center; gap: 12px; }
body.editorial-site .avatar {
  width: 45px; height: 50px; border-radius: 20px 20px 5px 5px; background: #e6d9bf;
  display: grid; place-items: center; color: #697b63;
  font: 23px var(--serif); flex-shrink: 0;
}
body.editorial-site .avatar-large { width: 84px; height: 94px; font-size: 40px; border-radius: 32px 32px 8px 8px; }
body.editorial-site .person h3 { font-size: 15px; }
body.editorial-site .person small { display: block; font-size: 11px; color: #9a9d89; }
body.editorial-site .person p {
  font-size: 12px; margin-top: 13px; color: #819078;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;
}
body.editorial-site .person .text-link { font-size: 11px; margin-top: 12px; }
body.editorial-site .person-compact { padding: 15px; margin-top: 12px; }
body.editorial-site .person-compact p { -webkit-line-clamp: 2; }

body.editorial-site .topic-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
body.editorial-site .topic-card {
  position: relative; overflow: hidden; isolation: isolate; border-radius: 5px;
  min-height: 225px; display: flex; align-items: end; padding: 25px; color: #fff;
  background: linear-gradient(135deg, #17493f, #123f38);
}
body.editorial-site .topic-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
body.editorial-site .topic-card::before {
  content: ''; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(0deg, #143c35f0, #213d2840);
}
body.editorial-site .topic-card small { color: #d7d5b8; font-size: 11px; letter-spacing: 2px; }
body.editorial-site .topic-card h3 { font: 600 25px var(--serif); margin: 4px 0; }
body.editorial-site .topic-card p { font-size: 12px; color: #d9e2d1; }
body.editorial-site .topic-card .arrow-circle { margin-left: auto; }

body.editorial-site .world-card {
  background: var(--paper-raised); border: 1px solid #dfe4d5; border-radius: 5px; overflow: hidden;
}
body.editorial-site .world-card img,
body.editorial-site .world-card-plate { height: 160px; width: 100%; object-fit: cover; object-position: center 43%; }
body.editorial-site .world-card-plate { background: linear-gradient(135deg, #1c5348, #0d322d); }
body.editorial-site .world-card > div { padding: 24px; }
body.editorial-site .world-card h3 { font-size: 19px; }
body.editorial-site .world-card p { font-size: 13px; margin: 12px 0; }

body.editorial-site .entity-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
body.editorial-site .entity-card {
  display: block; background: #fffdf7; border: 1px solid #e1e7d9;
  border-radius: 4px; padding: 20px;
}
body.editorial-site .entity-card small { display: block; margin: 12px 0 4px; font-size: 11px; color: #9a9d89; letter-spacing: 1px; }
body.editorial-site .entity-card h3 { font-size: 16px; }
body.editorial-site .entity-card p {
  font-size: 12px; margin-top: 10px; color: #819078;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;
}
body.editorial-site .entity-open {
  display: inline-flex; align-items: center; gap: 6px;
  margin-top: 14px; font-size: 11px; font-weight: 600; color: #256356;
}

/* --------------------------------------------------------------------------
   07 home
   -------------------------------------------------------------------------- */
body.editorial-site .edition-line {
  display: flex; justify-content: space-between; gap: 20px; padding: 16px 0;
  font-size: 11px; letter-spacing: 1px; color: #606f67;
}
body.editorial-site .hero-layout { display: grid; grid-template-columns: 1.95fr 1fr; gap: 22px; }
body.editorial-site .hero-feature {
  position: relative; overflow: hidden; isolation: isolate; min-height: 354px;
  background: var(--green-deep); color: #f7f1df; border-radius: 6px; padding: 37px 42px;
}
body.editorial-site .hero-feature::after {
  content: ''; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(90deg, #103c37 0%, #103c37ee 42%, #103c3733 100%);
}
body.editorial-site .hero-landscape {
  position: absolute; inset: 0 0 0 auto; width: 72%; height: 100%; z-index: -2;
  object-fit: cover; object-position: center 45%; opacity: .42;
}
body.editorial-site .hero-feature .eyebrow { color: #d3b47c; }
body.editorial-site .hero-feature h1 { font-size: 39px; line-height: 1.5; max-width: 470px; letter-spacing: 2px; }
body.editorial-site .hero-feature p { font-size: 13px; color: #bad0c0; max-width: 325px; margin-top: 13px; line-height: 1.9; }
body.editorial-site .hero-actions { display: flex; gap: 14px; margin-top: 24px; }
body.editorial-site .hero-actions .text-link { color: #e4d9bd; font-size: 13px; }
body.editorial-site .hero-books { position: absolute; right: 44px; top: 33px; width: 225px; height: 290px; pointer-events: none; }
body.editorial-site .hero-books .cover {
  position: absolute; width: 165px; right: 0; top: 0;
  transform: rotate(7deg); box-shadow: 0 17px 34px #07211f77;
}
body.editorial-site .hero-books .cover.back { width: 138px; right: 121px; top: 59px; transform: rotate(-10deg); opacity: .92; }
body.editorial-site .hero-books .cover strong { font-size: 23px; }
body.editorial-site .hero-books .cover-copy { left: 18px; bottom: 18px; }
body.editorial-site .hero-caption {
  position: absolute; right: 51px; bottom: 21px; white-space: nowrap;
  font-size: 10px; letter-spacing: 2px; color: #c8d6c0;
}
body.editorial-site .start-card {
  background: var(--paper-sunken); border: 1px solid #dedfcf; border-radius: 6px; padding: 26px 27px;
}
body.editorial-site .start-card h2 { font-size: 25px; margin-bottom: 15px; }
body.editorial-site .start-link {
  display: flex; gap: 13px; align-items: center; padding: 15px 0; border-bottom: 1px solid #d9dece;
}
body.editorial-site .start-link:last-of-type { border: 0; padding-bottom: 4px; }
body.editorial-site .start-number { color: #b1b99f; font: italic 23px Georgia, serif; width: 27px; }
body.editorial-site .start-link strong { display: block; font-size: 14px; font-weight: 600; }
body.editorial-site .start-link p { font-size: 12px; margin-top: 3px; color: #929989; }
body.editorial-site .start-link > svg { margin-left: auto; color: #7c9278; }
body.editorial-site .entry-paths {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px;
  border-bottom: 1px solid var(--rule); margin-top: 20px; padding: 0 0 17px;
}
body.editorial-site .entry-paths a { display: flex; gap: 12px; align-items: center; padding: 4px 7px; }
body.editorial-site .entry-paths svg { color: #7d987d; }
body.editorial-site .entry-paths b { display: block; font-size: 13px; }
body.editorial-site .entry-paths small { font-size: 11px; color: var(--ink-faint); }
body.editorial-site .character-band {
  display: grid; grid-template-columns: 1.1fr 2fr; gap: 50px; align-items: center;
  background: #e9eee3; border: 1px solid #dbe2d0; border-radius: 5px; padding: 30px;
}
body.editorial-site .character-band h2 { font-size: 27px; }
body.editorial-site .character-band > div > p { font-size: 13px; margin: 10px 0 16px; }

/* --------------------------------------------------------------------------
   08 index and listing surfaces
   -------------------------------------------------------------------------- */
body.editorial-site .page-title {
  padding: 38px 0 26px; display: flex; justify-content: space-between; gap: 30px; align-items: end;
}
body.editorial-site .page-title h1 { font-size: 37px; }
body.editorial-site .page-title p { margin-top: 10px; font-size: 14px; max-width: 620px; }
body.editorial-site .discover-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 40px; }
body.editorial-site .filter-panel {
  background: var(--paper-raised); border: 1px solid #e1e3d8; border-radius: 5px;
  padding: 24px; align-self: start;
}
body.editorial-site .filter-panel summary { font-size: 16px; font-weight: 600; cursor: pointer; }
body.editorial-site .filter-panel details[open] summary { margin-bottom: 20px; }
body.editorial-site .genre-navigation { margin: 0 0 30px; padding: 24px 28px; background: #f4f4ec; border: 1px solid #dfe3d5; border-radius: 10px; }
body.editorial-site .genre-navigation h2 { font-size: 18px; line-height: 1.5; margin: 0 0 16px; }
body.editorial-site .genre-navigation h2 small { margin-left: 16px; font: 13px/1.5 sans-serif; color: #727c70; }
body.editorial-site .genre-links { display: flex; flex-wrap: wrap; gap: 10px; }
body.editorial-site .genre-links a { display: inline-flex; gap: 8px; align-items: center; padding: 10px 15px; border: 1px solid #d7dece; border-radius: 6px; color: #31453b; background: white; font-size: 14px; text-decoration: none; }
body.editorial-site .genre-links a[aria-current="true"] { background: #173e30; color: white; border-color: #173e30; }
body.editorial-site .genre-links small { font-size: 12px; opacity: .75; }
body.editorial-site .genre-links a:focus-visible { outline: 3px solid #ac842f; outline-offset: 3px; }
@media (max-width: 600px) {
  body.editorial-site .genre-navigation { padding: 18px 16px; margin-bottom: 0; }
  body.editorial-site .genre-navigation h2 small { display: block; margin: 7px 0 0; }
  body.editorial-site .genre-links { gap: 8px; }
  body.editorial-site .genre-links a { padding: 9px 12px; }
  body.editorial-site .discover-layout { gap: 22px; }
  body.editorial-site .filter-panel { padding: 18px; }
}
body.editorial-site .catalog-filters { display: grid; gap: 14px; }
body.editorial-site .catalog-filters label { display: grid; gap: 6px; font-size: 12px; color: var(--ink-faint); }
body.editorial-site .catalog-filters input,
body.editorial-site .catalog-filters select {
  border: 1px solid #ccd6c7; border-radius: 4px; padding: 9px 11px;
  background: #fff; font-size: 13px; color: var(--ink);
}
body.editorial-site .filter-actions { display: flex; gap: 10px; align-items: center; margin-top: 4px; }
body.editorial-site .index-search,
body.editorial-site .search-bar-large {
  display: flex; align-items: center; gap: 10px;
  background: var(--paper-raised); border: 1px solid #dce2d2; border-radius: 5px; padding: 8px 8px 8px 14px;
}
body.editorial-site .search-bar-large { margin-bottom: 20px; }
body.editorial-site .index-search input,
body.editorial-site .search-bar-large input {
  flex: 1; min-width: 0; border: 0; background: transparent; font-size: 14px; color: var(--ink);
}
body.editorial-site .search-bar-large select {
  border: 1px solid #dce2d2; border-radius: 4px; padding: 8px 10px; background: #fff; font-size: 13px;
}
body.editorial-site .search-meta {
  display: flex; align-items: baseline; gap: 14px; padding: 6px 0 4px; color: var(--ink-soft);
}
body.editorial-site .search-meta strong { font-size: 16px; }

/* --------------------------------------------------------------------------
   09 work surfaces
   -------------------------------------------------------------------------- */
body.editorial-site .work-hero {
  display: grid; grid-template-columns: 205px 1fr 260px; gap: 36px;
  align-items: center; padding: 17px 0 35px;
}
body.editorial-site .work-hero .cover strong { font-size: 29px; }
body.editorial-site .work-main h1 { font-size: 45px; margin: 3px 0 7px; }
body.editorial-site .work-original { font: italic 17px Georgia, serif; color: #9d9a86; }
body.editorial-site .work-author { font-size: 12px; color: #606f67; margin-bottom: 18px; }
body.editorial-site .work-summary { font-size: 15px; line-height: 1.9; max-width: 600px; margin: 18px 0 15px; }
body.editorial-site .work-actions { display: flex; gap: 12px; margin-top: 22px; flex-wrap: wrap; }
body.editorial-site .reading-note {
  align-self: stretch; margin: 8px 0 0; background: #e9eee1; border: 1px solid #dbe2d0;
  padding: 22px; border-radius: 5px; display: flex; flex-direction: column; justify-content: center;
}
body.editorial-site .reading-note svg { color: #76926e; margin-bottom: 10px; }
body.editorial-site .reading-note h3 { font-size: 15px; }
body.editorial-site .reading-note p { font-size: 12px; margin: 8px 0 18px; color: #85927b; }
body.editorial-site .reading-note .note-line { border-top: 1px solid #d3ddc8; padding-top: 13px; font-size: 11px; color: #8e997e; }

body.editorial-site .work-bar {
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); background: #f7f7ef;
}
body.editorial-site .work-tabs { display: flex; gap: 27px; align-items: center; }
body.editorial-site .work-tabs a { padding: 18px 1px; position: relative; font-size: 14px; color: #606f67; }
body.editorial-site .work-tabs a.active { color: #215f4f; font-weight: 600; }
body.editorial-site .work-tabs a.active::after {
  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px; background: #8aab81;
}
body.editorial-site .spoiler-options {
  display: flex; align-items: center; gap: 4px; background: #e8edde; padding: 4px; border-radius: 4px;
}
body.editorial-site .spoiler-options a { font-size: 11px; padding: 5px 9px; color: #606f67; border-radius: 3px; }
body.editorial-site .spoiler-options a.active { background: #fbfcf5; color: #386c50; box-shadow: 0 1px 4px #39562b0e; }

body.editorial-site .work-content { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 50px; padding: 32px 0; }
body.editorial-site .article-card {
  background: #fffdf8; border: 1px solid #e2e5d8; border-radius: 5px; padding: 32px 37px;
}
body.editorial-site .article-card h2 { font-size: 28px; margin-bottom: 18px; }
body.editorial-site .article-card > p { font-size: 15px; line-height: 2.15; margin: 16px 0; color: #647361; }
body.editorial-site .article-card .guide-title { font-size: 20px; margin-top: 28px; }
body.editorial-site .article-card .guide-subtitle { font-size: 16px; margin: 24px 0 10px; }
body.editorial-site .article-card .dropcap::first-letter { float: left; font: 600 46px/1 var(--serif); padding: 4px 10px 0 0; color: var(--green); }
body.editorial-site .article-note { font-size: 12px; color: var(--ink-faint); margin-top: 20px; }
body.editorial-site .tag-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
body.editorial-site .tag-row span { font-size: 11px; color: var(--copper-soft); border: 1px solid #e7dcc4; border-radius: 3px; padding: 3px 8px; }

body.editorial-site .side-block { border-top: 2px solid var(--green-line); padding: 22px 0; margin-bottom: 18px; }
body.editorial-site .side-block h3 { font-size: 15px; margin-bottom: 13px; }
body.editorial-site .side-block > p { font-size: 12px; color: #98a18d; }
body.editorial-site .side-block dl { font-size: 12px; }
body.editorial-site .side-block dl div {
  display: flex; justify-content: space-between; gap: 10px;
  border-bottom: 1px solid #e0e5d8; padding: 9px 0;
}
body.editorial-site .side-block dt { color: #9ca48f; }
body.editorial-site .side-block dd { margin: 0; text-align: right; }
body.editorial-site .side-block .text-link { margin-top: 16px; font-size: 12px; }
body.editorial-site .side-note { font-size: 12px; color: var(--ink-faint); margin-top: 10px; }
body.editorial-site .evidence-span { font-size: 13px; color: var(--copper-soft); font-weight: 600; }

body.editorial-site .story-path { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; counter-reset: story; }
body.editorial-site .story-path li {
  counter-increment: story; display: flex; align-items: baseline; gap: 14px;
  padding: 14px 18px; background: var(--paper-raised); border: 1px solid var(--rule-soft); border-radius: 4px;
}
body.editorial-site .story-path li::before {
  content: counter(story, decimal-leading-zero); color: #b1b99f; font: italic 18px Georgia, serif;
}
body.editorial-site .story-path b { font-size: 15px; }
body.editorial-site .story-path small { margin-left: auto; color: var(--ink-faint); }

body.editorial-site .character-hero { display: flex; gap: 30px; align-items: center; padding: 10px 0 30px; }
body.editorial-site .character-profile-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-bottom: 16px; }
body.editorial-site .character-profile-grid article {
  background: var(--paper-raised); border: 1px solid var(--rule-soft); border-radius: 5px; padding: 22px;
}
body.editorial-site .character-profile-grid span { font-size: 11px; letter-spacing: 2px; color: var(--copper-soft); }
body.editorial-site .character-profile-grid h3 { font-size: 17px; margin: 6px 0 10px; }
body.editorial-site .character-profile-grid p { font-size: 13px; line-height: 1.95; }

/* --------------------------------------------------------------------------
   10 relationships, timeline, world
   -------------------------------------------------------------------------- */
body.editorial-site .relation-row { padding: 18px 0; border-top: 1px solid #e3e8d9; }
body.editorial-site .relationship {
  display: grid; grid-template-columns: 1fr 120px 1fr; align-items: center; gap: 12px; margin: 4px 0 18px;
}
body.editorial-site .relationship .person-top {
  justify-content: center; padding: 18px; background: #edf2e5;
  border: 1px solid #d9e3ca; border-radius: 4px;
}
body.editorial-site .relation-wire { text-align: center; color: #91a184; font-size: 11px; position: relative; }
body.editorial-site .relation-wire::after { content: ''; display: block; height: 1px; background: #b7caa8; margin-top: 8px; }
body.editorial-site .relation-row p { font-size: 14px; line-height: 2; }
body.editorial-site .relationship-evolution {
  margin-top: 12px; border-left: 3px solid var(--copper); background: #f1eee2; padding: 12px 18px;
}
body.editorial-site .relationship-evolution span { font-size: 11px; letter-spacing: 2px; color: var(--copper-soft); }
body.editorial-site .arc-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 10px; }
body.editorial-site .arc-list article {
  background: var(--paper-raised); border: 1px solid var(--rule-soft); border-radius: 4px; padding: 16px 18px;
}
body.editorial-site .arc-list span { font-size: 11px; letter-spacing: 1px; color: var(--copper-soft); }
body.editorial-site .arc-list h3 { font-size: 16px; margin-top: 6px; }

body.editorial-site .timeline-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 50px; }
body.editorial-site .timeline-rail { padding-left: 8px; }
body.editorial-site .timeline-event {
  position: relative; border-left: 1px solid #c5d5b8; padding: 0 0 28px 24px; margin-left: 8px;
}
body.editorial-site .timeline-event::before {
  content: ''; position: absolute; left: -5px; top: 8px; width: 9px; height: 9px;
  border-radius: 50%; background: #839e74; border: 2px solid #f9fbf4;
}
body.editorial-site .timeline-event small { color: var(--ink-faint); }
body.editorial-site .timeline-event h3 { font-size: 17px; }
body.editorial-site .timeline-event p { font-size: 13px; line-height: 1.95; margin-top: 8px; }
body.editorial-site .event-links { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 12px; font-size: 12px; }
body.editorial-site .event-links span { color: var(--ink-faint); }
body.editorial-site .event-links a { color: #256356; font-weight: 600; }
body.editorial-site .timeline-aside > div {
  background: var(--paper-raised); border: 1px solid var(--rule-soft);
  border-radius: 5px; padding: 20px; margin-bottom: 16px;
}
body.editorial-site .timeline-aside span { font-size: 11px; letter-spacing: 2px; color: var(--copper-soft); display: block; }
body.editorial-site .timeline-aside b { font: 600 20px var(--serif); display: block; margin: 6px 0; }
body.editorial-site .timeline-aside p { font-size: 12px; }

body.editorial-site .world-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; }
body.editorial-site .world-note { padding: 18px 0; border-top: 1px solid #e3e8d9; }
body.editorial-site .world-note small { color: var(--ink-faint); }
body.editorial-site .world-note h3 { font-size: 18px; margin-top: 4px; }
body.editorial-site .world-note p { font-size: 14px; line-height: 2; margin-top: 8px; }
body.editorial-site .world-summary { display: flex; align-items: baseline; gap: 8px; color: var(--ink-soft); }
body.editorial-site .world-summary strong { font: 600 24px var(--serif); color: var(--green); }
body.editorial-site .world-summary span { font-size: 12px; margin-right: 12px; }

/* --------------------------------------------------------------------------
   11 pagination, dialogs
   -------------------------------------------------------------------------- */
body.editorial-site .pagination {
  display: flex; align-items: center; justify-content: center; gap: 18px;
  padding: 30px 0 10px; font-size: 13px;
}
body.editorial-site .pagination a {
  border: 1px solid #dce2d2; border-radius: 4px; padding: 9px 18px;
  background: var(--paper-raised); font-weight: 600; color: #235a50; min-height: 40px;
  display: inline-flex; align-items: center;
}
body.editorial-site .pagination span { color: #b3bbab; padding: 9px 18px; }
body.editorial-site .pagination b { color: var(--ink-soft); font-weight: 600; }

body.editorial-site .editorial-dialog {
  border: 1px solid #d7dfd2; border-radius: 10px; background: #fcfbf6; padding: 28px;
  width: min(650px, calc(100% - 32px)); max-height: 85vh; color: var(--ink);
  box-shadow: 0 25px 100px #11292144;
}
body.editorial-site .editorial-dialog::backdrop { background: #0c272263; backdrop-filter: blur(3px); }
body.editorial-site .dialog-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
body.editorial-site .dialog-head h2 { font-size: 25px; }
body.editorial-site .search-line { display: flex; gap: 10px; margin: 8px 0 12px; }
body.editorial-site .search-line input {
  min-width: 0; flex: 1; border: 1px solid #ccd6c7; border-radius: 4px; padding: 10px 12px; background: #fff;
}
body.editorial-site .search-status { font-size: 12px; color: var(--ink-faint); }
body.editorial-site .search-suggestions { margin-top: 8px; max-height: 46vh; overflow: auto; }
body.editorial-site .search-suggestions h3 { font-size: 12px; letter-spacing: 2px; color: var(--copper-soft); margin: 16px 0 4px; }
body.editorial-site .search-result { display: block; padding: 12px 0; border-top: 1px solid var(--rule-soft); }
body.editorial-site .search-result strong { display: block; font-size: 15px; }
body.editorial-site .search-result small { display: block; color: #606f67; }
body.editorial-site .search-result:hover,
body.editorial-site .search-result:focus-visible { background: #f1f3ea; }

/* --------------------------------------------------------------------------
   12 footer
   -------------------------------------------------------------------------- */
body.editorial-site .page-footer {
  margin-top: 42px; background: #eaece3; border-top: 1px solid #d9dfd2;
  padding: 36px 0 23px; color: var(--ink-soft);
}
body.editorial-site .footer-inner { display: flex; justify-content: space-between; align-items: start; gap: 30px; }
body.editorial-site .footer-inner p { font-size: 13px; max-width: 400px; margin-top: 12px; }
body.editorial-site .footer-links { display: flex; gap: 26px; font-size: 13px; padding-top: 12px; flex-wrap: wrap; }
body.editorial-site .footer-bottom {
  margin-top: 24px; border-top: 1px solid #d5ded0; padding-top: 14px;
  font-size: 11px; display: flex; justify-content: space-between; gap: 20px;
}
body.editorial-site .footer-bottom a { text-decoration: underline; }

/* --------------------------------------------------------------------------
   13 responsive
   -------------------------------------------------------------------------- */
@media (min-width: 1700px) {
  body.editorial-site .hero-feature h1 { font-size: 42px; }
  body.editorial-site .hero-feature p { max-width: 360px; }
  body.editorial-site .hero-books { right: 49px; top: 36px; width: 245px; }
  body.editorial-site .hero-books .cover { width: 173px; }
  body.editorial-site .hero-books .cover.back { width: 140px; right: 136px; }
}

@media (max-width: 1300px) {
  body.editorial-site .container,
  body.editorial-site #main-content { width: calc(100% - 64px); }
  body.editorial-site .header-inner { gap: 25px; }
  body.editorial-site .global-nav { margin-left: 0; gap: 20px; }
  body.editorial-site .header-search kbd { display: none; }
  body.editorial-site .header-search input { width: 130px; }
  body.editorial-site .hero-feature { padding: 30px; }
  body.editorial-site .hero-feature h1 { font-size: 33px; }
  body.editorial-site .hero-feature p { max-width: 270px; }
  body.editorial-site .hero-feature .text-link { font-size: 11px; }
  body.editorial-site .hero-books { right: 20px; top: 45px; width: 170px; }
  body.editorial-site .hero-books .cover { width: 142px; }
  body.editorial-site .hero-books .cover.back { width: 112px; right: 103px; top: 58px; }
  body.editorial-site .hero-caption { right: 27px; }
  body.editorial-site .book-grid { gap: 18px; }
  body.editorial-site .cover strong { font-size: 20px; }
  body.editorial-site .cover-copy { left: 17px; }
  body.editorial-site .library-grid { grid-template-columns: repeat(2, 1fr); }
  body.editorial-site .entity-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.editorial-site .people-grid-wide { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.editorial-site .work-hero { grid-template-columns: 175px 1fr 225px; gap: 27px; }
  body.editorial-site .work-content,
  body.editorial-site .timeline-layout { grid-template-columns: minmax(0, 1fr) 280px; gap: 30px; }
  body.editorial-site .discover-layout { grid-template-columns: 240px minmax(0, 1fr); gap: 28px; }
  body.editorial-site .character-band { gap: 25px; padding: 25px; }
}

@media (max-width: 980px) {
  body.editorial-site .global-nav { gap: 17px; }
  body.editorial-site .brand strong { font-size: 21px; }
  body.editorial-site .hero-layout { grid-template-columns: 1fr; }
  body.editorial-site .hero-feature { min-height: 340px; padding: 33px; }
  body.editorial-site .hero-feature h1 { font-size: 38px; }
  body.editorial-site .hero-feature p { max-width: 350px; }
  body.editorial-site .hero-books { right: 65px; top: 31px; width: 255px; }
  body.editorial-site .hero-books .cover { width: 180px; }
  body.editorial-site .hero-books .cover.back { width: 145px; right: 135px; }
  body.editorial-site .start-card { display: none; }
  body.editorial-site .entry-paths { gap: 13px; }
  body.editorial-site .entry-paths small { display: none; }
  body.editorial-site .book-grid { grid-template-columns: repeat(3, 1fr); gap: 28px; }
  body.editorial-site .topic-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
  body.editorial-site .topic-card { padding: 18px; min-height: 200px; }
  body.editorial-site .topic-card h3 { font-size: 21px; }
  body.editorial-site .character-band { grid-template-columns: 1fr; }
  body.editorial-site .entity-grid,
  body.editorial-site .people-grid-wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.editorial-site .work-hero { grid-template-columns: 180px 1fr; }
  body.editorial-site .reading-note { display: none; }
  body.editorial-site .work-content,
  body.editorial-site .timeline-layout,
  body.editorial-site .discover-layout { grid-template-columns: 1fr; }
  body.editorial-site .work-sidebar { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
  body.editorial-site .work-bar { display: block; }
  body.editorial-site .work-tabs { justify-content: space-between; }
  body.editorial-site .spoiler-options { width: max-content; margin: 10px 0; }
  body.editorial-site .library-grid { grid-template-columns: repeat(2, 1fr); }
  body.editorial-site .library-grid .book-card,
  body.editorial-site .book-row { grid-template-columns: 100px 1fr; padding: 17px; gap: 15px; }
  body.editorial-site .library-grid .cover strong { font-size: 16px; }
  body.editorial-site .library-grid .cover em { font-size: 8px; }
  body.editorial-site .library-grid .book-card h3 { font-size: 16px; }
  body.editorial-site .world-grid { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
  body.editorial-site .container,
  body.editorial-site #main-content { width: calc(100% - 36px); }
  body.editorial-site .masthead { height: auto; min-height: 72px; padding: 8px 0; }
  body.editorial-site .header-inner { gap: 10px; flex-wrap: wrap; }
  body.editorial-site .brand { gap: 9px; }
  body.editorial-site .brand-mark { width: 33px; height: 39px; border-radius: 3px 3px 11px 3px; }
  body.editorial-site .brand-mark svg { width: 22px; }
  body.editorial-site .brand strong { font-size: 19px; letter-spacing: 2px; }
  body.editorial-site .brand small { font-size: 8px; letter-spacing: 2px; }
  /* Without JavaScript the five links stay on the page as a wrapping row. */
  body.editorial-site .global-nav { order: 3; width: 100%; height: auto; gap: 9px 14px; flex-wrap: wrap; margin: 4px 0 0; }
  body.editorial-site .global-nav a { height: 38px; padding: 0 2px; font-size: 14px; }
  body.editorial-site .header-search { margin-left: auto; padding: 4px 4px 4px 10px; }
  body.editorial-site .header-search input { width: 110px; }

  /* With JavaScript the approved drawer takes over. */
  body.editorial-site[data-editorial-nav='enhanced'] .masthead { height: 72px; padding: 0; }
  body.editorial-site[data-editorial-nav='enhanced'] .header-inner { flex-wrap: nowrap; }
  body.editorial-site[data-editorial-nav='enhanced'] .global-nav {
    display: none; position: absolute; top: 71px; left: 0; right: 0;
    background: #fcfbf7; border-bottom: 1px solid #d9dfd1; padding: 16px 18px;
    box-shadow: 0 10px 20px #27433210; margin: 0; width: auto; order: 0;
  }
  body.editorial-site[data-editorial-nav='enhanced'] .global-nav.is-open { display: flex; }
  body.editorial-site[data-editorial-nav='enhanced'] .global-nav a { height: 40px; padding: 0 11px; }
  body.editorial-site[data-editorial-nav='enhanced'] .global-nav a.active::after { left: 11px; right: 11px; }
  body.editorial-site[data-editorial-nav='enhanced'] .header-search { display: none; }
  body.editorial-site[data-editorial-nav='enhanced'] .search-trigger:not([hidden]),
  body.editorial-site[data-editorial-nav='enhanced'] .menu-toggle:not([hidden]) { display: grid; margin-left: auto; }
  body.editorial-site[data-editorial-nav='enhanced'] .menu-toggle { margin-left: 0; }

  body.editorial-site .edition-line { padding: 12px 0; font-size: 10px; letter-spacing: .3px; }
  body.editorial-site .edition-line span:last-child { display: none; }
  body.editorial-site .hero-layout { gap: 0; }
  body.editorial-site .hero-feature { min-height: 441px; padding: 24px; border-radius: 5px; }
  body.editorial-site .hero-feature h1 { font-size: 30px; line-height: 1.5; max-width: 100%; position: relative; z-index: 3; }
  body.editorial-site .hero-feature p { font-size: 12px; max-width: 215px; line-height: 1.85; margin-top: 10px; }
  body.editorial-site .hero-feature .eyebrow { font-size: 10px; margin-bottom: 9px; }
  body.editorial-site .hero-actions {
    margin-top: 18px; position: relative; z-index: 4;
    align-items: start; flex-direction: column; gap: 9px;
  }
  body.editorial-site .hero-actions .button { min-height: 44px; padding: 8px 13px; font-size: 12px; }
  body.editorial-site .hero-actions .text-link { font-size: 11px; min-height: 44px; }
  body.editorial-site .hero-landscape { width: 100%; opacity: .3; }
  body.editorial-site .hero-books { top: 231px; right: 32px; width: 159px; height: 193px; }
  body.editorial-site .hero-books .cover { width: 112px; right: 0; }
  body.editorial-site .hero-books .cover.back { width: 88px; right: 87px; top: 27px; }
  body.editorial-site .hero-books .cover strong { font-size: 15px; letter-spacing: 2px; }
  body.editorial-site .hero-books .cover-copy { left: 10px; right: 8px; bottom: 12px; }
  body.editorial-site .hero-books .cover em { font-size: 7px; margin-top: 4px; }
  body.editorial-site .hero-books .cover-type { font-size: 6px; letter-spacing: 1px; left: 9px; top: 10px; }
  body.editorial-site .hero-books .cover::after { inset: 6px; }
  body.editorial-site .hero-caption { left: 24px; right: auto; bottom: 23px; font-size: 9px; letter-spacing: 1px; }
  body.editorial-site .entry-paths { grid-template-columns: repeat(2, 1fr); gap: 12px 8px; margin-top: 16px; padding-bottom: 16px; }
  body.editorial-site .entry-paths a { gap: 9px; padding: 0; }
  body.editorial-site .entry-paths b { font-size: 12px; }
  body.editorial-site .entry-paths small { display: block; font-size: 9px; }
  body.editorial-site .entry-paths svg { width: 20px; }
  body.editorial-site .section { padding: 26px 0; }
  body.editorial-site .section-title { align-items: center; margin-bottom: 17px; gap: 10px; }
  body.editorial-site .section-title h2 { font-size: 23px; }
  body.editorial-site .section-title p { font-size: 11px; max-width: 235px; }
  body.editorial-site .section-title .text-link { font-size: 11px; white-space: nowrap; gap: 5px; }
  body.editorial-site .book-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 23px 18px; }
  body.editorial-site .cover strong { font-size: 20px; letter-spacing: 2px; }
  body.editorial-site .cover-copy { left: 15px; right: 11px; bottom: 19px; }
  body.editorial-site .cover .cover-type { left: 13px; font-size: 8px; }
  body.editorial-site .cover em { font-size: 8px; margin-top: 6px; }
  body.editorial-site .book-card h3 { font-size: 15px; }
  body.editorial-site .book-card .book-copy > small { font-size: 10px; }
  body.editorial-site .book-card p { font-size: 11px; margin: 7px 0; }
  body.editorial-site .book-card .pills .pill { font-size: 9px; }
  body.editorial-site .topic-grid { grid-template-columns: 1fr; }
  body.editorial-site .topic-card { min-height: 195px; padding: 23px; }
  body.editorial-site .topic-card h3 { font-size: 25px; }
  body.editorial-site .character-band { padding: 23px; gap: 23px; }
  body.editorial-site .character-band h2 { font-size: 24px; }
  body.editorial-site .people-grid,
  body.editorial-site .people-grid-wide,
  body.editorial-site .entity-grid,
  body.editorial-site .character-profile-grid,
  body.editorial-site .arc-list { grid-template-columns: 1fr; gap: 12px; }
  body.editorial-site .person { padding: 18px; }
  body.editorial-site .person p { -webkit-line-clamp: 2; }
  body.editorial-site .page-title { padding: 25px 0; display: block; }
  body.editorial-site .page-title h1 { font-size: 29px; }
  body.editorial-site .page-title p { font-size: 12px; }
  body.editorial-site .page-title .index-search { margin-top: 16px; }
  body.editorial-site .library-grid { grid-template-columns: 1fr; }
  body.editorial-site .library-grid .book-card,
  body.editorial-site .book-row { grid-template-columns: 110px 1fr; padding: 19px; gap: 21px; }
  body.editorial-site .library-grid .cover strong { font-size: 18px; }
  body.editorial-site .library-grid .book-card h3 { font-size: 18px; }
  body.editorial-site .library-grid .book-card p { font-size: 12px; }
  body.editorial-site .world-card img,
  body.editorial-site .world-card-plate { height: 175px; }
  body.editorial-site .work-hero { grid-template-columns: 112px minmax(0, 1fr); gap: 19px; align-items: start; padding: 7px 0 22px; }
  body.editorial-site .work-hero .cover strong { font-size: 19px; }
  body.editorial-site .work-hero .cover-copy { left: 13px; right: 9px; bottom: 15px; }
  body.editorial-site .work-hero .cover .cover-type { top: 12px; font-size: 7px; letter-spacing: 1px; }
  body.editorial-site .work-main .eyebrow { font-size: 9px; letter-spacing: 1px; margin-bottom: 4px; }
  body.editorial-site .work-main h1 { font-size: 31px; }
  body.editorial-site .work-original { font-size: 13px; }
  body.editorial-site .work-author { font-size: 10px; margin: 9px 0; }
  body.editorial-site .work-summary { font-size: 12px; line-height: 1.8; margin: 9px 0 0; }
  body.editorial-site .work-main > .pills { display: none; }
  body.editorial-site .work-actions { grid-column: 1 / -1; margin: 17px 0 0; gap: 9px; }
  body.editorial-site .work-actions .button { font-size: 11px; padding: 7px 10px; min-height: 44px; }
  body.editorial-site .work-tabs { gap: 0; justify-content: space-between; }
  body.editorial-site .work-tabs a { font-size: 12px; padding: 15px 0; }
  body.editorial-site .spoiler-options { margin: 10px 0; max-width: 100%; }
  body.editorial-site .spoiler-options a { font-size: 10px; padding: 5px 10px; min-height: 40px; display: flex; align-items: center; }
  body.editorial-site .work-content { padding: 22px 0; gap: 23px; }
  body.editorial-site .article-card { padding: 24px 21px; }
  body.editorial-site .article-card h2 { font-size: 23px; }
  body.editorial-site .article-card > p { font-size: 14px; line-height: 2.05; }
  body.editorial-site .article-card .guide-title { font-size: 19px; }
  body.editorial-site .work-sidebar { grid-template-columns: 1fr; gap: 5px; }
  body.editorial-site .character-hero { gap: 18px; }
  body.editorial-site .avatar-large { width: 60px; height: 68px; font-size: 28px; }
  body.editorial-site .relationship { grid-template-columns: 1fr 48px 1fr; gap: 6px; }
  body.editorial-site .relationship .person-top { display: block; text-align: center; padding: 12px 6px; }
  body.editorial-site .relationship .avatar { margin: 0 auto 7px; width: 36px; height: 40px; font-size: 19px; }
  body.editorial-site .relationship strong { font-size: 13px; }
  body.editorial-site .pagination { gap: 8px; }
  body.editorial-site .pagination a,
  body.editorial-site .pagination span { padding: 9px 12px; font-size: 12px; }
  body.editorial-site .footer-inner { display: block; }
  body.editorial-site .footer-links { flex-wrap: wrap; gap: 14px 22px; margin-top: 12px; font-size: 12px; }
  body.editorial-site .footer-bottom { display: block; line-height: 2; }
  body.editorial-site .footer-bottom span { display: block; }
  body.editorial-site .page-footer { margin-top: 26px; padding-top: 27px; }
  body.editorial-site .breadcrumbs { font-size: 10px; padding: 15px 0; }
  body.editorial-site .editorial-dialog { padding: 21px; }
  body.editorial-site .dialog-head h2 { font-size: 21px; }
  body.editorial-site .search-line input { font-size: 13px; }
}

/* --------------------------------------------------------------------------
   14 motion preferences
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  body.editorial-site *,
  body.editorial-site *::before,
  body.editorial-site *::after { transition: none !important; }
}

/* Evidence anchors preserve the original text and highlight only after an explicit source link. */
body.editorial-site .reader-evidence-anchor { scroll-margin-top: 110px; }
body.editorial-site .reader-evidence-highlight,
body.editorial-site .chapter-prose p:has(.reader-evidence-anchor:target),
body.editorial-site .chapter-prose h2:has(.reader-evidence-anchor:target) { background: #fff0c2; outline: 2px solid #c7a264; outline-offset: 6px; }

body.editorial-site .source-references { margin:18px 0; padding:12px 16px; border:1px solid #d4ddd3; border-radius:8px; background:#f4f7ef; }
body.editorial-site .source-references summary { cursor:pointer; min-height:32px; line-height:32px; font-weight:600; color:#235d50; }
body.editorial-site .source-references p { font-size:13px; color:#596e64; }
body.editorial-site .source-references ol { margin:8px 0; padding-left:22px; max-height:280px; overflow:auto; }
body.editorial-site .source-references a { display:inline-flex; align-items:center; gap:6px; min-height:36px; color:#205a4c; text-decoration:underline; }
