/* styles.css */
@font-face{font-family:CodexSerif;src:url('assets/serif.woff2') format('woff2');font-display:swap;font-weight:400 800}
@font-face{font-family:CodexSans;src:url('assets/sans.woff2') format('woff2');font-display:swap;font-weight:200 800}
:root{color-scheme:dark;--bg:#160f12;--sidebar:#100c0f;--panel:#20161b;--panel2:#281b21;--line:#453038;--line-soft:#302229;--ink:#f0e6dd;--muted:#b8a5aa;--gold:#d6b58a;--rose:#b9657c;--wine:#71334a;--serif:CodexSerif,Georgia,'Times New Roman',serif;--sans:CodexSans,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,summary,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button,input,select{color:var(--ink)}button{border:0}input,select{background:#1b1217;border:1px solid var(--line);border-radius:4px;padding:11px 14px;min-width:0}select{max-width:100%;font-size:14px}input::placeholder{color:#a58f98}input:focus,select:focus{outline:1px solid var(--gold);outline-offset:2px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button{background:transparent}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.17}h1{font-size:clamp(38px,4vw,60px);letter-spacing:-1.6px;margin-bottom:16px}h2{font-size:32px;letter-spacing:-.6px;margin-bottom:20px}h3{font-size:24px;margin-bottom:12px}p{margin-bottom:18px}small{font-size:12px}::selection{background:#784053;color:#fff}.icon{display:inline-block;width:21px;height:21px;vertical-align:middle;flex-shrink:0}.eyebrow{font:500 11px/1.5 var(--sans);letter-spacing:2px;color:var(--gold);text-transform:uppercase}.muted{color:var(--muted)}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:var(--gold);color:var(--bg);padding:12px}.skip:focus{top:10px}.loading{max-width:650px;margin:20vh auto;text-align:center;padding:25px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid #6c4853;border-radius:3px;padding:10px 18px;background:#29191f;color:var(--ink);font-size:14px;line-height:1.6;transition:background .18s,border-color .18s;min-height:44px}.button:hover:not(:disabled){background:#3c242e;border-color:var(--rose)}.button.primary{background:#71364b;border-color:#a85a72;box-shadow:inset 0 1px 0 #ffffff0a;color:#fff}.button.primary:hover{background:#88435d}.button.subtle{background:transparent;border-color:var(--line)}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--gold);font-size:13px;white-space:normal}.text-link .icon{width:17px;height:17px}.text-link:hover{color:#f4d8b5}.icon-button{padding:10px;border:1px solid var(--line);border-radius:3px;display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:42px}.icon-button:hover{background:var(--panel)}
.sidebar{width:244px;position:fixed;inset:0 auto 0 0;background:var(--sidebar);border-right:1px solid var(--line-soft);z-index:30;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.brand{display:flex;align-items:center;gap:11px;padding:30px 22px 26px;font-family:var(--serif);font-size:20px;line-height:1.2}.brand img{width:39px;height:46px}.brand small{display:block;font:9px/1.4 var(--sans);letter-spacing:3.5px;color:var(--gold);margin-top:7px}.sidebar nav{padding:0 14px}.nav-group{padding:22px 14px 9px;color:#907b83;font-size:10px;letter-spacing:2px}.sidebar nav a{display:flex;gap:12px;align-items:center;padding:10px 13px;border-radius:3px;border:1px solid transparent;color:#c4b2b8;font-size:13px;line-height:1.5;min-height:41px;margin-bottom:2px}.sidebar nav a .icon{width:17px;height:17px;color:#987e88}.sidebar nav a small{font:10px var(--sans);margin-left:auto;color:#8f7680}.sidebar nav a:hover{color:var(--ink);background:#25151e}.sidebar nav a.active{color:#f6e7e6;background:linear-gradient(90deg,#4b2535,#2a1721);border-color:#563143}.sidebar nav a.active .icon{color:#da9daf}.sidebar nav a.active small{color:#c998a7}.sidebar-footer{margin:auto 24px 0;padding:36px 0 22px;text-align:center}.sidebar-footer .edition{font-size:9px;letter-spacing:2px;color:#8d727b}.sidebar-footer p{font:italic 17px/1.6 var(--serif);color:#a88a93;margin:13px 0}.footer-ornament{font-size:11px;color:#71404f;letter-spacing:5px}.site{margin-left:244px}.topbar{height:78px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line-soft);gap:24px;background:#160f12ef;position:sticky;top:0;z-index:25;backdrop-filter:blur(12px)}.breadcrumb{display:flex;align-items:center;gap:15px;font-size:12px;color:#7c6670;white-space:nowrap}.breadcrumb>span:first-child{letter-spacing:2px;color:#ab909a;font-size:10px}.breadcrumb b{font-weight:400;color:#d0bdc4}.top-actions{display:flex;gap:22px;align-items:center}.search-launch{display:flex;gap:10px;align-items:center;color:#b5a0aa;font-size:12px}.search-launch .icon{width:17px}.search-launch kbd{font:10px var(--sans);padding:2px 6px;border:1px solid #44313b;border-radius:3px;margin-left:20px;color:#8a727d}.spoiler-toggle{display:flex;gap:8px;align-items:center;font-size:11px;letter-spacing:.4px;color:#c5a28b;border-left:1px solid var(--line);padding:4px 0 4px 23px}.spoiler-toggle .icon{width:15px;height:15px}.spoiler-toggle.open{color:#e296b0}.mobile-menu{display:none}#main{padding:34px 38px 60px;max-width:1580px;margin:auto;min-height:calc(100vh - 150px)}.site-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line-soft);padding:23px 38px;color:#886d78;font-size:10px;letter-spacing:1.5px}.site-footer i{margin:0 8px;color:var(--rose)}
.opening{position:relative;overflow:hidden;isolation:isolate;min-height:364px;border:1px solid #63424a;background:#25141b}.opening-art{position:absolute;width:81%;height:100%;object-fit:cover;object-position:57% 36%;right:0;top:0;z-index:-3}.opening-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#22141cfb 0%,#22141cf9 22%,#22141c90 45%,#22141c00 70%),linear-gradient(0deg,#160e159c,transparent 60%)}.opening:after{content:'';position:absolute;inset:9px;border:1px solid #c89e7030;pointer-events:none;z-index:-1}.opening-copy{padding:37px 38px;max-width:530px}.opening-copy>.eyebrow{font-size:9px;letter-spacing:2px;color:#d4b294}.opening h1{font-size:64px;line-height:.98;font-weight:500;margin:23px 0 18px;letter-spacing:-1.3px;position:relative;width:fit-content}.opening h1 em{font-weight:400;color:#e4c0a4}.title-diamond{position:absolute;font:22px var(--serif);right:-57px;top:60px;color:#b58464}.opening-copy p{font-size:13px;line-height:1.85;color:#ceb9c1;margin:0 0 23px}.opening-actions{display:flex;gap:23px;align-items:center}.opening-actions .button{font-size:11px;padding:10px 13px;min-height:39px;gap:10px}.opening-actions .text-link{font-size:11px}.opening-actions .icon{width:16px}.cover-note{position:absolute;bottom:24px;right:24px;font-size:8px;letter-spacing:2px;color:#e6c9a7;text-shadow:0 1px 4px #000}.statistics{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--line);padding:24px 0 23px;margin-bottom:35px}.statistics a{display:flex;align-items:center;justify-content:center;gap:12px;border-right:1px solid var(--line-soft)}.statistics a:last-child{border:0}.statistics strong{font:32px var(--serif);color:var(--gold)}.statistics span{font-size:10px;color:var(--muted);max-width:70px;line-height:1.6}.statistics a:hover span{color:var(--ink)}.section{margin-top:38px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.section-heading .eyebrow{font-size:9px;letter-spacing:2px}.section-heading h2{margin:7px 0 0;font-size:28px}.section-heading>.text-link{margin-bottom:3px;font-size:11px}.courts-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.court-tile{min-height:206px;padding:19px 15px;position:relative;isolation:isolate;overflow:hidden;border:1px solid #4d343e;background:#291720;transition:border-color .2s,transform .2s;display:flex;flex-direction:column}.court-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%;z-index:-3;opacity:.5;filter:saturate(.65)}.court-tile-shade{position:absolute;inset:0;background:linear-gradient(0deg,#170d15fa,#170d1550);z-index:-2}.court-tile:after{position:absolute;inset:5px;border:1px solid #b7916530;content:'';z-index:-1}.court-numeral{font-size:11px;font-family:var(--serif);letter-spacing:1px;color:#d3b28b}.court-tile-text{margin-top:auto;padding-top:30px}.court-tile-text>span{font-size:8px;text-transform:uppercase;letter-spacing:1.4px;color:#c9a595}.court-tile h3{font-size:19px;line-height:1.15;margin:8px 0 9px;min-height:44px;color:#f5e6da}.court-tile small{font-size:9px;color:#bca4ac}.court-tile>.icon{position:absolute;right:14px;bottom:18px;width:13px;opacity:.6}.court-tile:hover{border-color:var(--gold);transform:translateY(-3px)}.cast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.entry-card{border:1px solid var(--line);background:#21161b;display:flex;flex-direction:column;overflow:hidden;transition:border-color .18s,background .18s}.entry-card:hover{border-color:#8c5d6c;background:#2a1a22}.card-image{height:195px;overflow:hidden;position:relative;background:#24161d}.card-image img{width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform .4s}.entry-card:hover .card-image img{transform:scale(1.03)}.card-copy{padding:20px;display:flex;flex-direction:column;flex:1}.card-copy .eyebrow{font-size:9px;letter-spacing:1.1px;color:#c2919e;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.card-copy h3{font-size:23px;margin:9px 0 11px}.card-copy p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 17px}.card-bottom{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#b79888;padding-top:13px;border-top:1px solid var(--line-soft);margin-top:auto}.card-bottom .icon{width:15px;height:15px}.person-card .card-image{height:260px}.compact .card-image{height:240px}.compact .card-copy{padding:17px}.compact .card-copy h3{font-size:23px}.compact .card-copy p{font-size:11px;line-height:1.8}.compact .card-bottom{font-size:9px}.saved-marker{position:absolute;right:10px;top:10px;background:#321b27bf;color:var(--gold);padding:7px;border-radius:2px}.saved-marker .icon{width:14px;height:14px}.next-chapter{display:grid;grid-template-columns:1fr 1fr;padding:32px;border:1px solid #51323e;background:radial-gradient(ellipse at bottom left,#4a223235,transparent 75%),#20141b;gap:40px;margin-top:44px}.next-chapter>.eyebrow{font-size:9px}.next-chapter h2{font-size:30px;margin-top:11px}.next-chapter p{font-size:13px;color:var(--muted);max-width:370px}.next-chapter .button{font-size:12px}.chapter-links{display:grid;gap:0}.chapter-links a{display:flex;align-items:center;gap:17px;padding:18px 0;border-bottom:1px solid var(--line);color:var(--gold)}.chapter-links a:last-child{border-bottom:0}.chapter-links a>.icon{width:20px}.chapter-links a>.icon:last-child{margin-left:auto;width:16px}.chapter-links b{display:block;font:21px var(--serif);color:var(--ink)}.chapter-links small{display:block;color:var(--muted);font-size:11px;margin-top:5px}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:12px 0 34px;padding-bottom:28px;border-bottom:1px solid var(--line)}.page-heading .eyebrow{margin-bottom:14px}.page-heading h1{margin:0}.page-heading p{margin:15px 0 0;color:var(--muted);font-size:15px;max-width:720px}.page-count{font:45px/1 var(--serif);color:var(--gold);text-align:right}.page-count span{display:block;font:11px var(--sans);color:var(--muted);margin-top:8px;letter-spacing:2px}.library-toolbar{display:flex;gap:12px;align-items:center}.field{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:4px;background:#1b1217;padding:0 14px}.field:focus-within{outline:1px solid var(--gold)}.field input{background:transparent;border:0;padding:13px 0;outline:none;width:100%;font-size:14px}.field input:focus{outline:none}.field .icon{width:18px;color:#9a7a88}.search-field{flex:1}.library-toolbar>select{max-width:260px}.results-meta{display:flex;justify-content:space-between;color:#a88f99;font-size:12px;padding:21px 0}.entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.entry-grid.people-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.text-grid .card-copy{padding:25px}.text-grid h3{font-size:26px}.text-grid .card-copy p{font-size:14px}.pagination{display:flex;justify-content:center;align-items:center;gap:24px;margin:34px 0 0}.pagination>span{font-size:13px;color:var(--muted)}.empty-state{text-align:center;padding:55px 20px;color:var(--muted)}.empty-state h2{color:var(--ink);margin-bottom:15px}.empty-state>.icon{width:36px;height:36px;margin-bottom:20px;color:var(--gold)}.empty-state p{font-size:14px}.entry-back{display:flex;align-items:center;justify-content:space-between;margin:0 0 30px}.entry-back>div{display:flex;gap:10px}.entry-back .button{font-size:12px;padding:7px 13px;min-height:39px}.entry-back .icon{width:16px}.entry-back+.page-heading{margin-top:0}.reader-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:50px}.reader-body{min-width:0}.prose{color:#d6c5cc;font:16px/1.95 var(--sans);overflow-wrap:anywhere}.prose p{margin-bottom:25px}.prose h3{font:30px var(--serif);color:var(--ink);margin:36px 0 20px}.prose strong{font-weight:600;color:#f2d9dc}.prose li{margin:10px 0}.prose ul{padding-left:24px}.wiki-link{color:var(--gold);text-decoration:underline;text-decoration-color:#9a765950;text-underline-offset:3px}.wiki-link:hover{text-decoration-color:var(--gold)}.reader-image{border:1px solid #61404c;padding:6px;margin-bottom:24px;background:#271820}.reader-image img{width:100%;max-height:470px;object-fit:cover;object-position:top}.fact-box{padding:24px;background:var(--panel);border:1px solid var(--line)}.fact-box>.eyebrow{margin-bottom:20px}.fact-box>p{font-size:14px;color:var(--muted);margin:0}.facts{margin:0}.facts>div{padding:13px 0;border-bottom:1px solid var(--line-soft)}.facts>div:first-child{padding-top:0}.facts>div:last-child{border-bottom:0;padding-bottom:0}.facts dt{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#ad8f9b;margin-bottom:4px}.facts dd{margin:0;font-size:14px;line-height:1.7}.reader-note{display:flex;align-items:flex-start;gap:15px;color:#a48691;padding:24px 10px;font-size:12px}.reader-note p{margin:0}.reader-note .icon{width:17px;margin-top:3px}.reader-section{margin-top:35px;padding-top:30px;border-top:1px solid var(--line)}.reader-section h2{font-size:30px}.reference-chips{display:flex;flex-wrap:wrap;gap:9px;margin:15px 0}.reference-chip{display:inline-flex;align-items:center;gap:12px;font-size:13px;padding:9px 12px;border:1px solid var(--line);color:var(--gold);background:#21161b}.reference-chip .icon{width:14px;height:14px}.reference-chip:hover{background:#3b2230;border-color:#855767}.areas-list{border:1px solid var(--line)}details summary{list-style:none;cursor:pointer;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px}details summary::-webkit-details-marker{display:none}.areas-list details{border-bottom:1px solid var(--line);background:#20151b}.areas-list details:last-child{border-bottom:0}.areas-list summary{font-family:var(--serif);font-size:24px}.areas-list summary span{font:22px var(--sans);color:var(--gold)}.areas-list details[open] summary{color:var(--gold)}.areas-list .prose{padding:0 20px 20px;font-size:15px}.areas-list .prose p:last-child{margin-bottom:0}.secrets-section{border:1px solid #6c354b;background:#2a1520;padding:25px;margin-top:38px}.secrets-section h2{display:flex;align-items:center;gap:12px;font-size:27px}.secrets-section p{color:#c3a2af}.secrets-section .prose p{font-size:15px}.secrets-section .prose p:last-child{margin-bottom:0}.mini-people{grid-template-columns:repeat(2,minmax(0,1fr))}.mini-people .card-image{height:245px}.stat-chips{display:flex;flex-wrap:wrap;gap:10px}.stat-chips span{color:var(--gold);font-size:13px;background:#33222a;padding:7px 11px}.opening-scene{border-left:2px solid #8b5064;padding-left:25px}
.reference-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.reference-tile{border:1px solid var(--line);padding:26px;background:var(--panel);position:relative}.reference-tile>.icon:first-child{color:var(--gold);width:30px;height:30px;margin-bottom:22px}.reference-tile>.icon:last-child{position:absolute;right:20px;bottom:25px;color:var(--gold);width:18px}.reference-tile h2{font-size:26px;margin-bottom:13px}.reference-tile p{font-size:12px;color:var(--muted);margin:0}.reference-tile:hover{border-color:var(--rose)}.rule-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:25px;border:1px solid var(--line);margin-top:25px;background:var(--panel)}.rule-strip strong{font:38px var(--serif);color:var(--gold)}.rule-strip span{display:block;color:var(--muted);font-size:12px;margin-top:8px}.romance-intro{display:flex;align-items:center;gap:30px;background:radial-gradient(ellipse at top left,#512033,#22151d 70%);border:1px solid #623748;padding:35px}.romance-glyph{border:1px solid #855064;width:100px;height:100px;display:grid;place-items:center;flex-shrink:0;transform:rotate(45deg);margin:15px}.romance-glyph .icon{transform:rotate(-45deg);width:45px;height:45px;color:#e9a9bc}.romance-intro h2{font-size:32px}.romance-intro p{font-size:15px;color:var(--muted);max-width:740px}.bond-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.bond-card{position:relative;padding:28px;border:1px solid #57323f;background:linear-gradient(140deg,#311b27,#1f141c)}.bond-card>.icon{width:30px;height:30px;color:var(--rose);margin-bottom:24px}.bond-card .bond-number{position:absolute;right:25px;top:20px;color:#80576a;font:28px var(--serif)}.bond-card h3{font-size:29px}.bond-card p{font-size:12px;color:var(--muted)}.bond-card:hover{border-color:var(--gold)}.relationship-ladder{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:25px}.relationship-ladder>div{padding:18px;background:var(--panel)}.relationship-ladder span{display:block;font-size:10px;color:#a68b96;margin-bottom:6px}.relationship-ladder b{font:20px var(--serif);color:var(--gold)}#romance-results{margin-top:25px}#more-romance{margin-top:25px}
.atlas-toolbar{display:flex;gap:15px;margin-bottom:18px;align-items:center}.map-buttons{display:flex;gap:8px}.map-buttons .button{padding:8px 14px;font-size:12px}.atlas-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;border:1px solid #59404a;background:#130e12}.map-viewport{overflow:auto;max-height:75vh;min-height:440px;scrollbar-color:#744758 #20151b}.map-canvas{position:relative;line-height:0;min-height:100%;transition:width .2s}.map-canvas>img{width:100%;max-width:none}.map-pin{position:absolute;transform:translate(-50%,-50%);width:7px;height:7px;border:1px solid #f1d8b1;background:#a84364;border-radius:50%;box-shadow:0 0 0 3px #130d1440;z-index:2}.map-pin.hub{width:11px;height:11px;background:#e5c094;border:2px solid #492634}.map-pin span{display:none;position:absolute;left:50%;bottom:16px;transform:translateX(-50%);padding:7px 10px;background:#23131df2;color:#f5ddbd;border:1px solid #a87972;white-space:nowrap;font:12px/1.5 var(--sans);box-shadow:0 5px 12px #0008}.map-pin:hover,.map-pin:focus{z-index:4;outline:3px solid #ffffff66;outline-offset:3px}.map-pin:hover span,.map-pin:focus span{display:block}.atlas-directory{padding:23px 20px;border-left:1px solid var(--line);overflow-y:auto;max-height:75vh;background:#21141c}.atlas-directory> .eyebrow{font-size:10px}.atlas-directory p{font-size:11px;margin:12px 0}.atlas-directory a{display:block;border-bottom:1px solid var(--line);padding:13px 16px 13px 0;position:relative}.atlas-directory b{display:block;font:19px var(--serif)}.atlas-directory small{color:var(--muted);font-size:10px}.atlas-directory a>.icon{position:absolute;right:0;top:21px;width:13px;color:var(--gold)}.atlas-directory a:hover b{color:var(--gold)}.atlas-foot{display:flex;justify-content:space-between;gap:20px;margin-top:15px;font-size:11px;color:var(--muted)}.expanded-map{position:fixed;inset:82px 20px 20px;z-index:40;box-shadow:0 0 0 100vmax #000c}.expanded-map .map-viewport,.expanded-map .atlas-directory{max-height:100%;height:100%}.expanded-map:before{content:'Press ESC to close';position:absolute;right:270px;top:10px;padding:7px 10px;background:#170d15e8;color:var(--gold);z-index:10;font-size:12px;pointer-events:none}
.builder-top{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px;padding-bottom:25px;border-bottom:1px solid var(--line)}.builder-top label{font-size:12px;color:var(--muted);width:340px;max-width:100%}.builder-top input{display:block;width:100%;margin-top:8px}.builder-actions{display:flex;gap:12px}.builder-layout{display:grid;grid-template-columns:190px minmax(0,1fr) 250px;gap:24px;align-items:start}.builder-categories{position:sticky;top:103px;display:flex;flex-direction:column;border:1px solid var(--line);background:#1c1319}.builder-categories button{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;padding:13px 12px;text-align:left;border-bottom:1px solid var(--line-soft);color:#c8b3be}.builder-categories button:last-child{border:0}.builder-categories button.active{background:#4a2638;color:#f3d2df;box-shadow:inset 2px 0 0 var(--rose)}.builder-categories small{font-size:10px;color:#b891a5;white-space:nowrap}.builder-categories button:hover{background:#362030}.builder-category-heading h2{font-size:34px;margin:9px 0 15px}.builder-category-heading p{color:var(--muted);font-size:14px;line-height:1.85}.builder-category-heading>.eyebrow{font-size:10px}#trait-subcategory{width:100%;margin-top:12px}#trait-options{display:flex;flex-direction:column;gap:14px;margin-top:18px}.trait-option{border:1px solid var(--line);padding:21px;background:#21151d}.trait-option-title{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.trait-option h3{font-size:25px;margin-bottom:12px}.trait-option p{font-size:13px;line-height:1.9;color:#bba3b0;white-space:pre-line}.trait-option .text-link{font-size:11px}.trait-pick{border:1px solid #785266;width:33px;height:33px;min-width:33px;color:#eac7d8;font-size:23px;line-height:1;display:grid;place-items:center;border-radius:50%}.trait-option.selected{border-color:#b56689;background:#321d2c}.trait-option.selected .trait-pick{background:#b06385;color:#fff}.trait-option.unavailable{border-color:#392833;background:#1b1319}.choice-reason{display:block;color:#d69caf;font-size:12px;margin:12px 0}.builder-summary{position:sticky;top:103px;background:#291825;border:1px solid #654152;padding:23px;max-height:calc(100vh - 125px);overflow:auto;scrollbar-width:thin}.builder-summary>.eyebrow{font-size:10px}.builder-summary h2{font-size:47px;margin:14px 0}.builder-summary h2 small{font:13px var(--sans);color:#b896aa}.selection-progress{height:3px;background:#4a2c3d;margin-bottom:25px}.selection-progress i{display:block;height:100%;background:#c880a1}.builder-summary h3{font-size:20px;margin:24px 0 15px}.attribute-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.attribute-totals>div{background:#21141d;border:1px solid #493043;text-align:center;padding:10px 0}.attribute-totals span{font-size:9px;letter-spacing:1px;color:#b290a2;display:block}.attribute-totals strong{font:25px var(--serif);color:#eac4da}.summary-caption{font-size:11px;color:#b190a3;line-height:1.8;margin:15px 0}.builder-summary details{border-top:1px solid #4f3142}.builder-summary summary{padding:15px 0;font-size:12px;color:#dcc2d0}.builder-summary summary:after{content:'+';color:var(--gold)}.builder-summary .reference-chip{font-size:10px}.picked-traits{display:flex;flex-direction:column;gap:7px}.picked-traits p{font-size:12px;color:var(--muted)}.picked-traits button{background:#382233;padding:8px 9px;font-size:11px;color:#e0bfce;text-align:left;display:flex;justify-content:space-between;gap:10px;border:1px solid #593749}.picked-traits button:hover{border-color:var(--rose)}
.music-layout{display:grid;grid-template-columns:1fr 330px;gap:28px;margin-top:25px}.music-row{display:flex;gap:20px;width:100%;text-align:left;align-items:center;border:1px solid var(--line);padding:21px;background:var(--panel);margin-bottom:10px}.music-row:hover{border-color:var(--rose)}.music-row>.icon{color:var(--gold);width:24px}.music-row b{display:block;font:26px var(--serif)}.music-row small{display:block;font-size:11px;color:var(--muted);margin-top:7px}.music-row>span:last-child{margin-left:auto;font-size:10px;color:#bb98a6;white-space:nowrap}.music-player{border:1px solid #633b4d;background:#2b1824;padding:28px;position:sticky;top:110px;align-self:start}.music-player h2{margin:20px 0;font-size:34px}.music-player p{font-size:13px}.music-player audio{width:100%;margin:20px 0}.music-player label{display:block;font-size:12px;color:var(--muted)}.music-player select{display:block;width:100%;margin-top:9px}#audio-status{margin-top:20px;color:#e4a8ba}
#search-dialog{padding:0;width:min(740px,calc(100vw - 32px));max-height:min(80vh,850px);border:1px solid #795064;border-radius:6px;background:#20131c;color:var(--ink);box-shadow:0 30px 100px #000a;top:10vh;margin:0 auto;overflow:hidden}#search-dialog::backdrop{background:#0b0710b8;backdrop-filter:blur(5px)}.search-dialog-header{display:flex;align-items:center;gap:15px;padding:17px 22px;border-bottom:1px solid var(--line)}.search-dialog-header>.icon{color:var(--gold)}.search-dialog-header input{border:0;background:transparent;flex:1;padding:8px 0;font-size:17px;min-width:0}.search-dialog-header input:focus{outline:none}.search-dialog-header .icon-button{border:0}.search-dialog-footer{padding:13px 22px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted);border-top:1px solid var(--line)}#global-results{overflow-y:auto;max-height:calc(80vh - 155px);padding:10px 12px 15px}.search-caption{font-size:10px;color:#bc95aa;text-transform:uppercase;letter-spacing:1.5px;padding:10px}.search-result{display:flex;align-items:center;gap:16px;padding:14px 12px;border-radius:4px}.search-result:hover,.search-result:focus{background:#392034}.search-result>.icon{color:#c090a7;width:19px}.search-result>.icon:last-child{margin-left:auto;width:15px}.search-result b{display:block;font:22px var(--serif)}.search-result small{display:block;font-size:11px;color:#b79caa;line-height:1.7;margin-top:5px}#toast{position:fixed;bottom:25px;left:calc(50% + 122px);transform:translate(-50%,15px);padding:12px 21px;background:#452637;border:1px solid #94617a;border-radius:4px;color:#f0d7e4;font-size:13px;z-index:100;opacity:0;pointer-events:none;transition:.2s;max-width:calc(100vw - 30px);box-shadow:0 8px 40px #0006}#toast.visible{opacity:1;transform:translate(-50%,0)}.portrait-placeholder{display:grid;place-items:center;background:radial-gradient(#593043,#25151f);height:180px;color:var(--gold)}.portrait-placeholder span{font:35px var(--serif)}
@media(min-width:1600px){.opening{min-height:410px}.opening-copy{padding:50px}.opening h1{font-size:78px}.opening-copy p{font-size:15px}.opening-copy>.eyebrow{font-size:10px}.opening-art{object-position:center 32%}.court-tile{min-height:245px}.court-tile h3{font-size:23px}.statistics span{font-size:12px;max-width:100px}.statistics strong{font-size:38px}.compact .card-image{height:310px}.card-copy p{font-size:14px}.compact .card-copy p{font-size:13px}.compact .card-bottom{font-size:11px}.sidebar nav a{font-size:14px}.brand{font-size:22px}}
@media(max-width:1200px){.sidebar{width:215px}.site{margin-left:215px}.brand{padding-left:17px;font-size:18px}.brand img{width:33px}.sidebar nav{padding:0 9px}.sidebar nav a{font-size:12px;gap:9px;padding:10px}.topbar{padding:0 25px}.breadcrumb>span:first-child,.breadcrumb>span:nth-child(2){display:none}.top-actions{gap:16px}#main{padding:25px}.courts-grid{grid-template-columns:repeat(3,1fr);gap:13px}.court-tile{min-height:165px}.court-tile h3{min-height:0;font-size:23px}.court-tile-text{padding-top:18px}.court-tile-text small{font-size:10px}.cast-grid,.entry-grid.people-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cast-grid .entry-card:last-child{display:none}.entry-grid{gap:16px}.builder-layout{grid-template-columns:155px minmax(0,1fr) 210px;gap:15px}.builder-summary{padding:16px}.builder-categories button{font-size:11px;padding:11px 10px}.reader-layout{grid-template-columns:minmax(0,1fr) 230px;gap:30px}.opening-copy{padding:32px}.opening h1{font-size:61px}.opening-actions{gap:15px}.opening-copy>.eyebrow{font-size:8px}.opening-actions .text-link{font-size:10px}.opening-art{width:88%}.next-chapter{padding:26px;gap:26px}.statistics a{gap:9px}.statistics strong{font-size:30px}.statistics span{font-size:9px}.music-layout{grid-template-columns:1fr 280px}.reference-grid{grid-template-columns:repeat(3,1fr)}#toast{left:calc(50% + 105px)}}
@media(max-width:1000px){.topbar{height:70px}.top-actions{gap:12px}.search-launch kbd{display:none}.search-launch span{font-size:11px}.spoiler-toggle{font-size:10px;padding-left:15px}.breadcrumb{font-size:11px}.opening{min-height:330px}.opening h1{font-size:57px}.opening-copy p{font-size:12px}.opening-copy{padding:28px}.opening-actions{flex-wrap:wrap;gap:15px}.opening-art{object-position:56% 25%}.cover-note{display:none}.opening-shade{background:linear-gradient(90deg,#22141cfc 0%,#22141cef 28%,#22141c60 70%,#22141c22)}.statistics{grid-template-columns:repeat(3,1fr);row-gap:20px}.statistics a:nth-child(3){border:0}.statistics a:nth-child(4),.statistics a:nth-child(5){display:none}.statistics span{font-size:10px}.cast-grid,.entry-grid.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cast-grid .entry-card:last-child{display:flex}.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.next-chapter{grid-template-columns:1fr}.next-chapter p{max-width:none}.next-chapter .chapter-links{display:none}.library-toolbar{flex-wrap:wrap}.library-toolbar .field{flex-basis:100%}.library-toolbar select{flex:1;max-width:none}.reader-layout{display:flex;flex-direction:column-reverse;gap:25px}.reader-aside{display:grid;grid-template-columns:180px 1fr;gap:20px}.reader-aside:not(:has(.reader-image)){display:block}.reader-image{margin:0}.reader-image img{max-height:300px}.reader-note{display:none}.fact-box{padding:20px}.reader-aside .facts{display:grid;grid-template-columns:1fr 1fr;gap:15px}.reader-aside .facts>div{padding:0;border:0}.builder-layout{grid-template-columns:150px minmax(0,1fr)}.builder-summary{position:static;grid-column:1/-1;max-height:none}.attribute-totals{grid-template-columns:repeat(6,1fr)}.picked-traits{display:grid;grid-template-columns:repeat(2,1fr)}.builder-categories{top:95px}.builder-top{flex-wrap:wrap}.builder-top label{width:100%}.builder-category-heading h2{font-size:30px}.builder-category-heading p{font-size:13px}.bond-grid{grid-template-columns:repeat(2,1fr)}.romance-intro{padding:25px}.romance-glyph{width:65px;height:65px;margin:8px}.romance-intro h2{font-size:27px}.relationship-ladder{grid-template-columns:repeat(3,1fr)}.atlas-layout{grid-template-columns:minmax(0,1fr)}.map-viewport{min-height:0;max-height:70vh}.atlas-directory{max-height:260px;border-left:0;border-top:1px solid var(--line)}#map-directory{display:grid;grid-template-columns:repeat(2,1fr);gap:0 20px}#map-directory>p{grid-column:1/-1}.atlas-toolbar{flex-wrap:wrap}.atlas-toolbar .field{flex-basis:100%}.expanded-map{display:block;overflow:auto}.expanded-map .map-viewport{height:auto;max-height:none}.expanded-map .atlas-directory{height:250px;max-height:250px}.expanded-map:before{right:15px}.music-layout{grid-template-columns:1fr}.music-player{grid-row:1;position:static}.music-player h2{margin:10px 0}.music-player audio{margin:10px 0}.music-row b{font-size:23px}.reference-grid{grid-template-columns:repeat(2,1fr)}.rule-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);width:260px;transition:transform .2s}.site{margin-left:0}.nav-open .sidebar{transform:translateX(0)}.sidebar-scrim{display:none}.nav-open .sidebar-scrim{display:block;position:fixed;inset:0;background:#080509ad;z-index:29;backdrop-filter:blur(3px)}.brand{font-size:23px;padding:25px}.sidebar nav a{font-size:14px;min-height:44px;padding:11px 14px;gap:13px}.sidebar nav a small{font-size:12px}.nav-group{font-size:11px}.sidebar nav{padding:0 15px}.sidebar-footer{display:none}.mobile-menu{display:flex;border:0;padding:6px;min-width:34px}.topbar{padding:0 18px;height:65px;gap:12px}.breadcrumb{margin-right:auto;font-size:12px}.top-actions{gap:16px}.search-launch{padding:8px 0}.search-launch .icon{width:20px;height:20px}.search-launch span{display:none}.spoiler-toggle{border:0;padding:8px 0}.spoiler-toggle .icon{width:17px;height:17px}.spoiler-toggle span{display:none}#main{padding:20px 18px 40px}.opening{min-height:365px}.opening-art{width:100%;object-position:66% 30%}.opening-shade{background:linear-gradient(90deg,#24141dfa 0%,#24141dd9 36%,#24141d33 100%),linear-gradient(0deg,#170e1888,transparent 50%)}.opening-copy{padding:30px 26px;max-width:400px}.opening h1{font-size:65px;margin-top:28px}.opening-copy>.eyebrow{font-size:8px;max-width:220px;line-height:1.9}.opening-copy p{font-size:13px}.opening-actions{gap:18px}.opening-actions .button{font-size:11px}.title-diamond{right:-40px;top:65px}.statistics{margin-bottom:30px;padding:22px 0;grid-template-columns:repeat(3,1fr)}.statistics a{gap:9px}.statistics strong{font-size:32px}.statistics span{font-size:9px;max-width:63px}.section{margin-top:30px}.section-heading{gap:15px;align-items:flex-end;margin-bottom:17px}.section-heading h2{font-size:25px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.6px}.section-heading>.text-link{font-size:10px;text-align:right;gap:7px}.section-heading>.text-link .icon{width:13px}.courts-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.court-tile{padding:16px 12px;min-height:176px}.court-tile h3{font-size:20px;min-height:48px}.court-tile-text>span{font-size:7px;letter-spacing:1px}.court-tile small{font-size:8px}.court-tile>.icon{display:none}.court-numeral{font-size:10px}.cast-grid{gap:12px}.compact .card-image{height:250px}.compact .card-copy{padding:15px}.compact .card-copy h3{font-size:23px}.compact .card-copy p{font-size:12px}.compact .card-copy .eyebrow{font-size:8px}.compact .card-bottom{font-size:10px}.next-chapter{padding:26px;margin-top:30px}.next-chapter h2{font-size:29px}.next-chapter p{font-size:14px}.site-footer{padding:20px 18px;font-size:9px;letter-spacing:1px;flex-direction:column;gap:7px}#toast{left:50%}.page-heading{margin:9px 0 24px;padding-bottom:25px;gap:15px}.page-heading h1{font-size:43px;letter-spacing:-1px}.page-heading>.page-count{font-size:36px}.page-heading .eyebrow{font-size:10px;letter-spacing:1.5px}.page-heading p{font-size:14px}.page-count span{font-size:9px}.library-toolbar .field input{font-size:15px}.library-toolbar select{font-size:13px;max-width:50%;padding:10px}.results-meta{font-size:11px}.entry-grid{gap:13px}.entry-grid.people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-card .card-copy{padding:17px}.card-copy h3{font-size:25px}.card-copy p{font-size:13px}.text-grid{grid-template-columns:1fr}.text-grid .card-copy{padding:24px}.text-grid h3{font-size:28px}.text-grid .card-copy p{font-size:15px}.person-card .card-image{height:275px}.person-card .card-copy h3{font-size:24px}.person-card .card-copy p{font-size:12px}.card-copy .eyebrow{font-size:9px}.card-bottom{font-size:11px}.entry-back{gap:12px;margin-bottom:27px}.entry-back .text-link{font-size:12px}.entry-back .button{font-size:11px;padding:6px 9px}.entry-back .button .icon{display:none}.entry-back>div{gap:6px}.reader-aside{grid-template-columns:150px 1fr;gap:13px}.fact-box{padding:17px}.reader-aside .facts{grid-template-columns:1fr;gap:9px}.reader-aside .facts dt{font-size:9px;margin-bottom:2px}.reader-aside .facts dd{font-size:12px}.reader-aside .facts>div:nth-child(n+5){display:none}.reader-image img{height:100%;object-fit:cover;max-height:370px}.fact-box>.eyebrow{font-size:10px;margin-bottom:17px}.prose{font-size:16px;line-height:1.9}.reader-section h2{font-size:30px}.secrets-section{padding:22px}.secrets-section h2{font-size:26px}.mini-people .card-image{height:250px}.reference-chip{font-size:13px}.romance-intro{display:block;padding:28px}.romance-glyph{display:none}.romance-intro h2{font-size:30px}.romance-intro p{font-size:15px}.bond-card{padding:23px}.bond-card h3{font-size:26px}.bond-card .text-link{font-size:11px}.bond-card p{font-size:11px}.bond-number{font-size:22px}.relationship-ladder{grid-template-columns:repeat(2,1fr)}.relationship-ladder b{font-size:21px}.relationship-ladder span{font-size:11px}.map-buttons{width:100%;justify-content:space-between}.map-buttons .button{font-size:12px;padding:8px 12px}.atlas-foot{flex-direction:column;gap:10px}.atlas-directory b{font-size:20px}.atlas-directory small{font-size:11px}.map-pin{width:8px;height:8px}.map-pin.hub{width:11px;height:11px}.expanded-map{inset:70px 10px 10px}.builder-layout{display:flex;flex-direction:column;gap:23px}.builder-layout>*{width:100%}.builder-categories{position:static;display:flex;flex-direction:row;overflow-x:auto;max-width:100%;border:0;border-bottom:1px solid var(--line);padding-bottom:10px;gap:8px;background:transparent}.builder-categories button{flex-shrink:0;max-width:180px;border:1px solid var(--line);font-size:12px;border-radius:3px;gap:10px;min-height:43px;white-space:nowrap}.builder-categories button:last-child{border:1px solid var(--line)}.builder-categories button.active{box-shadow:none;background:#52283f}.builder-top{margin-bottom:18px;padding-bottom:18px}.builder-top label{font-size:13px}.builder-top input{font-size:16px}.builder-actions{gap:10px}.builder-actions .button{font-size:12px}.builder-category-heading h2{font-size:36px}.builder-category-heading p{font-size:15px}.trait-option p{font-size:15px}.trait-option h3{font-size:28px}.trait-option .text-link{font-size:13px}.trait-pick{width:40px;height:40px;min-width:40px}.choice-reason{font-size:13px}.builder-summary{padding:24px}.builder-summary h3{font-size:25px}.builder-summary .eyebrow{font-size:12px}.summary-caption{font-size:13px}.builder-summary details summary{font-size:14px}.picked-traits button{font-size:13px;min-height:40px}.attribute-totals span{font-size:11px}.attribute-totals strong{font-size:28px}.music-row{padding:18px;gap:15px}.music-row>span:last-child{font-size:9px}.music-row small{font-size:11px}.music-player{padding:25px}.reference-grid{gap:13px}.reference-tile{padding:23px}.reference-tile h2{font-size:28px}.reference-tile p{font-size:13px}.rule-strip span{font-size:13px}.rule-strip{padding:23px}.search-dialog-header{padding:15px}.search-dialog-header input{font-size:15px}.search-result b{font-size:23px}.search-result small{font-size:12px}.search-dialog-footer{font-size:10px;padding:13px 17px}.search-dialog-header>.icon{width:19px}}
@media(max-width:420px){.opening-copy{padding:28px 21px}.opening h1{font-size:59px}.opening-actions .text-link{font-size:10px}.opening-actions{gap:13px}.opening-art{object-position:68% 25%}.courts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.court-tile{min-height:159px}.court-tile h3{font-size:23px;min-height:0}.court-tile-text>span{font-size:8px}.court-tile-text small{font-size:10px}.compact .card-image,.person-card .card-image{height:220px}.person-card .card-copy{padding:14px}.person-card .card-copy h3{font-size:21px}.person-card .card-copy p{font-size:12px}.card-bottom{font-size:10px}.entry-grid:not(.people-grid):not(.mini-people){grid-template-columns:1fr}.entry-grid.mini-people{grid-template-columns:repeat(2,minmax(0,1fr))}.card-copy p{font-size:14px}.reader-aside{grid-template-columns:130px 1fr}.reader-aside .facts dd{font-size:12px}.fact-box{padding:14px}.reference-grid{grid-template-columns:repeat(2,1fr)}.reference-tile h2{font-size:25px}.reference-tile{padding:19px}.attribute-totals{grid-template-columns:repeat(3,1fr)}.picked-traits{grid-template-columns:1fr}.bond-grid{gap:12px}.bond-card{padding:20px 17px}.bond-card h3{font-size:25px}.section-heading .eyebrow{font-size:7px}.page-count{display:none}.page-heading h1{font-size:39px}.site-footer{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.sidebar,.topbar,.site-footer,.entry-back,.reader-note,.button{display:none!important}.site{margin:0}body{background:#fff;color:#111}#main{padding:0}.reader-layout{display:block}.reader-aside{display:none}.prose,.prose strong{color:#111}.wiki-link{color:#444}.secrets-section{break-inside:avoid}}
/* Reading sizes are shared by the desktop and mobile layouts. */
.sidebar nav a{font-size:14px}.sidebar nav a small,.nav-group,.brand small,.sidebar-footer .edition,.eyebrow,.section-heading .eyebrow,.opening-copy>.eyebrow,.court-tile-text>span,.card-copy .eyebrow,.compact .card-copy .eyebrow,.footer-ornament{font-size:12px}
.nav-group{letter-spacing:1.5px}.sidebar nav a{gap:10px}.brand{font-size:21px}.brand small{letter-spacing:2.5px}.sidebar-footer .edition{letter-spacing:1px}
.breadcrumb,.search-launch,.search-launch span,.spoiler-toggle,.statistics span,.text-link,.section-heading>.text-link,.opening-actions .button,.opening-actions .text-link,.chapter-links small,.next-chapter .button,.card-bottom,.compact .card-bottom,.library-toolbar select,.results-meta{font-size:14px}
.card-copy p,.compact .card-copy p,.person-card .card-copy p,.text-grid .card-copy p,.opening-copy p,.next-chapter p{font-size:16px;line-height:1.75}
.card-copy .eyebrow{letter-spacing:.7px}.compact .card-copy h3{font-size:25px}.compact .card-copy p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.statistics span{max-width:105px;line-height:1.5}.statistics{padding:22px 0}.statistics a{gap:10px}.statistics strong{font-size:34px}
.court-tile{min-height:245px}.court-tile h3{font-size:23px;min-height:78px}.court-tile small{font-size:12px}.court-tile-text>span{letter-spacing:.5px}.court-numeral{font-size:14px}.court-tile-text{padding-top:30px}.court-tile>.icon{display:none}
.opening{min-height:390px}.opening-art{height:170%;object-position:center top}.opening-copy{max-width:580px}.opening-copy>.eyebrow{letter-spacing:1.5px;max-width:310px}.opening-copy h1{margin-top:20px}.opening-actions{gap:18px}.opening-actions .text-link{max-width:145px;line-height:1.5}.cover-note{display:none}
.site-footer,.search-dialog-footer,.search-caption,.search-launch kbd,.map-directory small,.atlas-foot,.page-count span,.page-heading .eyebrow,.reader-note,.summary-caption,.music-row small,.music-row>span:last-child,.trait-option .text-link,.choice-reason,.builder-summary summary,.picked-traits button,.court-tile small,.reader-aside .facts dt,.reader-aside .facts dd{font-size:12px}
.builder-categories button,.builder-top label,.builder-category-heading p,.trait-option p,.builder-summary details summary,.builder-summary .reference-chip,.music-player p,.music-player label,.music-row small,.bond-card p,.reference-chip,.facts dd,.search-result small{font-size:14px}
.builder-categories small,.attribute-totals span,.builder-summary>.eyebrow,.builder-category-heading>.eyebrow,.search-caption,.atlas-directory>.eyebrow,.atlas-directory p,.atlas-directory small,.relationship-ladder span,.reference-tile p,.rule-strip span,.card-bottom{font-size:12px}
.builder-categories{position:static}.reader-aside .facts>div:nth-child(n+5){display:block}.facts dt{font-size:12px}.reader-aside .facts dd{font-size:14px}.close-expanded-map{display:none}.expanded-map .close-expanded-map{display:block;position:absolute;right:20px;bottom:20px;z-index:20;box-shadow:0 4px 18px #0009}
@media(min-width:1201px){.courts-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.court-tile{min-height:205px}.court-tile h3{font-size:25px;min-height:0}.court-tile-text{padding-top:25px}.opening-copy>.eyebrow{font-size:12px}.compact .card-copy .eyebrow{font-size:12px}.section-heading>.text-link{font-size:14px}}
@media(max-width:1200px){.sidebar{width:235px}.site{margin-left:235px}.sidebar nav a{font-size:14px}.brand{font-size:20px}.opening-copy{padding:30px}.opening-art{width:100%}.opening h1{font-size:62px}.opening-copy p{font-size:16px}.statistics span{font-size:12px}.opening-actions .text-link{font-size:12px}.top-actions{gap:12px}.breadcrumb{font-size:12px}.topbar{gap:15px}.spoiler-toggle{font-size:12px;padding-left:12px}.search-launch span{font-size:12px}.courts-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.court-tile h3{font-size:23px}.court-tile{min-height:240px}.builder-categories button{font-size:13px}.card-copy p,.compact .card-copy p,.person-card .card-copy p{font-size:15px}}
@media(max-width:760px){.sidebar{width:280px}.site{margin-left:0}.sidebar nav a{font-size:15px}.brand{font-size:22px}.topbar{padding:0 18px}.search-launch span,.spoiler-toggle span{display:none}.breadcrumb{font-size:14px}.opening-copy{padding:27px 23px}.opening-copy>.eyebrow{max-width:260px;font-size:12px}.opening h1{font-size:61px}.opening-art{height:170%;object-position:center top}.opening{min-height:425px}.opening-shade{background:linear-gradient(90deg,#24141df7,#24141dbf 45%,#24141d40)}.opening-copy p{font-size:16px}.opening-actions{flex-direction:column;align-items:flex-start;gap:14px}.opening-actions .button,.opening-actions .text-link{font-size:14px;max-width:none}.opening h1{margin:24px 0 20px}.statistics span{font-size:12px;max-width:65px}.statistics strong{font-size:28px}.statistics a{gap:7px}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.section-heading h2{font-size:29px}.section-heading>.text-link{font-size:14px}.courts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.court-tile h3{font-size:25px;min-height:60px}.court-tile{min-height:210px}.court-tile-text{padding-top:20px}.court-tile-text>span{font-size:12px}.compact .card-copy .eyebrow{font-size:12px}.compact .card-copy h3,.person-card .card-copy h3{font-size:24px}.card-copy p,.compact .card-copy p,.person-card .card-copy p{font-size:15px}.card-bottom,.compact .card-bottom{font-size:12px}.site-footer{font-size:12px;letter-spacing:.5px}.card-copy .eyebrow{font-size:12px}.builder-category-heading p,.trait-option p{font-size:16px}.builder-summary details summary,.summary-caption,.picked-traits button{font-size:14px}.builder-categories button{font-size:14px}.builder-categories small{font-size:12px}.reader-aside{grid-template-columns:145px 1fr;align-items:start}.reader-aside .facts dd{font-size:14px}.reader-aside .facts dt{font-size:12px}.fact-box{padding:17px}.reader-aside .facts>div:nth-child(n+5){display:block}.reader-image img{max-height:330px}.bond-card p{font-size:14px}.reference-tile p,.rule-strip span,.music-row small{font-size:14px}.atlas-directory small{font-size:12px}.search-result small{font-size:14px}.text-grid .card-copy p{font-size:16px}.reader-aside{grid-template-columns:1fr 1fr}.opening-copy>.eyebrow{line-height:1.7}.court-numeral{font-size:14px}}
@media(max-width:760px){.reader-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.reader-aside{display:contents}.reader-image{grid-row:1;max-width:100%;width:100%;padding:6px}.reader-image img{height:420px;max-height:none;object-fit:cover;object-position:center 18%}.reader-body{grid-row:2}.fact-box{grid-row:3;padding:24px}.reader-aside .facts{display:grid;grid-template-columns:1fr 1fr;gap:20px}.reader-aside .facts dt{font-size:12px}.reader-aside .facts dd{font-size:15px}.reader-layout:not(:has(.reader-image)) .reader-body{grid-row:1}.reader-image{max-width:430px;justify-self:center}}

/* experience.css */
/* The Reader Edition: interaction, motion, and comfortable reading. */
:root{--reading-size:16px;--ease-out:cubic-bezier(.2,.7,.2,1);--glass:#20141de8;--focus-ring:#e3bda4}
html[data-tone="midnight"]{--bg:#111318;--sidebar:#0b0e13;--panel:#1a1d25;--panel2:#242834;--line:#414550;--line-soft:#2b303b;--ink:#f0eef0;--muted:#b6b7c3;--gold:#d8ccbc;--rose:#b1a4c1;--wine:#55516b;--glass:#181b24ed}
html[data-tone="midnight"] body{background:var(--bg)}
html[data-tone="midnight"] .topbar{background:#111318ed}
html[data-tone="midnight"] .sidebar nav a.active{background:linear-gradient(90deg,#393544,#20232b);border-color:#554d65}
html[data-tone="midnight"] :is(.entry-card,.fact-box,.trait-option,.field,input,select,.areas-list details,.reader-toc,.connection-card,.margin-notes,.discovery-desk){background:var(--panel);border-color:var(--line)}
html[data-tone="midnight"] :is(.prose,.prose strong,.prose h3){color:var(--ink)}
html[data-tone="midnight"] :is(.button.primary,.view-toggle button[aria-pressed="true"],.search-scopes button[aria-pressed="true"]){background:#514864;border-color:#8f809f}
html[data-tone="midnight"] :is(.quick-view,.preferences-dialog,#search-dialog){background:#181b24}
html[data-tone="midnight"] .opening-shade{background:linear-gradient(90deg,#14121cfb 0%,#14121ce6 28%,#14121c65 65%,transparent)}

/* Visibility never depends on an observer. Only an actual intersection starts motion. */
.reveal-item{opacity:1}
html[data-motion="full"] .reveal-item.revealed{animation:card-arrival .55s var(--ease-out) var(--reveal-delay,0ms) backwards}
@keyframes card-arrival{from{opacity:.35;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
html[data-motion="full"] .opening-art{animation:art-arrival 1.6s var(--ease-out) both}
@keyframes art-arrival{from{opacity:.2;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
html[data-motion="full"] .sidebar nav a{transition:background .2s,color .2s,transform .2s}
html[data-motion="full"] .sidebar nav a:hover{transform:translateX(3px)}
html[data-motion="full"] .button:active{transform:translateY(1px)}
html[data-motion="full"] :is(.quick-view,.preferences-dialog)[open]{animation:dialog-arrival .25s var(--ease-out)}
@keyframes dialog-arrival{from{opacity:0;transform:translateY(16px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
html[data-motion="reduced"] *,html[data-motion="reduced"] *:before,html[data-motion="reduced"] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-motion="reduced"] .reveal-item{opacity:1!important;transform:none!important}
@media(prefers-reduced-motion:reduce){.reveal-item{opacity:1!important;transform:none!important}}

.opening{border-color:#76515a;box-shadow:0 12px 50px #0002}
.opening:after{border-color:#d6b58a40}
.opening-copy h1{font-size:clamp(3.65rem,5.2vw,5.2rem);font-weight:400}
.section-heading h2{font-size:2rem}
.preferences-launch{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;color:var(--gold);font:19px var(--serif);flex-shrink:0}
.preferences-launch:hover{border-color:var(--rose);background:var(--panel2)}
.reading-progress{position:absolute;left:0;bottom:-1px;width:100%;height:2px;border:0;appearance:none;background:transparent;color:var(--rose);pointer-events:none}
.reading-progress::-webkit-progress-bar{background:transparent}
.reading-progress::-webkit-progress-value{background:linear-gradient(90deg,#915171,#e7bd9d)}
.reading-progress::-moz-progress-bar{background:var(--rose)}
.reading-progress[hidden]{display:none}

.entry-card{position:relative;border-radius:5px;box-shadow:0 4px 15px #0001;min-width:0}
.entry-card:hover{box-shadow:0 9px 30px #0002;border-color:#99697d}
.card-copy{position:relative;z-index:1}
.card-title-link{color:var(--ink);transition:color .2s}
.card-title-link:hover{color:var(--gold)}
.card-utilities{display:flex;gap:6px;position:absolute;right:10px;top:10px;z-index:3}
.card-tool{width:35px;height:35px;display:grid;place-items:center;color:#efdce2;border:1px solid #d9b6c43f;background:#21151be8;border-radius:50%;backdrop-filter:blur(8px);transition:background .2s,border-color .2s}
.card-tool .icon{width:16px;height:16px}
.card-tool:hover,.card-tool.is-saved{background:#82455e;border-color:#d7a8bc;color:#fff}
.entry-card:not(:has(.card-image)) .card-copy{padding-top:24px}
.entry-card:not(:has(.card-image)) .card-copy>.eyebrow{padding-right:73px;min-height:32px}
.card-image{flex-shrink:0;border-radius:4px 4px 0 0}
.card-bottom:hover{color:#f4d5b3}
.card-copy h3{overflow-wrap:anywhere}
.collection-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 0 0;min-height:55px}
#active-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.filter-chip{font-size:.8rem;color:#edc8d6;background:#432534;border:1px solid #805266;border-radius:20px;padding:7px 12px;max-width:100%;overflow-wrap:anywhere;text-align:left}
.reset-filters{color:var(--muted);text-decoration:underline;text-underline-offset:3px;font-size:.875rem;padding:5px}
.collection-display{display:flex;align-items:center;gap:18px;margin-left:auto;flex-shrink:0}
.collection-display .text-link{font-size:.8rem}
.view-toggle{display:flex;border:1px solid var(--line);padding:3px;border-radius:5px;gap:3px;background:var(--sidebar)}
.view-toggle button{font-size:22px;line-height:1;width:37px;height:34px;color:var(--muted);border-radius:3px}
.view-toggle button[aria-pressed="true"]{background:#583047;color:#f8dce9;box-shadow:0 2px 5px #0003}
.entry-grid.list-view{display:flex;flex-direction:column;gap:12px}
.list-view .entry-card{display:grid;grid-template-columns:108px minmax(0,1fr);min-height:145px}
.list-view .card-image{height:100%;min-height:145px;border-radius:4px 0 0 4px}
.list-view .card-image img{object-position:50% 18%}
.list-view .card-copy{display:block;padding:20px 100px 19px 24px}
.list-view .card-copy h3{font-size:1.65rem;margin:5px 0 9px}
.list-view .card-copy p{margin-bottom:0;font-size:.9rem;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.list-view .card-copy>.eyebrow{min-height:0!important;padding-right:0!important}
.list-view .card-bottom{position:absolute;right:22px;bottom:17px;border:0;padding:0;font-size:0;gap:0}
.list-view .card-bottom .icon{width:19px;height:19px}
.list-view .entry-card:not(:has(.card-image)){grid-template-columns:minmax(0,1fr)}
.list-view .entry-card:not(:has(.card-image)) .card-copy{padding-top:20px}
.results-meta{font-size:.8rem}

.discovery-desk{display:grid;grid-template-columns:1fr 1.35fr;gap:22px 30px;margin:0 0 45px;padding:27px 29px;background:radial-gradient(ellipse at 0 100%,#5a2d4236,transparent 65%),var(--panel);border:1px solid var(--line);border-radius:5px;align-items:center}
.discovery-desk-title h2{font-size:1.75rem;margin:8px 0 0;max-width:320px}
.discovery-desk-title .eyebrow{font-size:.75rem;letter-spacing:1.7px}
.discovery-search{padding:16px 18px;border:1px solid #745362;background:#160f17;display:flex;align-items:center;gap:12px;text-align:left;color:#d3b6c4;border-radius:4px;min-width:0}
.discovery-search span{font-size:.9rem}.discovery-search .icon{color:var(--gold);width:19px}
.discovery-search kbd{margin-left:auto;font:.75rem var(--sans);white-space:nowrap;padding:3px 5px;border:1px solid var(--line);border-radius:3px;color:#b599a8}
.discovery-search:hover{border-color:var(--gold)}
.reading-trail{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}
.reading-trail a{display:flex;align-items:center;gap:11px;min-width:0;padding:12px 0;border-bottom:1px solid var(--line)}
.reading-trail a>.icon:first-child{width:17px;color:var(--rose)}
.reading-trail a>.icon:last-child{width:14px;margin-left:auto;color:var(--gold)}
.reading-trail a>span{min-width:0}.reading-trail b{display:block;font:1.05rem var(--serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reading-trail small{color:var(--muted);font-size:.75rem}
.reading-trail a:hover b{color:var(--gold)}
.discovery-shortcuts{grid-column:1/-1;display:flex;align-items:center;gap:25px;border-top:1px solid var(--line);padding-top:16px}
.discovery-shortcuts a,.discovery-shortcuts button{display:inline-flex;align-items:center;gap:12px;font-size:.8rem;color:var(--gold)}
.discovery-shortcuts button{margin-left:auto}.discovery-shortcuts .icon{width:15px;height:15px}

.quick-view,.preferences-dialog{border:1px solid #8c5e70;border-radius:10px;background:#21151e;color:var(--ink);box-shadow:0 25px 120px #000b;padding:0;max-height:88dvh;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.quick-view{width:min(900px,calc(100vw - 40px))}
.quick-view::backdrop,.preferences-dialog::backdrop{background:#09070dbe;backdrop-filter:blur(8px)}
.dialog-topline{display:flex;justify-content:space-between;align-items:center;padding:17px 24px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;background:var(--glass);backdrop-filter:blur(15px);gap:20px}
.dialog-topline .eyebrow{font-size:.75rem;letter-spacing:1.8px}
.dialog-topline .icon-button{border:0}
.quick-layout{display:grid;grid-template-columns:290px minmax(0,1fr)}
.quick-art{background:#170f15;min-height:400px;position:relative}
.quick-art img{height:100%;width:100%;max-height:630px;object-fit:cover;object-position:50% 15%}
.quick-copy{padding:30px 32px;min-width:0}
.quick-copy h2{font-size:2.5rem;margin:12px 0 15px;overflow-wrap:anywhere}
.quick-context{font-size:.8rem;color:var(--gold);padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:22px}
.quick-copy .prose{font-size:1rem;line-height:1.8}
.quick-copy .prose p{margin-bottom:18px}
.quick-layout.without-image{display:block}
.quick-layout.without-image .quick-copy{padding:32px 40px 20px}
.quick-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 25px;background:var(--glass);border-top:1px solid var(--line);position:sticky;bottom:0;z-index:4;backdrop-filter:blur(15px)}
.preview-more{font-size:.8rem;color:var(--muted);font-style:italic;margin-bottom:0}
.preferences-dialog{width:min(550px,calc(100vw - 30px))}
.preferences-content{padding:28px 32px 30px}
.preferences-content h2{font-size:2.2rem;margin:0 0 12px}
.preferences-content>p{font-size:.9rem;color:var(--muted)}
.preferences-content fieldset{border:0;padding:0;margin:27px 0}
.preferences-content legend{font-size:.875rem;color:var(--gold);padding:0;margin-bottom:13px}
.segmented-controls{display:flex;gap:9px}
.segmented-controls>.button{flex:1;display:flex;flex-direction:column;padding:13px 8px;gap:7px;background:#21151d;border-color:var(--line);font-size:.9rem}
.segmented-controls .button>span:first-child{font-family:var(--serif)}
.segmented-controls .button small{font: .75rem var(--sans);color:var(--muted)}
.segmented-controls .button[aria-pressed="true"]{background:#4e293d;border-color:#b0768e;color:#f6dce7;box-shadow:inset 0 0 0 1px #b0768e}
.segmented-controls>.tone-choice{flex-direction:row;gap:12px;text-align:left;padding:15px 12px}
.tone-choice small{display:block;margin-top:3px}
.tone-swatch{width:28px;height:28px;border-radius:50%;border:1px solid #b2949c;flex-shrink:0}
.tone-swatch.velvet{background:linear-gradient(130deg,#8c455f,#21101b)}
.tone-swatch.midnight{background:linear-gradient(130deg,#758398,#11161f)}
.motion-preference{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:24px}
.motion-preference b{font-size:.875rem;font-weight:500;display:block}
.motion-preference small{font-size:.8rem;color:var(--muted);display:block;margin-top:6px}
.motion-preference input{accent-color:#b47394;width:20px;height:20px;flex-shrink:0}
.preferences-content .preference-note{font-size:.75rem;line-height:1.8;margin:24px 0 0}

.reading-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:-13px 0 28px;padding-bottom:20px;border-bottom:1px solid var(--line-soft)}
.reading-tools>div{display:flex;gap:9px}
.read-duration{font-size:.8rem;color:var(--muted);display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.read-duration .icon{width:16px;color:var(--gold)}
.read-duration i{font-style:normal;color:#715065}
.reading-tools .button{font-size:.8rem;padding:7px 12px;min-height:38px}
#reader-size-button{font-family:var(--serif);font-size:1.15rem}
.reader-body>.prose{font-size:var(--reading-size);line-height:1.95}
.reader-body .reader-section>.prose,.reader-body .opening-scene{font-size:var(--reading-size)}
.reader-body .biography-heading{font-size:1.85rem;color:var(--gold);margin:35px 0 15px;padding-top:20px;border-top:1px solid var(--line-soft)}
.reader-toc{border:1px solid var(--line);background:var(--panel);border-radius:4px;padding:22px 18px;position:sticky;top:105px;margin-top:4px;max-height:calc(100dvh - 130px);overflow:auto;scrollbar-width:thin}
.reader-toc .eyebrow{font-size:.75rem;letter-spacing:1.5px;margin:0 10px 15px}
.reader-toc>a{display:block;padding:8px 10px;border-left:1px solid var(--line);color:var(--muted);font-size:.8rem;line-height:1.6;transition:color .2s,background .2s}
.reader-toc>a:hover,.reader-toc>a.active{color:var(--gold);background:#7e465d1a;border-left:2px solid var(--rose);padding-left:9px}
.toc-top{font-size:.75rem;color:var(--gold);margin:17px 0 0;padding:0 10px;text-align:left}
.mobile-contents{display:none}
.reader-layout .reader-aside{min-width:0}
.reader-layout:has(.reader-toc){gap:35px}
.connected-section{margin-top:42px;border-top:1px solid var(--line);padding-top:28px}
.connected-section .section-heading h2{font-size:1.9rem}
.connection-caption{color:var(--muted);font-size:.75rem;text-align:right}
.connection-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.connection-card{display:flex;align-items:center;gap:13px;border:1px solid var(--line);background:var(--panel);padding:13px;border-radius:4px;min-width:0;transition:border-color .2s}
.connection-card:hover{border-color:var(--rose)}
.connection-card>img{width:48px;height:65px;object-fit:cover;object-position:50% 15%;border-radius:2px;flex-shrink:0}
.connection-symbol{width:36px;flex-shrink:0;display:grid;place-items:center;color:var(--gold)}
.connection-card>span:not(.connection-symbol){min-width:0;flex:1}
.connection-card small{display:block;color:var(--rose);font-size:.75rem;line-height:1.45;margin-bottom:5px}
.connection-card b{display:block;font:1.1rem/1.3 var(--serif);color:var(--ink);overflow-wrap:anywhere}
.connection-card>span>span{display:block;font-size:.75rem;color:var(--muted);margin-top:5px}
.connection-card>.icon{width:13px;color:var(--gold);flex-shrink:0}
.margin-notes{margin-top:30px;border:1px solid #765064;background:#251922;border-radius:5px;overflow:hidden}
.margin-notes summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 23px}
.margin-notes summary>span{display:flex;align-items:center;gap:12px;font:1.3rem var(--serif)}
.margin-notes summary .icon{width:19px;color:var(--gold)}
.margin-notes summary>small{font-size:.75rem;color:var(--muted)}
.note-editor{padding:0 23px 23px}
.note-editor label{display:block;font-size:.875rem;color:var(--gold);margin-bottom:12px}
.note-editor textarea{display:block;width:100%;resize:vertical;min-height:150px;max-height:500px;padding:15px;border:1px solid var(--line);background:#171118;color:var(--ink);font:1rem/1.75 var(--sans);border-radius:4px}
.note-editor textarea:focus{outline:1px solid var(--gold);outline-offset:3px}
.note-editor textarea::placeholder{color:#9e8292}
.note-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:14px}
.note-footer>span{font-size:.75rem;color:var(--muted)}
.note-footer .button{font-size:.8rem}
body.focus-reading .sidebar,body.focus-reading .site-footer{display:none}
body.focus-reading .site{margin-left:0}
body.focus-reading #main{max-width:1100px;padding-left:45px;padding-right:45px}
body.focus-reading .reader-layout{grid-template-columns:minmax(0,740px);justify-content:center}
body.focus-reading .reader-aside{display:none}
body.focus-reading .reading-tools{position:sticky;top:78px;z-index:20;margin-bottom:30px;background:var(--bg);padding-top:14px}
body.focus-reading .reader-body>.prose{line-height:2.05}
body.focus-reading .mobile-contents{display:block;max-width:740px;margin-left:auto;margin-right:auto}
body.focus-reading #toast{left:50%}
body.focus-reading .mobile-menu{display:none}

.search-scopes{padding:12px 18px;display:flex;gap:7px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin}
.search-scopes button{padding:7px 12px;border-radius:20px;border:1px solid var(--line);font-size:.8rem;color:var(--muted);white-space:nowrap}
.search-scopes button[aria-pressed="true"]{background:#573048;color:#f1d5e5;border-color:#906279}
.search-thumb{width:38px;height:49px;object-fit:cover;object-position:50% 15%;border-radius:3px;flex-shrink:0}
.search-result.keyboard-active{background:#44283b;outline:1px solid #81556e;outline-offset:-1px}
.search-result>span{min-width:0;flex:1}
.search-result b{font-size:1.4rem}
.search-result small{font-size:.8rem;line-height:1.7}
#global-results{max-height:calc(80vh - 210px)}

@media(min-width:1600px){.quick-view{width:980px}.quick-layout{grid-template-columns:330px minmax(0,1fr)}.reader-layout{grid-template-columns:minmax(0,1fr) 300px}.reader-toc>a{font-size:.875rem}.reading-trail b{font-size:1.2rem}.card-tool{width:39px;height:39px}}
@media(max-width:1200px){.discovery-desk{grid-template-columns:1fr;padding:25px;gap:20px}.discovery-desk-title h2{max-width:none}.reader-layout:has(.reader-toc){gap:25px}.connection-grid{grid-template-columns:1fr}.collection-display{gap:12px}.card-copy h3{font-size:1.55rem}.top-actions{gap:14px}.reading-tools{flex-wrap:wrap}.preferences-launch{width:34px;height:34px}.search-launch kbd{display:none}}
@media(max-width:1000px){.reader-toc{display:none}.mobile-contents{display:block;margin:0 0 28px;border:1px solid var(--line);border-radius:4px;background:var(--panel);padding-bottom:0}.mobile-contents summary{padding:13px 17px;font-size:.875rem;color:var(--gold)}.mobile-contents summary span{font-size:.75rem;color:var(--muted)}.mobile-contents button{display:block;text-align:left;width:100%;padding:10px 17px;color:var(--muted);font-size:.875rem}.mobile-contents button:hover{color:var(--gold);background:var(--panel2)}.mobile-contents[open]{padding-bottom:10px}.quick-layout{grid-template-columns:235px minmax(0,1fr)}.quick-copy{padding:25px}.quick-copy h2{font-size:2.2rem}.connection-grid{grid-template-columns:1fr 1fr}.topbar .breadcrumb{max-width:130px;white-space:nowrap;overflow:hidden}.topbar .breadcrumb b{overflow:hidden;text-overflow:ellipsis}.collection-controls{align-items:flex-start}.collection-display{flex-shrink:0}.discovery-shortcuts{gap:18px;flex-wrap:wrap}.discovery-shortcuts button{margin-left:0}}
@media(max-width:760px){
 .top-actions{gap:15px}.preferences-launch{width:32px;height:32px;font-size:17px}.topbar .breadcrumb{font-size:.875rem;max-width:145px}
 .opening-copy h1{font-size:3.85rem}.opening{min-height:440px}.opening-art{animation:none!important}.section-heading h2{font-size:1.9rem}
 .discovery-desk{padding:23px 21px;margin-bottom:34px}.discovery-desk-title h2{font-size:1.65rem;line-height:1.3}.discovery-desk .eyebrow{font-size:.75rem}.reading-trail{grid-template-columns:1fr}.reading-trail a{padding:11px 0}.reading-trail b{font-size:1.2rem}.reading-trail small{font-size:.8rem}.discovery-search{padding:15px}.discovery-search span{font-size:.875rem}.discovery-search kbd{display:none}.discovery-shortcuts{gap:17px}.discovery-shortcuts a,.discovery-shortcuts button{font-size:.875rem;gap:8px}
 .card-utilities{right:8px;top:8px;gap:5px}.card-tool{width:34px;height:34px}.card-tool .icon{width:15px}.entry-card:not(:has(.card-image)) .card-copy>.eyebrow{min-height:30px;padding-right:72px}.card-copy h3{font-size:1.55rem}
 .collection-controls{flex-direction:column;gap:12px;padding-top:14px}.collection-display{width:100%;justify-content:space-between}.collection-display .text-link{font-size:.875rem}.view-toggle button{width:41px;height:37px}.filter-chip{font-size:.875rem}.results-meta{font-size:.8rem;gap:20px}
 .entry-grid.list-view{display:flex!important}.list-view .entry-card{grid-template-columns:76px minmax(0,1fr);min-height:155px}.list-view .card-image{min-height:155px}.list-view .card-copy{padding:51px 14px 17px!important}.list-view .card-copy>.eyebrow{display:none}.list-view .card-copy h3{font-size:1.25rem;margin:0 0 8px;padding-right:0}.list-view .card-copy p{font-size:.875rem;-webkit-line-clamp:2;line-height:1.65;padding-right:6px}.list-view .card-bottom{right:12px;bottom:11px;display:none}.list-view .entry-card:not(:has(.card-image)) .card-copy{padding:20px 90px 20px 19px!important}.list-view .entry-card:not(:has(.card-image)) .card-copy h3{font-size:1.35rem}.list-view .entry-card:not(:has(.card-image)) .card-copy p{-webkit-line-clamp:3}.list-view .card-utilities{right:11px;top:10px}
 .quick-view{width:calc(100vw - 20px);max-height:91dvh;border-radius:12px}.quick-layout{display:block}.quick-art{min-height:0;height:260px}.quick-art img{width:100%;height:260px;object-position:50% 22%}.quick-copy,.quick-layout.without-image .quick-copy{padding:23px}.quick-copy h2{font-size:2rem}.quick-copy .prose{font-size:1rem}.dialog-topline{padding:10px 16px}.dialog-topline .eyebrow{font-size:.75rem;letter-spacing:1px}.dialog-topline .icon-button{min-width:40px;min-height:40px}.quick-footer{padding:16px;gap:10px}.quick-footer .button{font-size:.875rem;padding:10px 12px;gap:8px}.quick-footer .icon{width:16px}.quick-context{font-size:.875rem}.preview-more{font-size:.875rem}
 .preferences-content{padding:24px}.preferences-content h2{font-size:2rem}.preferences-content>p{font-size:1rem}.segmented-controls{gap:7px}.segmented-controls .button{min-width:0}.segmented-controls .button small{font-size:.75rem}.segmented-controls>.tone-choice{flex-direction:column;align-items:flex-start;gap:10px}.preferences-content legend{font-size:.95rem}.motion-preference b{font-size:1rem}.motion-preference small{font-size:.875rem}.preferences-content .preference-note{font-size:.8rem}
 .reading-tools{gap:14px;margin-top:-4px;padding-bottom:18px}.reading-tools>div{margin-left:auto}.read-duration{font-size:.8rem;gap:8px}.reading-tools .button{font-size:.875rem;min-height:40px}.reading-tools .read-duration i{display:none}.reading-tools .read-duration{max-width:150px}.reader-body .biography-heading{font-size:1.7rem}.mobile-contents summary,.mobile-contents button{font-size:.95rem}.mobile-contents summary span{font-size:.8rem}
 .reader-layout .reader-toc{display:none}.reader-layout:has(.reader-toc){gap:28px}.reader-body>.prose,.reader-body .reader-section>.prose,.reader-body .opening-scene{font-size:var(--reading-size);overflow-wrap:anywhere}.connected-section{padding-top:25px}.connected-section .section-heading{gap:12px}.connected-section .section-heading h2{font-size:1.85rem}.connection-caption{font-size:.8rem;text-align:left}.connection-grid{grid-template-columns:1fr}.connection-card{padding:15px}.connection-card small,.connection-card>span>span{font-size:.8rem}.connection-card b{font-size:1.25rem}.connection-card>img{width:50px;height:65px}
 .margin-notes summary{padding:19px;align-items:flex-start;flex-direction:column;gap:9px}.margin-notes summary>span{font-size:1.4rem}.margin-notes summary>small{font-size:.8rem;margin-left:30px}.note-editor{padding:0 19px 19px}.note-editor label{font-size:.95rem}.note-footer{flex-wrap:wrap}.note-footer>span{font-size:.8rem}.note-footer .button{font-size:.875rem}.note-editor textarea{font-size:1rem}
 body.focus-reading #main{padding:25px 20px}body.focus-reading .reading-tools{top:65px;flex-wrap:wrap}body.focus-reading .reader-layout{display:block}body.focus-reading .reader-aside{display:none}body.focus-reading .mobile-contents{margin-bottom:28px}
 .search-scopes{padding:11px 13px}.search-scopes button{font-size:.875rem;padding:8px 12px}.search-result b{font-size:1.35rem}.search-result small{font-size:.8rem}.search-result{gap:12px;padding:13px 10px}.search-thumb{width:35px;height:47px}.search-dialog-header input{font-size:1rem}.search-dialog-footer{font-size:.75rem;gap:15px}.search-caption{font-size:.75rem}#global-results{max-height:calc(80dvh - 210px)}
}
@media(max-width:380px){.quick-footer .button{font-size:.8rem}.quick-footer .button .icon{display:none}.opening-copy h1{font-size:3.5rem}.collection-display{gap:10px}.collection-display .text-link{font-size:.8rem}.segmented-controls .button small{font-size:.75rem}.preferences-content{padding:21px}.top-actions{gap:13px}}
@media print{.reveal-item{opacity:1!important;transform:none!important}.reading-tools,.reading-progress,.reader-toc,.mobile-contents,.margin-notes,.card-utilities,.preferences-launch,.connected-section,.discovery-desk{display:none!important}.entry-card{break-inside:avoid}.prose{font-size:12pt!important}.reader-body{max-width:100%}}

/* New world references and the authored main theme. */
.hero-theme{margin-top:20px;padding:7px 0;color:var(--gold);font-size:12px}.hero-theme:hover{color:var(--ink)}.company-links>.muted{font-size:14px;line-height:1.7}.culture-links .reference-chip,.company-links .reference-chip{white-space:normal;text-wrap:pretty}.builder-actions{flex-wrap:wrap}.builder-actions [data-play-theme]{gap:8px}

/* soundtrack.css */
/* A persistent, quiet companion to the reader. Colors follow the chosen atmosphere. */
.topbar .breadcrumb{min-width:0;overflow:hidden;flex:1;gap:12px}
.topbar .breadcrumb b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topbar .top-actions{gap:18px;flex-shrink:0}
.soundtrack-bar{display:flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:7px;padding:4px;background:var(--panel);min-width:0;flex-shrink:0}
.soundtrack-toggle{display:flex;align-items:center;justify-content:center;background:var(--wine);border:1px solid var(--rose);border-radius:50%;width:34px;height:34px;padding:0;color:var(--ink);flex-shrink:0;transition:background .2s,transform .2s}
.soundtrack-toggle:hover{background:var(--rose)}
.soundtrack-toggle:active{transform:scale(.95)}
.soundtrack-toggle .icon{width:20px;height:20px}
.soundtrack-launch{display:flex;align-items:center;gap:12px;text-align:left;padding:2px 10px 2px 8px;min-height:34px;max-width:205px;color:var(--gold)}
.soundtrack-mini-copy{display:grid;min-width:0;gap:1px}
.soundtrack-mini-copy small{font-size:8px;letter-spacing:1.2px;line-height:1.5;color:var(--muted)}
.soundtrack-mini-copy b{font-size:12px;font-weight:500;line-height:1.5;max-width:148px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}
.soundtrack-launch>.icon{width:17px;height:17px}
.soundtrack-chevron{font-size:17px;line-height:1}
.soundtrack-launch[aria-expanded="true"] .soundtrack-chevron{transform:rotate(180deg)}
.soundtrack-bars{display:none;height:17px;gap:2px;align-items:center}
.soundtrack-bars i{height:100%;width:2px;background:var(--gold);transform:scaleY(.4);border-radius:2px}
.soundtrack-bars i:nth-child(2){transform:scaleY(.85)}
.soundtrack-bars i:nth-child(3){transform:scaleY(.6)}
.soundtrack-bar.is-playing .soundtrack-bars{display:flex}
.soundtrack-bar.is-playing .soundtrack-launch>.icon{display:none}
.soundtrack-bar.has-error{border-color:var(--rose)}
.soundtrack-dialog{width:min(780px,calc(100vw - 32px));max-height:90dvh;margin:auto;padding:0;border:1px solid var(--rose);border-radius:12px;background:var(--panel);color:var(--ink);box-shadow:0 30px 120px #000b;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.soundtrack-dialog::backdrop{background:#09070dbe;backdrop-filter:blur(8px)}
.soundtrack-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 30px 22px}
.soundtrack-intro h2{font-size:32px;margin:0 0 6px}
.soundtrack-intro p{font-size:13px;color:var(--muted);margin:0}
.soundtrack-library-count{font-family:var(--serif);font-size:23px;text-align:right;color:var(--gold);white-space:nowrap}
.soundtrack-library-count span{display:block;font:11px var(--sans);color:var(--muted);margin-top:5px}
.soundtrack-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:25px;padding:0 30px 25px;align-items:start}
.soundtrack-deck{padding:24px 20px 16px;text-align:center;border:1px solid var(--line);border-radius:8px;background:linear-gradient(160deg,color-mix(in srgb,var(--wine) 26%,transparent),transparent 55%),var(--bg)}
.soundtrack-seal{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 20px;border-radius:50%;border:1px solid var(--line);box-shadow:0 0 0 6px color-mix(in srgb,var(--wine) 12%,transparent);background:repeating-radial-gradient(circle,transparent 0 6px,color-mix(in srgb,var(--gold) 9%,transparent) 7px 8px),var(--panel)}
.soundtrack-seal span{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--rose);border-radius:50%;background:var(--wine);color:var(--gold)}
.soundtrack-deck>.eyebrow{font-size:9px;letter-spacing:1.5px}
.soundtrack-deck h3{font-size:27px;overflow-wrap:anywhere;margin:9px 0}
#soundtrack-tags{font-size:11px;color:var(--muted);min-height:35px;margin:0 0 14px;line-height:1.6}
.soundtrack-variation{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;font-size:11px;color:var(--muted)}
.soundtrack-variation select{font-size:11px;padding:7px 10px;background:var(--panel);flex:1;min-width:0}
.soundtrack-transport{display:flex;align-items:center;justify-content:center;gap:18px;margin:20px 0 15px}
.soundtrack-transport .icon-button{border:0;width:38px;height:38px;min-width:38px;min-height:38px;padding:9px;color:var(--gold)}
.soundtrack-main-toggle{width:49px;height:49px;box-shadow:0 0 0 5px color-mix(in srgb,var(--wine) 22%,transparent)}
.soundtrack-main-toggle .icon{width:24px;height:24px}
.soundtrack-dialog input[type="range"]{display:block;appearance:none;width:100%;height:26px;padding:0;margin:0;border:0;outline-offset:3px;cursor:pointer;background:transparent;accent-color:var(--gold);border-radius:0}
.soundtrack-dialog input[type="range"]:disabled{opacity:.35;cursor:default}
.soundtrack-dialog input[type="range"]::-webkit-slider-runnable-track{height:3px;background:linear-gradient(to right,var(--gold) var(--track-progress,0%),var(--line) var(--track-progress,0%));border-radius:5px}
.soundtrack-dialog input[type="range"]::-webkit-slider-thumb{appearance:none;width:11px;height:11px;border:2px solid var(--gold);background:var(--gold);border-radius:50%;margin-top:-4px}
.soundtrack-dialog input[type="range"]::-moz-range-track{height:3px;background:var(--line)}
.soundtrack-dialog input[type="range"]::-moz-range-progress{height:3px;background:var(--gold)}
.soundtrack-dialog input[type="range"]::-moz-range-thumb{height:8px;width:8px;background:var(--gold);border:1px solid var(--gold);border-radius:50%}
.soundtrack-timeline>div{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}
.soundtrack-volume{display:flex;align-items:center;gap:9px;margin-top:16px}
.soundtrack-volume button{display:grid;place-items:center;min-width:30px;height:32px;padding:4px;color:var(--muted)}
.soundtrack-volume .icon{width:18px;height:18px}
.soundtrack-volume output{font-size:10px;min-width:31px;color:var(--muted);font-variant-numeric:tabular-nums}
.soundtrack-status{font-size:11px;color:var(--muted);line-height:1.65;min-height:36px;margin:12px 0 0}
.soundtrack-library{min-width:0}
.soundtrack-library .search-field{margin:0;background:var(--bg);min-width:0}
.soundtrack-library .search-field input{font-size:13px;width:100%}
.soundtrack-list-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:1px;color:var(--muted);padding:17px 0 10px}
#soundtrack-list{max-height:400px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding:3px 6px 3px 3px}
.soundtrack-row{display:flex;align-items:center;gap:12px;width:100%;padding:12px 10px;text-align:left;border:1px solid transparent;border-bottom-color:var(--line-soft);border-radius:5px;transition:background .2s,border-color .2s}
.soundtrack-row:hover{background:var(--panel2)}
.soundtrack-row[aria-current="true"]{border-color:var(--rose);background:color-mix(in srgb,var(--wine) 23%,transparent)}
.soundtrack-row-symbol{display:grid;place-items:center;width:27px;height:30px;color:var(--muted);flex-shrink:0}
.soundtrack-row-symbol .icon{width:17px;height:17px}
.soundtrack-row[aria-current="true"] .soundtrack-row-symbol{color:var(--gold)}
.soundtrack-row-copy{display:grid;min-width:0;flex:1;gap:4px}
.soundtrack-row-copy b{font:400 19px/1.2 var(--serif);overflow-wrap:anywhere}
.soundtrack-row-copy small{font-size:10px;line-height:1.5;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.soundtrack-row-count{text-align:right;font-size:12px;color:var(--gold);font-variant-numeric:tabular-nums}
.soundtrack-row-count small{display:block;color:var(--muted);font-size:9px}
.soundtrack-empty{text-align:center;padding:40px 10px;color:var(--muted);font-size:13px}
.soundtrack-footnote{text-align:center;padding:14px 20px;border-top:1px solid var(--line-soft);color:var(--muted);font-size:11px}
html[data-motion="full"] .soundtrack-dialog[open]{animation:dialog-arrival .25s var(--ease-out)}
html[data-motion="full"] .soundtrack-bar.is-playing .soundtrack-bars i{animation:soundtrack-pulse 1.15s ease-in-out infinite alternate}
html[data-motion="full"] .soundtrack-bar.is-playing .soundtrack-bars i:nth-child(2){animation-delay:-.5s}
html[data-motion="full"] .soundtrack-bar.is-playing .soundtrack-bars i:nth-child(3){animation-delay:-.8s}
html[data-motion="full"] .soundtrack-bar.is-playing .soundtrack-bars i:nth-child(4){animation-delay:-.2s}
@keyframes soundtrack-pulse{from{transform:scaleY(.25)}to{transform:scaleY(.95)}}
@media(max-width:1350px){.topbar .search-launch span,.topbar .search-launch kbd{display:none}.topbar .breadcrumb{max-width:200px}.topbar .top-actions{gap:14px}.topbar{gap:18px}.soundtrack-launch{max-width:185px}}
@media(max-width:1100px){.topbar .spoiler-toggle span{display:none}.topbar .breadcrumb{max-width:150px}.soundtrack-mini-copy small{display:none}.soundtrack-mini-copy b{max-width:120px}}
@media(max-width:760px){.topbar{gap:10px}.topbar .top-actions{gap:12px}.soundtrack-mini-copy,.soundtrack-chevron{display:none}.soundtrack-launch{padding:4px 6px;gap:0;min-width:29px;justify-content:center}.soundtrack-bar{padding:3px;gap:1px}.soundtrack-toggle{width:32px;height:32px}.topbar .breadcrumb{max-width:120px;gap:8px}.topbar .breadcrumb>span{display:none}}
@media(max-width:540px){.soundtrack-dialog{width:calc(100vw - 20px);max-height:92dvh}.soundtrack-intro{padding:20px}.soundtrack-intro h2{font-size:27px}.soundtrack-library-count{font-size:20px}.soundtrack-layout{grid-template-columns:minmax(0,1fr);gap:20px;padding:0 20px 20px}.soundtrack-deck{padding:17px 18px;display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:15px;text-align:left}.soundtrack-seal{width:52px;height:52px;grid-row:1/4;margin:2px 0 0}.soundtrack-seal span{width:30px;height:30px}.soundtrack-seal .icon{width:16px;height:16px}.soundtrack-deck>.eyebrow{font-size:8px}.soundtrack-deck h3{font-size:25px;margin:5px 0}.soundtrack-deck #soundtrack-tags{min-height:0;margin:0 0 13px;font-size:10px}.soundtrack-variation,.soundtrack-transport,.soundtrack-timeline,.soundtrack-volume,.soundtrack-status{grid-column:1/-1}.soundtrack-transport{margin:15px 0 4px}.soundtrack-volume{margin-top:8px}.soundtrack-status{min-height:0;margin:8px 0 0;text-align:center}.soundtrack-footnote{font-size:10px}#soundtrack-list{max-height:280px}.soundtrack-row{padding:11px 10px}.soundtrack-list-caption{padding-top:13px}}
@media(max-width:430px){.topbar{padding:0 12px;gap:9px}.topbar .breadcrumb{display:none}.topbar .top-actions{margin-left:auto;gap:12px}.topbar .search-launch,.topbar .spoiler-toggle{min-width:30px;min-height:40px;justify-content:center;padding:5px}.topbar .preferences-launch{width:34px;height:38px}.soundtrack-bar{margin-right:2px}}
@media(prefers-reduced-motion:reduce){.soundtrack-dialog[open],.soundtrack-bar .soundtrack-bars i{animation:none!important}.soundtrack-toggle,.soundtrack-row{transition:none}}
@media print{.soundtrack-dialog{display:none!important}}

/* atmosphere.css */
/* The night garden: engraved roses, moving candlelight, and falling petals. */
:root{--petal-light:#c37789;--petal-dark:#793248;--night-rose:#733047;--night-gold:#ad794b}
html[data-tone="midnight"]{--petal-light:#b69bbf;--petal-dark:#635272;--night-rose:#47405c;--night-gold:#797587}
#app{position:relative;z-index:1}
.night-atmosphere,.opening-ambience{pointer-events:none;user-select:none;overflow:hidden}
.night-atmosphere{position:fixed;inset:0;z-index:0;contain:strict}
.night-glow{position:absolute;width:min(70vw,950px);height:80vh;border-radius:50%;opacity:.27;animation:candle-breath 15s ease-in-out infinite alternate}
.night-glow-rose{right:-20%;top:-18%;background:radial-gradient(ellipse,var(--night-rose),transparent 68%)}
.night-glow-gold{left:12%;bottom:-48%;background:radial-gradient(ellipse,var(--night-gold),transparent 68%);animation-delay:-7s;opacity:.13}
.night-vine{position:absolute;right:-50px;top:6%;height:100%;width:240px;color:var(--rose);opacity:.19;transform:rotate(-8deg)}
.night-vine-left{left:230px;right:auto;top:30%;opacity:.1;transform:scaleX(-1) rotate(-12deg)}
.night-petals,.hero-petals{position:absolute;inset:0;overflow:hidden}
.petal-flight{position:absolute;left:var(--petal-x);top:-60px;width:var(--petal-size);height:calc(var(--petal-size) * 1.3);opacity:0;animation:petal-fall var(--fall) linear var(--delay) infinite}
.petal-flight svg{width:100%;height:100%;overflow:visible;fill:var(--petal-dark);stroke:var(--petal-light);stroke-width:.65;animation:petal-turn 9s ease-in-out var(--delay) infinite alternate;transform:rotate(var(--turn))}
.petal-fold{fill:none;stroke-opacity:.55}
.night-petals{opacity:.5}
body[data-scene="reading"] .night-atmosphere{opacity:.42}
body.focus-reading .night-atmosphere{display:none}
.opening{min-height:460px;border-color:#906373;box-shadow:0 22px 70px #09060b55,0 0 40px #6b304114}
.opening-copy{position:relative;z-index:1}
.opening-ambience{position:absolute;inset:0;z-index:-1}
.opening-candlelight{position:absolute;inset:-20%;background:radial-gradient(ellipse at 88% 65%,#d8994c30,transparent 44%),radial-gradient(ellipse at 56% 15%,#a9405938,transparent 53%);animation:candle-breath 11s ease-in-out infinite alternate;mix-blend-mode:screen}
.moon-seal{position:absolute;right:-48px;top:-48px;width:380px;max-width:46%;stroke:#eccfa0;stroke-width:.85;opacity:.45;animation:moon-breath 14s ease-in-out infinite alternate}
.seal-moon{fill:#efcc9a0d;stroke-width:1.2}
.opening-rose{position:absolute;bottom:14px;right:20px;width:105px;color:#d497a4;opacity:.66;transform:rotate(-18deg)}
.hero-petals{left:38%;opacity:.85}
.hero-petals .petal-flight{--travel:600px}
.statistics a{position:relative;transition:background .25s}
.statistics a:after{content:'↗';position:absolute;right:8px;top:50%;color:var(--gold);opacity:0;transform:translate(-4px,-50%);transition:opacity .2s,transform .2s}
.statistics a:hover,.statistics a:focus-visible{background:linear-gradient(0deg,#b9657c12,transparent)}
.statistics a:hover:after,.statistics a:focus-visible:after{opacity:1;transform:translate(0,-50%)}
.statistics a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.court-tile{transition:box-shadow .35s,border-color .35s,transform .35s}
.court-tile:hover{box-shadow:0 14px 36px #0005,0 0 24px #b9657c15;transform:translateY(-3px)}
@keyframes petal-fall{0%{transform:translate3d(0,0,0);opacity:0}10%{opacity:.75}88%{opacity:.55}100%{transform:translate3d(var(--sway),var(--travel,calc(100vh + 100px)),0);opacity:0}}
@keyframes petal-turn{0%{transform:rotate(var(--turn)) scaleX(.65)}50%{transform:rotate(calc(var(--turn) + 85deg)) scaleX(1)}100%{transform:rotate(calc(var(--turn) + 170deg)) scaleX(.45)}}
@keyframes candle-breath{from{transform:translate3d(-2%,0,0) scale(.95);opacity:.2}to{transform:translate3d(2%,2%,0) scale(1.06);opacity:.42}}
@keyframes moon-breath{from{transform:rotate(-4deg);opacity:.34}to{transform:rotate(4deg);opacity:.53}}
html[data-page-visibility="hidden"] :is(.night-atmosphere,.opening-ambience) *,body.focus-reading .night-atmosphere *{animation-play-state:paused!important}
html[data-motion="reduced"] :is(.night-atmosphere,.opening-ambience) *{animation:none!important}
html[data-motion="reduced"] :is(.night-petals,.hero-petals){display:none}
@media(prefers-reduced-motion:reduce){.night-atmosphere *,.opening-ambience *{animation:none!important}.night-petals,.hero-petals{display:none}.court-tile:hover{transform:none}}
@media(max-width:1200px){.night-vine-left{left:220px}.opening{min-height:440px}.moon-seal{width:330px;right:-65px;top:-35px}.statistics a:after{right:3px;font-size:12px}}
@media(max-width:760px){
 .night-vine-left{display:none}.night-vine-right{right:-100px;opacity:.14}.night-glow{width:110vw}.night-glow-gold{left:-30%}
 .night-petals .petal-flight:nth-child(n+6),.hero-petals .petal-flight:nth-child(n+5){display:none}
 .opening{min-height:445px}.moon-seal{width:255px;max-width:65%;right:-65px;top:-30px;opacity:.35}.opening-rose{width:75px;right:4px;bottom:3px}.hero-petals{left:55%}
 .statistics a:after{display:none}
 .statistics{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px 0 0;gap:0}
 .statistics a:nth-child(n){display:flex;min-height:74px;gap:12px;padding:12px 8px;border-bottom:1px solid var(--line-soft)}
 .statistics a:nth-child(2n){border-right:0}
 .statistics a:last-child{grid-column:1/-1;border:0;gap:18px}
 .statistics span{max-width:88px;font-size:12px}
 .statistics strong{font-size:32px;flex-shrink:0}
}
@media print{.night-atmosphere,.opening-ambience{display:none!important}}

/* expansion.css */
/* Masquerade edition: the artwork keeps its complete composition and wordmark. */
.cover-edition.opening{display:block;min-height:0;overflow:hidden;background:var(--panel);border-color:var(--line)}
.cover-edition .opening-art{position:relative;display:block;inset:auto;width:100%;height:auto;aspect-ratio:1599/900;object-fit:contain;z-index:0;animation:none!important}
.cover-edition .opening-copy{max-width:none;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(115deg,#341d28,var(--panel))}
.cover-edition .opening-copy h1{font:400 clamp(1.8rem,2.5vw,2.8rem)/1.15 var(--serif);margin:9px 0 10px;letter-spacing:-.5px;width:auto}
.cover-edition .opening-copy p{font-size:15px;margin:0;max-width:440px}
.cover-edition .opening-copy .eyebrow{font-size:12px;letter-spacing:1.5px}
.cover-edition .opening-actions{flex-direction:column;align-items:flex-start;gap:14px;flex-shrink:0}
.cover-edition .hero-theme{margin:0;font-size:14px;white-space:nowrap}
.cover-edition .opening-ambience{z-index:0;bottom:180px}
.cover-edition .moon-seal,.cover-edition .opening-rose,.cover-edition:after{display:none}
.cover-edition .hero-petals{left:0;opacity:.55}
@media(max-width:1000px){.cover-edition .opening-copy{align-items:flex-start;flex-direction:column;padding:25px}.cover-edition .opening-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:18px}}
@media(max-width:760px){.cover-edition .opening-copy{padding:24px 22px;gap:20px}.cover-edition .opening-copy h1{font-size:2rem}.cover-edition .opening-actions{flex-direction:column;align-items:flex-start}.cover-edition .opening-ambience{display:none}}

/* An invitation, with immediate ways to enter and the complete cover preserved. */
body.is-welcome .sidebar,body.is-welcome .topbar,body.is-welcome .site-footer{display:none}
body.is-welcome .site{margin-left:0}
body.is-welcome #main{padding:0;max-width:none}
body.is-welcome .night-atmosphere{opacity:.65}
.welcome-stage{min-height:100svh;max-width:1600px;margin:auto;padding:28px 48px 22px;display:flex;flex-direction:column;align-items:center}
.welcome-masthead,.welcome-footer{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1320px}
.welcome-masthead>span{font-size:12px;letter-spacing:3px;color:var(--gold)}
.welcome-masthead i{font-style:normal;margin:0 12px;color:var(--rose)}
.welcome-masthead .text-link{font-size:14px}
.welcome-art-frame{position:relative;width:min(100%,1000px);margin:32px auto 0;overflow:hidden;border:1px solid #bc916a66;box-shadow:0 30px 120px #0009,0 0 80px #b67a4220;isolation:isolate}
.welcome-art{display:block;width:100%;height:auto;aspect-ratio:1599/900;object-fit:contain}
.welcome-art-frame:after{content:'';position:absolute;inset:8px;border:1px solid #d7b88c44;pointer-events:none}
.welcome-light{position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 25%,#f2cf9b22 48%,transparent 71%);transform:translateX(-100%)}
.welcome-invitation{position:relative;text-align:center;padding:32px 20px 24px}
.welcome-invitation>.eyebrow{font-size:12px;letter-spacing:2.5px}
.welcome-invitation h1{font:400 clamp(2.5rem,4vw,4.3rem)/1.1 var(--serif);margin:14px 0 12px;letter-spacing:-1px}
.welcome-invitation p{font-size:16px;line-height:1.8;color:var(--muted);margin:0}
.welcome-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:25px 0 14px}
.welcome-actions .button{min-height:50px;padding:12px 24px;font-size:15px}
.welcome-invitation>small{color:var(--muted);font-size:12px}
.welcome-footer{margin-top:auto;padding-top:22px;border-top:1px solid var(--line-soft);color:var(--muted);font-size:12px;letter-spacing:1px}
.welcome-footer button{font-size:14px;letter-spacing:0}
html[data-motion="full"] .welcome-art-frame{animation:invitation-art 1.3s var(--ease-out) both}
html[data-motion="full"] .welcome-invitation{animation:invitation-copy .9s var(--ease-out) .3s backwards}
html[data-motion="full"] .welcome-light{animation:invitation-light 3.4s ease-in-out .45s forwards}
html[data-motion="full"] .welcome-stage.is-leaving{animation:invitation-leave .36s ease forwards;pointer-events:none}
@keyframes invitation-art{from{opacity:0;transform:scale(1.025) translateY(12px)}to{opacity:1;transform:none}}
@keyframes invitation-copy{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes invitation-light{to{transform:translateX(100%)}}
@keyframes invitation-leave{to{opacity:0;transform:translateY(-8px)}}

.new-doorways{margin:45px 0 50px}
.doorway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.doorway{position:relative;padding:28px 25px;border:1px solid var(--line);background:linear-gradient(145deg,#71334a27,transparent 75%),var(--panel);overflow:hidden;transition:transform .25s,border-color .25s}
.doorway:hover{transform:translateY(-4px);border-color:var(--rose)}
.doorway>.icon{width:29px;height:29px;color:var(--rose);margin-bottom:22px}
.doorway-number{position:absolute;right:22px;top:16px;font:italic 48px var(--serif);color:var(--gold);opacity:.22}
.doorway h3{font:400 28px/1.1 var(--serif);margin:0 0 12px}
.doorway p{font-size:15px;color:var(--muted);margin:0 0 24px;max-width:240px}
.doorway .text-link{font-size:14px}
.compare-controls,.story-controls{display:flex;align-items:end;gap:16px;margin:0 0 22px;flex-wrap:wrap}
.compare-controls label,.story-controls label{display:grid;gap:8px;font-size:14px;color:var(--muted);flex:1;min-width:180px}
.compare-controls select,.story-controls select{width:100%;min-height:48px;font-size:15px}
.compare-controls>.button,.compare-swap,.story-controls>.button{min-height:48px}
.compare-swap{font-size:27px;width:46px;color:var(--gold);border:1px solid var(--line)}
.comparison-context{border-left:2px solid var(--rose);padding:13px 18px;background:var(--panel);color:var(--muted);font-size:15px;margin-bottom:26px}
.portrait-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.comparison-person{border:1px solid var(--line);background:var(--panel);min-width:0}
.comparison-image{position:relative;overflow:hidden;aspect-ratio:5/4}
.comparison-image img{width:100%;height:100%;object-fit:cover;object-position:center 20%}
.comparison-image:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#100b10e8);pointer-events:none}
.comparison-image>span{position:absolute;bottom:18px;left:25px;right:20px;z-index:1;color:#efddc6;font-size:13px;letter-spacing:1px}
.comparison-copy{padding:28px}
.comparison-copy h2{font:400 clamp(2rem,3vw,3rem)/1.15 var(--serif);margin:8px 0 24px}
.comparison-facts{margin:0 0 28px;display:grid;gap:14px}
.comparison-facts>div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line-soft)}
.comparison-facts dt{color:var(--muted);font-size:13px}.comparison-facts dd{margin:0;font-size:14px}.comparison-facts a{color:var(--gold)}
.comparison-copy h3{font:400 23px var(--serif);margin:24px 0 10px}.comparison-copy>p{font-size:16px;color:var(--muted);line-height:1.8}
.comparison-abilities{display:flex;flex-wrap:wrap;gap:8px;min-height:35px}.comparison-abilities a{padding:6px 10px;border:1px solid var(--line);font-size:13px;color:var(--gold)}
.comparison-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:28px}
.circle-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:30px}
.circle-rail{display:grid;align-content:start;gap:6px}.circle-rail a{display:flex;gap:10px;align-items:center;padding:13px 12px;border:1px solid transparent;font-size:14px;color:var(--muted)}
.circle-rail a>.icon{width:18px;flex-shrink:0}.circle-rail small{margin-left:auto;color:var(--gold)}
.circle-rail a[aria-current="page"]{border-color:var(--rose);background:var(--panel2);color:var(--ink)}
.circle-main{min-width:0}.court-orbit{position:relative;width:100%;aspect-ratio:1.15;max-height:600px;border:1px solid var(--line);overflow:hidden;background:radial-gradient(ellipse at center,#9a546327,transparent 65%),var(--panel)}
.orbit-lines{position:absolute;inset:18%;border:1px solid var(--line);border-radius:50%;box-shadow:0 0 0 40px #b9657c06,0 0 0 80px #b9657c05}
.orbit-center{position:absolute;inset:34% 29%;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center}
.orbit-center>.icon{width:28px;height:28px;color:var(--gold)}.orbit-center h2{font:400 clamp(20px,2.1vw,30px)/1.1 var(--serif);margin:10px 0}.orbit-center>span{font-size:12px;color:var(--muted)}.orbit-center a{font-size:13px;color:var(--gold);display:flex;gap:5px;align-items:center;margin-top:12px}
.orbit-person{position:absolute;left:var(--orbit-x);top:var(--orbit-y);transform:translate(-50%,-50%);width:90px;text-align:center;padding:0}
.orbit-person img{width:62px;height:62px;border-radius:50%;border:1px solid var(--rose);object-fit:cover;object-position:center 20%;box-shadow:0 0 0 5px #180e15a0;transition:box-shadow .25s}
.orbit-person:hover img{box-shadow:0 0 0 5px #180e15a0,0 0 24px #c47e7970}.orbit-person span{display:block;font-size:12px;line-height:1.3;margin-top:7px;background:var(--panel);padding:2px 3px}
.court-circle-caption{padding:24px 0}.court-circle-caption p{color:var(--muted);font-size:16px;margin:10px 0;line-height:1.8}
.circle-places{display:flex;flex-wrap:wrap;gap:10px}.circle-places h3{flex-basis:100%;font:400 24px var(--serif);margin:0 0 8px}.circle-places a{display:flex;align-items:center;gap:12px;padding:8px 12px;border:1px solid var(--line);color:var(--gold);font-size:14px}
.circle-directory{margin-top:45px}.circle-directory .search-field{max-width:300px;width:100%;margin:0}.circle-directory h2{max-width:550px}.circle-more{display:block;margin:26px auto}
.story-dossier{border:1px solid var(--line);background:var(--panel)}
.dossier-heading{padding:32px;display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(120deg,#703b4c40,transparent)}
.dossier-heading h2{font:400 42px/1.15 var(--serif);margin:10px 0}.dossier-heading p{font-size:14px;color:var(--muted);margin:0}.dossier-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;flex-shrink:0}
.story-threads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.story-thread{display:flex;flex-direction:column;min-width:0;border-top:1px solid var(--line);border-right:1px solid var(--line)}.story-thread:nth-child(2n){border-right:0}
.story-thread>img{width:100%;height:260px;object-fit:cover;object-position:center 25%}.story-thread>div{padding:28px;display:flex;flex-direction:column;flex:1;align-items:flex-start}.story-thread h2{font:400 29px/1.2 var(--serif);margin:13px 0}.story-thread p{font-size:16px;color:var(--muted);line-height:1.8;margin:0 0 24px}.story-thread .text-link{margin-top:auto;font-size:14px}
.dossier-footer{padding:25px 32px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.dossier-footer p{font-size:14px;max-width:450px;color:var(--muted);margin:0}.dossier-footer a{font-size:14px;max-width:260px}
.kept-stories{margin-top:45px}.kept-stories>p{color:var(--muted)}.kept-story-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.kept-story-list article{display:flex;align-items:center;gap:10px;padding:18px;background:var(--panel);border:1px solid var(--line)}.kept-story-list a{display:grid;grid-template-columns:1fr auto;flex:1;gap:5px}.kept-story-list a>span{font:400 24px var(--serif)}.kept-story-list a>small{color:var(--muted);font-size:13px}.kept-story-list a>.icon{grid-column:2;grid-row:1/3;align-self:center;color:var(--gold)}
.sidebar-footer>a{display:block;font-size:13px;color:var(--gold);margin-top:15px}
.compare-entry-link{margin-left:auto}
@media(min-width:1440px){.welcome-art-frame{width:min(100%,1100px)}}
@media(max-width:1150px){.circle-layout{grid-template-columns:1fr}.circle-rail{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.court-orbit{max-width:700px;margin:auto}.comparison-copy{padding:22px}.compare-controls label{min-width:180px}.dossier-heading{align-items:flex-start}.doorway{padding:23px 20px}}
@media(max-width:760px){
 .welcome-stage{padding:22px 18px;justify-content:center}.welcome-masthead{gap:10px}.welcome-masthead>span{font-size:11px;letter-spacing:1px}.welcome-masthead i{margin:0 5px}.welcome-masthead .text-link{font-size:12px}
 .welcome-art-frame{margin-top:32px;width:100%}.welcome-invitation{padding:30px 0}.welcome-invitation>.eyebrow{font-size:11px;letter-spacing:1.3px}.welcome-invitation h1{font-size:2.65rem}.welcome-invitation p{font-size:16px}.welcome-actions{gap:10px}.welcome-actions .button{font-size:14px;padding:12px 18px}.welcome-footer{flex-direction:column;text-align:center;gap:12px;font-size:10px;letter-spacing:1px;padding-top:20px}.welcome-footer button{font-size:13px}
 .doorway-grid{grid-template-columns:1fr}.doorway{padding:24px;display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:16px}.doorway>.icon{grid-row:1/4;margin:0}.doorway h3{font-size:27px}.doorway p{margin-bottom:16px;max-width:90%}.doorway>.text-link{grid-column:2}.doorway-number{font-size:36px;right:18px;top:12px}
 .portrait-comparison{gap:14px}.comparison-copy{padding:17px}.comparison-image{aspect-ratio:3/4}.comparison-image>span{display:none}.comparison-copy h2{font-size:26px;margin-bottom:20px}.comparison-copy>.eyebrow{font-size:11px}.comparison-facts>div{grid-template-columns:1fr;gap:5px}.comparison-facts dd{font-size:13px}.comparison-copy>p{font-size:15px}.comparison-copy h3{font-size:21px}.comparison-actions .button{font-size:12px;padding:9px;min-height:44px}.comparison-actions .button>.icon{display:none}.comparison-abilities{gap:6px}.comparison-abilities a{font-size:12px;padding:5px}
 .compare-controls{gap:10px}.compare-controls label{min-width:0;flex-basis:calc(50% - 30px)}.compare-controls>.button{width:100%;justify-content:center}.compare-swap{width:35px;min-width:35px}.compare-controls select{font-size:13px;padding:10px 6px}.comparison-context{font-size:14px}
 .circle-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.circle-rail a{padding:10px 8px;font-size:13px}.circle-rail a>.icon{display:none}.court-orbit{aspect-ratio:1;min-height:340px}.orbit-person{width:73px}.orbit-person img{width:45px;height:45px}.orbit-person span{font-size:10px}.orbit-center{inset:32% 28%}.orbit-center h2{font-size:20px}.orbit-center>span{font-size:11px}.orbit-center a{font-size:12px}.orbit-center>.icon{width:23px;height:23px}.circle-directory .search-field{max-width:none}
 .story-controls label{min-width:100%;}.story-controls>.button{width:100%;justify-content:center}.dossier-heading{padding:24px;flex-direction:column;gap:20px}.dossier-heading h2{font-size:35px}.dossier-actions{flex-direction:row;align-items:center;flex-wrap:wrap}.story-threads{grid-template-columns:1fr}.story-thread{border-right:0}.story-thread>div{padding:24px}.story-thread>img{height:270px}.dossier-footer{padding:24px;flex-direction:column;align-items:flex-start}.kept-story-list{grid-template-columns:1fr}
}
@media(max-width:380px){.portrait-comparison{grid-template-columns:1fr}.comparison-image{aspect-ratio:5/4}.comparison-facts>div{grid-template-columns:95px 1fr}.comparison-copy>p{font-size:16px}.orbit-person{width:61px}.orbit-person img{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){.welcome-stage,.welcome-art-frame,.welcome-invitation,.welcome-light{animation:none!important}.doorway:hover{transform:none}}
@media print{.welcome-stage,.new-doorways,.compare-controls,.story-controls,.circle-rail,.dossier-actions,.kept-stories{display:none!important}}

/* A compact transport in the header; a comfortable listening room when opened. */
.soundtrack-bar{position:relative;padding:5px 6px 7px;gap:2px;max-width:350px;border-radius:6px}
.soundtrack-skip{width:23px;min-height:36px;color:var(--gold);font:28px/1 var(--serif);padding:0}
.soundtrack-skip:hover{color:var(--ink)}
.soundtrack-launch{max-width:215px;padding-left:9px;padding-right:5px;gap:8px}
.soundtrack-mini-copy small{font-size:10px;letter-spacing:.8px}
.soundtrack-mini-copy b{font-size:14px;max-width:160px}
.soundtrack-mini-progress{position:absolute;bottom:0;left:4px;right:4px;height:2px;background:var(--line);overflow:hidden;border-radius:2px;pointer-events:none}
.soundtrack-mini-progress span{display:block;height:100%;width:0;background:var(--rose);transition:width .2s linear}
.soundtrack-dialog{width:min(900px,calc(100vw - 40px));border-radius:8px;max-height:92dvh}
.soundtrack-dialog .dialog-topline{position:sticky;top:0;z-index:3;background:var(--panel)}
.soundtrack-intro{padding:22px 28px}.soundtrack-intro h2{font-size:36px}.soundtrack-intro p{font-size:15px}
.soundtrack-library-count span{font-size:12px}
.soundtrack-layout{grid-template-columns:310px minmax(0,1fr);gap:24px;padding:0 28px 28px}
.soundtrack-deck{padding:20px;border-radius:5px}
.soundtrack-cover{margin:-20px -20px 22px;overflow:hidden;border-bottom:1px solid var(--line)}
.soundtrack-cover img{display:block;width:100%;height:auto;aspect-ratio:1599/900;object-fit:contain}
.soundtrack-deck>.eyebrow{font-size:11px;letter-spacing:1.2px}
.soundtrack-deck h3{font-size:31px;margin:12px 0}
#soundtrack-tags{font-size:13px;min-height:0;line-height:1.65}
.soundtrack-variation,.soundtrack-variation select{font-size:13px}
.soundtrack-transport{gap:15px}.soundtrack-transport #soundtrack-shuffle{width:32px;min-width:32px;padding:7px;margin-right:-12px}
#soundtrack-shuffle[aria-pressed="true"]{color:var(--ink);background:var(--wine);border-radius:50%}
.soundtrack-timeline>div{font-size:12px}.soundtrack-volume output{font-size:12px}.soundtrack-status{font-size:13px;min-height:42px}
.soundtrack-extras{display:grid;gap:12px;padding-top:17px;text-align:left}
.soundtrack-extras>button{justify-content:center;font-size:13px;min-height:36px;border:1px solid var(--line);color:var(--muted)}
.soundtrack-extras>button[data-mode="one"],.soundtrack-extras>button[data-mode="mood"]{border-color:var(--rose);color:var(--gold);background:var(--panel2)}
.soundtrack-extras label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--muted)}
.soundtrack-extras select{font-size:13px;min-height:38px;padding:8px 10px;flex:1;min-width:0}
.soundtrack-up-next{font-size:12px;color:var(--muted);line-height:1.6;margin:15px 0 0}
.soundtrack-library .search-field input{font-size:15px}
.soundtrack-tabs{display:flex;gap:5px;padding-top:15px}
.soundtrack-tabs button{padding:8px 13px;border:1px solid var(--line);font-size:13px;color:var(--muted);min-height:38px}
.soundtrack-tabs button[aria-pressed="true"]{border-color:var(--rose);background:var(--panel2);color:var(--ink)}
.soundtrack-list-caption{font-size:11px;letter-spacing:.8px}
#soundtrack-list{max-height:580px;padding-right:3px}
.soundtrack-list-item{display:flex;align-items:stretch;border-bottom:1px solid var(--line-soft)}
.soundtrack-row{min-width:0;flex:1;border-bottom:0;padding:14px 8px;gap:8px}
.soundtrack-row-symbol{width:20px}.soundtrack-row-copy b{font-size:22px}.soundtrack-row-copy small{font-size:12px}.soundtrack-row-count{font-size:13px}.soundtrack-row-count small{font-size:10px}
.mood-favorite{width:35px;flex-shrink:0;display:grid;place-items:center;color:var(--muted);padding:5px}
.mood-favorite .icon{width:17px;height:17px}.mood-favorite[aria-pressed="true"]{color:var(--rose)}.mood-favorite[aria-pressed="true"] .icon{fill:var(--wine)}
.soundtrack-footnote{font-size:13px}.soundtrack-empty{font-size:15px}
@media(max-width:1350px){.soundtrack-mini-copy small{display:none}.soundtrack-launch{max-width:185px}.soundtrack-mini-copy b{max-width:140px}.topbar .top-actions{gap:12px}}
@media(max-width:760px){.soundtrack-mini-copy{display:grid}.soundtrack-mini-copy b{font-size:12px;max-width:100px}.soundtrack-launch{max-width:139px;gap:8px;padding:3px 6px}.soundtrack-launch>.icon,.soundtrack-chevron{display:none}.soundtrack-skip{width:20px}#soundtrack-mini-previous{display:none}.soundtrack-bar{padding:4px 5px 6px}.topbar .breadcrumb{display:none}.topbar .top-actions{margin-left:auto;gap:9px}.topbar .search-launch,.topbar .spoiler-toggle{min-width:28px}.soundtrack-dialog{width:calc(100vw - 24px)}.soundtrack-layout{grid-template-columns:1fr;padding:0 20px 20px}.soundtrack-intro{padding:20px}.soundtrack-intro h2{font-size:30px}.soundtrack-library-count{font-size:19px}.soundtrack-deck{padding:20px;display:block;text-align:center}.soundtrack-cover{margin:-20px -20px 22px}.soundtrack-cover img{max-height:220px}.soundtrack-deck>.eyebrow{font-size:11px}.soundtrack-deck h3{font-size:31px}.soundtrack-deck #soundtrack-tags{font-size:13px}.soundtrack-transport{gap:20px}.soundtrack-status{font-size:13px}.soundtrack-volume{margin-top:18px}#soundtrack-list{max-height:400px}.soundtrack-extras{grid-template-columns:1fr 1fr;align-items:start;gap:14px}.soundtrack-extras label{display:grid;gap:5px;font-size:12px}.soundtrack-extras>button{min-height:62px}.soundtrack-up-next{font-size:12px}}
@media(max-width:390px){.soundtrack-mini-copy b{max-width:82px}.topbar .top-actions{gap:5px}.topbar .preferences-launch{width:30px}.soundtrack-launch{padding-left:4px;padding-right:2px}.soundtrack-intro p{font-size:14px}.soundtrack-library-count{font-size:17px}}
@media(min-width:761px){
 .welcome-stage{--invitation-width:min(100%,1100px,calc((100svh - 245px)*1.776));padding:24px 40px 18px}
 .welcome-art-frame{width:var(--invitation-width);margin-top:22px}
 .welcome-invitation{width:var(--invitation-width);display:grid;grid-template-columns:1fr auto;column-gap:30px;text-align:left;padding:20px 0 14px;align-items:center}
 .welcome-invitation>.eyebrow{grid-column:1;font-size:10px;letter-spacing:1.7px}.welcome-invitation h1{grid-column:1;font-size:clamp(1.9rem,2.7vw,2.8rem);margin:8px 0 0;white-space:nowrap}
 .welcome-invitation p{display:none}.welcome-actions{grid-column:2;grid-row:1/3;margin:0;flex-wrap:nowrap;gap:10px}.welcome-actions .button{padding:12px 18px;font-size:14px}
 .welcome-invitation>small{grid-column:2;justify-self:end;margin-top:9px;font-size:11px}.welcome-footer{padding-top:12px;font-size:10px}.welcome-footer button{font-size:12px}
}
@media(min-width:761px) and (max-height:650px){.welcome-stage{--invitation-width:min(100%,850px,calc((100svh - 220px)*1.776))}.welcome-invitation{grid-template-columns:1fr;justify-items:center;text-align:center;gap:12px}.welcome-invitation h1,.welcome-invitation>.eyebrow,.welcome-invitation>small{display:none}.welcome-actions{grid-column:1;grid-row:1}}

/* Keep the transport in view; disclose occasional listening settings on demand. */
.soundtrack-dialog .dialog-topline{padding:10px 22px}
.soundtrack-intro{padding:16px 24px}.soundtrack-intro h2{font-size:30px}.soundtrack-intro p{font-size:14px;margin-top:5px}
.soundtrack-deck{text-align:left}
.soundtrack-cover{float:right;width:84px;margin:0 0 14px 12px;border:1px solid var(--line);border-radius:3px}
.soundtrack-cover img{width:100%;height:auto;aspect-ratio:1599/900;object-fit:contain}
.soundtrack-deck h3{font-size:27px;margin:10px 0}.soundtrack-deck>.eyebrow{font-size:10px;letter-spacing:1px}
.soundtrack-deck #soundtrack-tags{font-size:13px;clear:both}
.soundtrack-transport{margin:16px 0;justify-content:center;clear:both}
.soundtrack-volume{margin-top:14px}.soundtrack-status{font-size:12px;min-height:0;margin-top:13px;line-height:1.6}
.playback-options{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
.playback-options summary{display:block;padding:0;cursor:pointer;color:var(--ink);font-size:13px;line-height:1.6}
.playback-options summary:before{content:'+';display:inline-block;width:14px;color:var(--gold)}
.playback-options[open] summary:before{content:'−'}
.playback-options summary span{display:block;color:var(--muted);font-size:11px;margin-left:14px}
.playback-options[open] summary span{display:none}
.soundtrack-extras{padding-top:14px}.soundtrack-footnote{padding:13px 24px}
@media(max-width:760px){.soundtrack-intro{padding:16px 20px}.soundtrack-cover{width:92px}.soundtrack-deck h3{font-size:28px}.soundtrack-deck>.eyebrow{font-size:10px}.soundtrack-extras{grid-template-columns:1fr}.soundtrack-extras label{display:flex}.soundtrack-extras>button{min-height:38px}}

/* refinement.css */
img{height:auto}
/* First paint uses the real cover, even before the world database is requested. */
.welcome-status:not([hidden]){display:block!important;grid-column:1/-1;font-size:13px!important;color:var(--gold);margin:12px 0 0}
.arrival-preferences{width:min(440px,calc(100vw - 32px));padding:28px;border:1px solid var(--line);background:var(--panel);color:var(--ink)}
.arrival-preferences::backdrop{background:#080509b8;backdrop-filter:blur(8px)}
.arrival-preferences header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.arrival-preferences h2{font:32px var(--serif);margin:0}.arrival-preferences label{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;font-size:15px}.arrival-preferences label:has(input){justify-content:flex-start}.arrival-preferences p{font-size:13px;color:var(--muted);margin:20px 0 0}

/* Invitations give new readers a short, linked way into the existing world. */
.evening-door{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:38px 0;padding:32px;border:1px solid var(--line);background:radial-gradient(ellipse at 15% 0,#ad627426,transparent 60%),var(--panel)}
.evening-door h2{font:36px/1.15 var(--serif);margin:10px 0}.evening-door p{max-width:480px;color:var(--muted);font-size:15px;margin:0}.evening-door>div:last-child{display:grid;gap:17px;flex-shrink:0}.evening-door .text-link{font-size:14px}
.invitation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:26px 0 40px}
.invitation-card{border:1px solid var(--line);background:var(--panel);transition:border-color .2s,transform .2s;overflow:hidden}.invitation-card[aria-current]{border-color:var(--rose);box-shadow:0 0 25px #c2777920}.invitation-card:hover{border-color:var(--gold);transform:translateY(-3px)}.invitation-card>img{display:block;width:100%;height:175px;object-fit:cover;filter:saturate(.85)}.invitation-card>div{padding:24px}.invitation-card h2{font:29px/1.15 var(--serif);margin:12px 0}.invitation-card p{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 23px}.invitation-card .eyebrow{font-size:10px;letter-spacing:1.2px}.invitation-card .text-link{font-size:14px}
.invitation-itinerary{border:1px solid var(--line);background:var(--panel)}.invitation-itinerary>header{padding:30px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.invitation-itinerary h2{font:32px var(--serif);margin:9px 0 0}.itinerary-progress{font-size:14px;color:var(--gold);white-space:nowrap}.invitation-itinerary ol{list-style:none;margin:0;padding:0}.invitation-itinerary li{display:flex;align-items:center;gap:25px;padding:28px 32px;border-bottom:1px solid var(--line-soft)}.itinerary-number{width:45px;flex-shrink:0;font:italic 32px var(--serif);color:var(--rose)}.invitation-itinerary li>div{flex:1}.invitation-itinerary h3{font:26px var(--serif);margin:10px 0}.invitation-itinerary h3 a:hover{color:var(--gold)}.invitation-itinerary li p{font-size:15px;color:var(--muted);margin:0}.invitation-itinerary .eyebrow{font-size:11px;letter-spacing:1.5px}.invitation-itinerary li>.text-link{font-size:14px}.itinerary-footnote{margin:0;padding:22px 30px;font-size:13px;color:var(--muted)}
.evening-reader-nav{margin:40px 0 10px;border:1px solid var(--line);background:var(--panel);padding:28px;display:grid;gap:22px}.evening-reader-nav h2{font:30px var(--serif);margin:10px 0 0}.evening-reader-nav>div:last-child{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.evening-reader-nav .text-link{font-size:14px}.resume-reading{margin:-10px 0 24px;font-size:13px;background:var(--panel2);color:var(--gold)}
/* A gallery is an image viewer with the context still close at hand. */
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:28px 0}.gallery-toolbar .search-field{width:min(380px,100%)}.gallery-toolbar .button{border:0;font-size:14px}.gallery-toolbar [aria-current]{background:var(--wine);color:var(--ink)}
.art-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.gallery-piece{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;border:1px solid var(--line);padding:0;text-align:left;background:var(--panel);contain:layout style paint}.gallery-piece img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform .5s var(--ease-out)}.gallery-piece:hover img{transform:scale(1.035)}.gallery-piece:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.gallery-piece>span{position:absolute;inset:auto 0 0;padding:44px 17px 17px;background:linear-gradient(transparent,#100a10ed 45%);display:grid;gap:5px}.gallery-piece b{font:25px/1.1 var(--serif);color:#f3e6df}.gallery-piece small{font-size:11px;color:#dfc1bf}.place-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.place-gallery .gallery-piece{aspect-ratio:4/3}.gallery-more{display:block;margin:30px auto}
.gallery-lightbox{width:min(1200px,calc(100vw - 40px));max-height:95dvh;padding:0;border:1px solid var(--line);background:#130d12;color:var(--ink);overflow:auto}.gallery-lightbox::backdrop{background:#050306eb;backdrop-filter:blur(12px)}.gallery-lightbox>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 25px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#130d12;z-index:2}.gallery-lightbox h2{font:30px var(--serif);margin:7px 0 0}.gallery-lightbox .eyebrow{font-size:10px;letter-spacing:1.5px}.gallery-art-stage{height:65dvh;display:grid;place-items:center;overflow:auto;background:radial-gradient(ellipse at center,#34202c,transparent 75%)}.gallery-art-stage>img{width:100%;height:100%;max-height:65dvh;object-fit:contain;display:block}.gallery-art-stage.zoomed{display:block}.gallery-art-stage.zoomed>img{width:max(100%,1100px);height:auto;max-height:none;max-width:none;object-fit:contain}.gallery-lightbox>footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 25px;border-top:1px solid var(--line)}.gallery-art-context{display:grid;gap:9px;font-size:13px;color:var(--muted)}.gallery-art-context .text-link{font-size:14px}.gallery-art-controls{display:flex;gap:15px;align-items:center}.gallery-art-controls>span{font-size:13px;color:var(--muted);min-width:58px;text-align:center}.gallery-art-controls .button{font-size:13px;min-height:40px}.gallery-art-controls .icon-button{font-size:22px}.no-script{text-align:center;font-size:15px;padding:20px}
@media(max-width:1200px){.art-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.place-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.invitation-grid{gap:14px}.invitation-card>div{padding:20px}.invitation-card h2{font-size:26px}.evening-door{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.evening-door{padding:25px;gap:24px}.evening-door h2{font-size:30px}.evening-door>div:last-child{width:100%}.invitation-grid{grid-template-columns:1fr;gap:18px}.invitation-card{display:grid;grid-template-columns:105px 1fr}.invitation-card>img{height:100%;min-height:220px}.invitation-card>div{padding:20px}.invitation-card h2{font-size:26px}.invitation-card p{font-size:14px;margin-bottom:15px}.invitation-itinerary>header{padding:22px;display:block}.itinerary-progress{display:block;margin-top:15px}.invitation-itinerary h2{font-size:29px}.invitation-itinerary li{padding:24px 20px;gap:12px;align-items:flex-start;flex-wrap:wrap}.itinerary-number{width:28px;font-size:25px}.invitation-itinerary li>div{width:calc(100% - 40px)}.invitation-itinerary h3{font-size:25px}.invitation-itinerary li>.text-link{margin-left:40px}.itinerary-footnote{padding:20px}.evening-reader-nav{padding:22px}.evening-reader-nav h2{font-size:27px}.evening-reader-nav>div:last-child{align-items:flex-start;flex-direction:column}.gallery-toolbar{align-items:stretch;flex-direction:column;gap:15px}.gallery-toolbar .search-field{width:100%}.gallery-toolbar .view-toggle{align-self:flex-start}.art-gallery,.place-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-piece>span{padding:35px 12px 12px}.gallery-piece b{font-size:20px}.gallery-piece small{font-size:10px}.place-gallery .gallery-piece{aspect-ratio:3/4}.gallery-lightbox{width:calc(100vw - 20px);max-height:95dvh}.gallery-lightbox>header{padding:15px 18px}.gallery-lightbox h2{font-size:26px}.gallery-lightbox>footer{padding:16px;display:block}.gallery-art-controls{margin-top:18px;justify-content:space-between;gap:8px}.gallery-art-stage{height:55dvh}.gallery-art-stage>img{max-height:55dvh}.gallery-art-context{display:flex;justify-content:space-between;gap:14px}.gallery-art-context>span{max-width:50%;font-size:12px}.gallery-art-controls .button{font-size:12px;padding:10px}.gallery-art-controls>span{min-width:48px}}
@media(prefers-reduced-motion:reduce){.gallery-piece img,.invitation-card{transition:none}.gallery-piece:hover img,.invitation-card:hover{transform:none}}
html[data-motion="reduced"] .gallery-piece:hover img,html[data-motion="reduced"] .invitation-card:hover{transform:none}
@media print{html,body,.site{background:white!important;color:black!important}.sidebar,.topbar,.site-footer,.night-atmosphere,.entry-back,.reading-tools,.resume-reading,.reader-toc,.reader-note,.margin-notes,.evening-reader-nav,.skip,#toast{display:none!important}.site{margin:0!important}#main{max-width:none!important;padding:0!important}.reader-layout{display:block}.reader-body,.prose,.prose strong,.prose a,.page-heading h1,.page-heading p,.reader-section,.facts{color:black!important}.reader-image{max-width:250px;float:right}.connected-section{break-before:auto}.reader-section,h2,h3{break-after:avoid}a{color:black!important}p,li{orphans:3;widows:3}.reader-body img{max-width:100%}}

button[hidden]{display:none!important}

/* Preserve the complete portrait composition in reading and comparison views. */
.reader-image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center}
.comparison-image{aspect-ratio:2/3;background:#170f15}
.comparison-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.comparison-image:after,.comparison-image>span{display:none}
.quick-art{min-height:0;height:auto;align-self:start}
.quick-art img{display:block;width:100%;height:auto;max-height:630px;object-fit:contain;object-position:center}
@media(max-width:760px){.quick-art img{height:auto;max-height:420px}.reader-image img{height:auto;max-height:none}.comparison-image{aspect-ratio:2/3}}

/* artwork.css */
/* Artwork uses its native proportions. Framing, captions and controls stay separate. */
.entry-card.has-art .card-image{height:auto;min-height:0;aspect-ratio:var(--art-ratio,3/4);border-bottom:1px solid var(--line)}
.entry-card.has-art .card-image img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;transition:none}
.entry-card.has-art .card-utilities{position:static;padding:10px 16px;gap:8px;justify-content:flex-end;border-top:1px solid var(--line-soft);background:var(--panel)}
.card-tool>span{display:none}
.entry-card.has-art .card-tool{width:auto;height:auto;min-height:36px;display:inline-flex;gap:7px;padding:6px 10px;border-radius:3px;font-size:12px;backdrop-filter:none}
.entry-card.has-art .card-tool>span{display:inline}
.person-card .card-copy>p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.list-view .entry-card.has-art .card-image{height:100%;min-height:0;aspect-ratio:auto;padding:8px;border:0}
.list-view .entry-card.has-art .card-image img{height:100%;max-height:180px;object-fit:contain;object-position:center top}
.list-view .entry-card.has-art .card-utilities{position:absolute;right:10px;top:10px;padding:0;border:0;background:transparent}
.list-view .entry-card.has-art .card-tool{width:35px;height:35px;min-height:35px;padding:8px;border-radius:50%}
.list-view .entry-card.has-art .card-tool>span{display:none}

/* Gallery labels no longer cover the art or change its crop on hover. */
.art-gallery .gallery-piece{aspect-ratio:auto;display:flex;flex-direction:column}
.art-gallery .gallery-piece img{height:auto;aspect-ratio:var(--art-ratio,3/4);object-fit:contain;object-position:center;transform:none;transition:none}
.art-gallery .gallery-piece>span{position:static;inset:auto;flex:1;padding:17px;background:var(--panel);border-top:1px solid var(--line-soft);gap:7px}
.art-gallery .gallery-piece small{font-size:12px;line-height:1.5;color:var(--muted)}
.art-gallery .gallery-piece b{font-size:24px;line-height:1.15}
.place-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
.gallery-piece:hover,.gallery-piece:focus-visible{border-color:var(--gold)}

/* These images are views of the artwork, including the tall location paintings. */
.reader-image img{height:auto;max-height:none;object-fit:contain}
.comparison-image{aspect-ratio:3/4}
.quick-art img{aspect-ratio:var(--art-ratio);object-fit:contain}
.connection-card>img{object-fit:contain;object-position:center;background:var(--panel)}
.story-thread>img{height:auto;aspect-ratio:var(--art-ratio,3/4);max-height:480px;object-fit:contain;object-position:center;background:var(--sidebar);border-bottom:1px solid var(--line)}
.orbit-person img{height:auto;aspect-ratio:3/4;object-fit:contain;object-position:center;border-radius:4px;background:var(--sidebar)}
.invitation-card>img{height:auto;min-height:0;max-height:440px;aspect-ratio:var(--art-ratio,9/16);object-fit:contain;object-position:center;background:var(--sidebar);filter:none;border-bottom:1px solid var(--line)}

/* Court doorways become illustrated cards with readable captions beneath them. */
.court-tile{padding:0;min-height:0}
.court-tile img{position:static;inset:auto;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;object-position:center;opacity:1;filter:none;z-index:0}
.court-tile-shade,.court-tile:after{display:none}
.court-tile .court-numeral{position:absolute;top:10px;left:10px;background:#160f12dd;padding:3px 8px;border:1px solid var(--line);z-index:1}
.court-tile-text{padding:20px 15px;margin:0;background:var(--panel);flex:1;border-top:1px solid var(--line)}
.court-tile h3{min-height:0;font-size:24px;line-height:1.15}
.court-tile-text>span{font-size:10px;letter-spacing:.7px}
.court-tile-text small{font-size:12px}

@media(max-width:1200px){.place-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
 .place-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .art-gallery .gallery-piece>span{padding:13px 12px}.art-gallery .gallery-piece b{font-size:21px}
 .entry-card.has-art .card-utilities{padding:10px;justify-content:space-between;gap:5px}
 .entry-card.has-art .card-tool{font-size:12px;padding:6px 8px}
 .invitation-card{display:flex;flex-direction:column}.invitation-card>img{height:auto;max-height:440px}
 .court-orbit{min-height:400px}.orbit-person img{width:42px;height:auto;aspect-ratio:3/4}
 .court-tile-text{padding:17px 13px}.court-tile h3{font-size:24px}
}
@media(max-width:520px){
 .entry-grid.people-grid:not(.list-view),.cast-grid{grid-template-columns:1fr;gap:22px}
 .cast-grid .entry-card:last-child{display:flex}
 .entry-grid.mini-people{grid-template-columns:1fr}
 .person-card .card-copy{padding:22px}.person-card .card-copy h3{font-size:29px}
 .list-view .person-card .card-copy{padding:20px 90px 20px 19px}
 .list-view .person-card .card-copy h3{font-size:22px}
 .entry-card.has-art .card-utilities{padding:10px 20px;justify-content:flex-end;gap:10px}
 .list-view .entry-card.has-art .card-utilities{padding:0;gap:6px}
 .list-view .entry-card.has-art .card-tool{padding:8px}
 .court-orbit{min-height:400px}
}

/* edition.css */
/* Eventide, the living edition. Type, space, and movement share one rhythm.
   Artwork sizing belongs to artwork.css; complete compositions stay intact. */
:root{--space:clamp(24px,3vw,52px);--ease-silk:cubic-bezier(.22,1,.36,1);--ease-soft:cubic-bezier(.16,.7,.25,1);--surface-glow:linear-gradient(135deg,#b9657c12,transparent 60%);--muted:#c0adb3;--reading-size:18px}
html{scrollbar-color:var(--wine) var(--bg);scrollbar-gutter:stable;view-transition-name:none}
body{font-size:16px;line-height:1.7;font-kerning:normal}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}a,button{ -webkit-tap-highlight-color:transparent}
h1{font-size:clamp(2.65rem,4.8vw,5rem);line-height:1.06;letter-spacing:-.035em}
h2{font-size:clamp(1.9rem,2.7vw,3rem);line-height:1.16;letter-spacing:-.025em}
h3{letter-spacing:-.015em}
.eyebrow{font-size:11px;line-height:1.6;letter-spacing:.16em;color:var(--gold)}
.page-heading{padding:18px 0 36px;margin:0 0 36px;align-items:flex-end;position:relative;gap:24px}
.page-heading:after{content:'';position:absolute;left:0;bottom:-1px;width:64px;height:1px;background:var(--gold)}
.page-heading>div:first-child{min-width:0}.page-heading h1{max-width:22ch;overflow-wrap:anywhere}
.page-heading p{font-size:17px;max-width:58ch;line-height:1.8;margin-top:22px}
.page-heading .eyebrow{font-size:11px;margin-bottom:20px}
.page-count{font-size:clamp(2.8rem,5vw,4.8rem);font-variant-numeric:lining-nums tabular-nums;opacity:.8;flex-shrink:0}
.page-count span{font-size:11px;letter-spacing:.12em}
#main{padding:var(--space);max-width:1640px;view-transition-name:codex-page}
.section{margin:72px 0}.section-heading{margin-bottom:30px;gap:24px;align-items:flex-end}.section-heading h2{margin:9px 0 0}
.section-heading>.text-link{flex-shrink:0;font-size:14px}
.sidebar{background:linear-gradient(180deg,#21101955,transparent 38%),var(--sidebar)}
.brand{padding-top:32px;padding-bottom:30px;letter-spacing:-.02em}.brand small{letter-spacing:.26em}
.sidebar nav a{position:relative;border-radius:8px;transition:background .24s,border-color .24s,color .24s;min-height:44px}
.sidebar nav a:before{content:'';position:absolute;left:-1px;top:13px;bottom:13px;width:2px;background:var(--gold);transform:scaleY(0);transition:transform .32s var(--ease-silk)}
.sidebar nav a.active:before{transform:scaleY(1)}.sidebar nav a.active{background:linear-gradient(90deg,#b9657c24,#b9657c05);border-color:#b9657c35}
.sidebar nav a:hover .icon{color:var(--gold)}.nav-group{letter-spacing:.14em}
.topbar{background:color-mix(in srgb,var(--bg) 94%,transparent);border-bottom:1px solid var(--line);box-shadow:0 8px 32px #08050818}
.search-launch{border-radius:7px}.topbar .preferences-launch{border-radius:7px}
.soundtrack-bar{border-radius:24px;padding:5px 7px 5px 5px;box-shadow:inset 0 1px 0 #ffffff05}
.soundtrack-toggle{transition:background .2s,transform .35s var(--ease-silk),box-shadow .25s}.soundtrack-toggle:hover{box-shadow:0 0 20px #b9657c30}
.button{min-height:46px;font-size:14px;border-radius:7px;padding:11px 20px;position:relative;overflow:hidden;isolation:isolate;transition:background .25s,border-color .25s,box-shadow .3s,transform .35s var(--ease-silk)}
.button.primary{background:linear-gradient(130deg,#8b415b,var(--wine));border-color:#bd778d;box-shadow:inset 0 1px 0 #f5d7e021,0 8px 24px #0a050926}
.button.primary:after{content:'';position:absolute;inset:-60% -110%;pointer-events:none;z-index:-1;background:linear-gradient(110deg,transparent 40%,#ffe7c520 50%,transparent 60%);transform:translateX(-40%);transition:transform .75s var(--ease-silk)}
.button.primary:hover:after{transform:translateX(40%)}
.text-link{font-size:14px;line-height:1.6}.text-link .icon,.card-bottom>.icon,.culture-article-link>.icon:last-child{transition:transform .35s var(--ease-silk)}
.text-link:hover>.icon:last-child,.card-bottom:hover>.icon,.culture-article-link:hover>.icon:last-child{transform:translateX(4px)}
.button:active:not(:disabled){transform:translateY(1px)}
.field{border-radius:8px;transition:border-color .2s,box-shadow .2s}.field:focus-within{border-color:var(--gold);outline:0;box-shadow:0 0 0 3px #d6b58a13}
.field input,input,select{font-size:16px;min-height:48px}select{border-radius:8px}
.entry-grid,.cast-grid{gap:24px}.entry-card{border-radius:10px;overflow:hidden;background:var(--surface-glow),var(--panel);transition:border-color .3s,box-shadow .35s,transform .5s var(--ease-silk)}
.card-copy,.compact .card-copy{padding:25px}.card-copy h3,.compact .card-copy h3,.person-card .card-copy h3{font-size:clamp(1.5rem,1.7vw,1.9rem);line-height:1.18;margin:10px 0 15px}
.card-copy p,.compact .card-copy p,.person-card .card-copy p{font-size:15px;line-height:1.85;color:var(--muted)}
.card-copy .eyebrow,.compact .card-copy .eyebrow{font-size:10px;letter-spacing:.085em;line-height:1.7}
.card-bottom,.compact .card-bottom{font-size:12px;padding-top:18px;margin-top:auto}
.entry-card.has-art .card-utilities{padding:12px 18px;background:transparent}.entry-card.has-art .card-tool{min-height:38px;border-radius:6px}
.entry-card:not(.has-art) .card-copy{padding-top:52px}.text-grid .card-copy h3{font-size:1.65rem;line-height:1.25}.text-grid .card-copy p{font-size:15px}
.results-meta{padding:23px 0;font-size:13px}.collection-controls{gap:18px}.pagination{margin-top:32px}
.reader-layout{gap:clamp(28px,3.5vw,60px)}.reader-body{min-width:0}.reader-body .prose{max-width:70ch}
.prose{line-height:1.95}.prose p{margin-bottom:1.45em}.prose h3{margin-top:1.65em;line-height:1.3}
.reader-body .biography-heading{font-size:clamp(1.6rem,2vw,2.1rem);margin-top:1.5em}
.prose .wiki-link{text-decoration:none;border-bottom:1px solid #d6b58a3d;transition:color .2s,border-color .2s}.prose .wiki-link:hover{color:var(--ink);border-color:var(--rose)}
.reader-section{padding-top:36px;margin-top:40px}.reader-section h2{font-size:clamp(1.7rem,2.2vw,2.4rem)}
.fact-box,.reader-image,.reader-toc,.margin-notes{border-radius:10px;overflow:hidden}.fact-box{padding:26px}.reader-toc{border-left-color:var(--line);overflow:auto;overscroll-behavior:contain}
.reference-chip{font-size:14px;line-height:1.65;padding:10px 14px;border-radius:7px;min-height:44px;align-items:center}
.reader-note{font-size:13px;line-height:1.75}.facts dd{line-height:1.7}
.reading-tools{padding:0 0 24px;gap:16px}.reading-progress{height:2px;accent-color:var(--gold)}
.cover-edition.opening{border-radius:12px;box-shadow:0 24px 80px #07040860}
.cover-edition .opening-copy{padding:clamp(26px,3vw,48px);background:radial-gradient(ellipse at top left,#71334a3d,transparent 80%),var(--panel);gap:28px}
.cover-edition .opening-copy h1{font-size:clamp(2.25rem,3.5vw,4rem);line-height:1.09;max-width:15ch;letter-spacing:-.035em;margin:17px 0}
.cover-edition .opening-copy p{font-size:17px;line-height:1.8;max-width:43ch}.cover-edition .opening-copy .eyebrow{font-size:10px;letter-spacing:.17em}
.cover-edition .hero-theme{font-size:13px;white-space:normal}
.statistics{margin:0;padding:30px 0;border-bottom:1px solid var(--line);gap:0}.statistics a{padding:12px 18px}.statistics strong{font-size:clamp(2rem,3.5vw,3.5rem);letter-spacing:-.03em}.statistics span{font-size:12px;line-height:1.6;max-width:140px}
.court-tile{border-radius:10px;overflow:hidden}.court-tile-text{padding:26px}.court-tile h3{font-size:clamp(1.5rem,2vw,2rem);min-height:0;line-height:1.2}
.doorway,.invitation-card,.bond-card,.reference-tile,.next-chapter{border-radius:10px}.doorway h3{font-size:1.7rem}.doorway p{font-size:15px;line-height:1.8}
.next-chapter{padding:clamp(25px,4vw,58px);gap:40px}.next-chapter h2{font-size:clamp(2rem,3vw,3.2rem);max-width:16ch}
.chapter-links a{padding:21px 0}.chapter-links b{font-size:16px}.chapter-links small{font-size:13px;line-height:1.65}
.gallery-piece{border-radius:10px}.gallery-piece>span{padding:21px}.gallery-piece b{font-size:1.5rem}.gallery-piece small{line-height:1.65}
/* A new cultural reading room. */
.culture-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(230px,.75fr);gap:clamp(30px,5vw,80px);align-items:center;padding:18px 0 48px;border-bottom:1px solid var(--line);overflow:clip}
.culture-hero-copy>.text-link{margin-bottom:clamp(32px,4vw,64px);font-size:13px}.culture-hero h1{font-size:clamp(3.6rem,7vw,7.9rem);line-height:.98;letter-spacing:-.05em;margin:26px 0 32px}
.culture-hero h1 em,.culture-home-door h2 em{color:#d3a0ae;font-weight:400}.culture-hero-copy>p{font-size:18px;line-height:1.9;color:var(--muted);max-width:46ch;margin-bottom:30px}
.culture-hero-index{display:flex;align-items:center;gap:16px;margin-top:34px;color:var(--gold);font-size:11px;letter-spacing:.09em;text-transform:uppercase}.culture-hero-index i{height:1px;width:35px;background:var(--line)}
.culture-hero-art{margin:0;position:relative;padding:18px;border:1px solid var(--line);border-radius:180px 180px 10px 10px;background:var(--surface-glow);isolation:isolate}
.culture-hero-art img{position:relative;width:100%;height:auto;object-fit:contain;border-radius:6px;box-shadow:0 20px 60px #0006;z-index:1}
.culture-hero-art figcaption{position:relative;z-index:1;padding:25px 6px 7px;line-height:1.4}.culture-hero-art figcaption>span{color:var(--gold);font-size:10px;letter-spacing:.13em}.culture-hero-art b{display:block;font:400 clamp(1.4rem,2vw,2.15rem)/1.3 var(--serif);margin-top:12px}
.culture-art-orbit{position:absolute;width:110%;aspect-ratio:1;left:-5%;top:18%;border:1px solid #d6b58a25;border-radius:50%;z-index:0;pointer-events:none}.culture-art-orbit:before{content:'';position:absolute;top:50%;left:-3px;width:5px;height:5px;background:var(--gold);transform:rotate(45deg)}
.culture-controls{display:flex;flex-direction:column;gap:22px;margin-bottom:24px}.culture-topic-pills{display:flex;gap:8px;flex-wrap:wrap}.culture-topic-pills button{min-height:44px;padding:10px 17px;font-size:13px;border:1px solid var(--line);border-radius:30px;color:var(--muted);transition:background .25s,border-color .25s,color .25s}
.culture-topic-pills button[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:#21151a}.culture-topic-pills button:hover:not([aria-pressed="true"]){border-color:var(--rose);background:var(--panel2)}
.culture-controls .search-field{max-width:600px}.culture-communities{scroll-margin-top:100px}#culture-result-count{font-size:13px}
.culture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.culture-house{display:flex;flex-direction:column;position:relative;border:1px solid var(--line);border-radius:12px;padding:clamp(24px,3vw,40px);background:var(--surface-glow),var(--panel);overflow:hidden;transition:transform .45s var(--ease-silk),border-color .3s,box-shadow .3s}
.culture-house-top{display:flex;align-items:center;gap:16px;margin-bottom:30px}.culture-house-top>.eyebrow{font-size:10px;letter-spacing:.13em}.culture-house-open{margin-left:auto;display:grid;place-items:center;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;transition:background .25s,transform .35s var(--ease-silk)}.culture-house-open:hover{background:var(--wine);transform:rotate(-35deg)}
.culture-glyph{width:50px;height:50px;display:inline-grid;place-items:center;border:1px solid #d6b58a4d;color:var(--gold);border-radius:50%;background:radial-gradient(circle,#d6b58a13,transparent);flex-shrink:0}.culture-glyph .icon{width:23px;height:23px}
.culture-house h3{font-size:clamp(1.8rem,2.5vw,2.65rem);line-height:1.13;margin-bottom:20px;max-width:18ch}.culture-house>p{color:var(--muted);font-size:15px;line-height:1.9;margin-bottom:30px}
.culture-house-articles{margin-top:auto;border-top:1px solid var(--line)}.culture-article-link{display:flex;align-items:center;gap:13px;min-height:56px;padding:14px 0;font-size:14px;border-bottom:1px solid var(--line-soft);line-height:1.7;color:var(--gold)}.culture-article-link>span{flex:1}.culture-article-link>.icon{width:17px;height:17px}.culture-article-link>.icon:first-child{color:#b08a96}.culture-article-link:hover{color:var(--ink)}
.culture-guides{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:48px 0;border-top:1px solid var(--line);margin:72px 0 20px}.culture-guides h2{margin-top:18px}.culture-guides p{color:var(--muted);font-size:16px;line-height:1.8;max-width:43ch}
.faction-culture{background:var(--surface-glow);border:1px solid var(--line);border-radius:12px;padding:30px;margin-top:40px}.faction-culture h2{margin-top:13px}.faction-culture>p{font-size:16px;line-height:1.85;color:var(--muted)}
.culture-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px 0}.culture-topic-card{padding:24px;border:1px solid var(--line);border-radius:8px;background:var(--panel);display:flex;flex-direction:column;transition:border-color .3s,transform .4s var(--ease-silk)}
.culture-topic-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;color:var(--gold)}.culture-topic-top small{font-size:11px;letter-spacing:.1em}.culture-topic-card h3{font-size:1.6rem;margin:0 0 14px}.culture-topic-card p{font-size:14px;color:var(--muted);line-height:1.8}.culture-topic-card>.text-link{font-size:12px;margin-top:auto;justify-content:space-between}
.culture-reader-context{padding:24px;margin-bottom:34px;border:1px solid var(--line);border-radius:10px;background:var(--surface-glow),var(--panel)}.culture-reader-context>p{margin:12px 0;color:var(--muted);font-size:15px}.culture-reader-context>.text-link{font-size:13px}.culture-reading-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0}.culture-reading-steps a{border-top:2px solid var(--line);padding:14px 2px;color:var(--muted);font-size:12px;line-height:1.6}.culture-reading-steps a small{display:block;margin-bottom:7px;color:var(--gold);font-size:10px}.culture-reading-steps [aria-current="page"]{border-top-color:var(--rose);color:var(--ink)}
.culture-library-door{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:28px;margin-bottom:32px;border:1px solid var(--line);border-radius:10px;background:var(--surface-glow),var(--panel)}.culture-library-door>div{display:flex;align-items:center;gap:24px;flex:1;min-width:240px}.culture-library-door h2{font-size:1.85rem;margin:10px 0}.culture-library-door p{color:var(--muted);font-size:14px;margin:0;line-height:1.8}.culture-library-door>.text-link{font-size:12px}
.culture-home-door{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:28px;padding:48px 0;border-bottom:1px solid var(--line);position:relative}.culture-home-door h2{font-size:clamp(1.7rem,2.7vw,3rem);margin:14px 0;line-height:1.22}.culture-home-door p{font-size:15px;color:var(--muted);margin:0;line-height:1.8}.culture-home-mark{width:76px;height:100px;border:1px solid #d6b58a4d;border-radius:60px 60px 4px 4px;display:grid;place-items:center;background:var(--surface-glow);color:var(--gold)}.culture-home-mark .icon{width:34px;height:34px}
/* Motion stays on opacity and transforms. No render loop or scroll interception. */
.night-glow-rose{opacity:.32}.night-vine{opacity:.15}.night-vine-left{opacity:.08}
html[data-motion="full"] .culture-art-orbit{animation:edition-orbit 48s linear infinite}
html[data-motion="full"] .culture-hero h1{animation:edition-title 950ms var(--ease-silk) both}
html[data-motion="full"] .culture-hero-art{animation:edition-arrive 1100ms var(--ease-silk) both}
html[data-motion="full"] .welcome-invitation h1{animation:edition-title 1.2s var(--ease-silk) .15s backwards}
.welcome-stage{padding:28px clamp(22px,5vw,80px)}.welcome-art-frame{border-radius:12px;width:min(100%,1040px)}.welcome-art-frame:after{border-radius:6px}
.welcome-invitation h1{font-size:clamp(3rem,5vw,5.3rem);letter-spacing:-.045em;line-height:1.05;margin:20px 0}.welcome-invitation{padding:36px 20px}.welcome-invitation p{font-size:17px}.welcome-actions{gap:12px}.welcome-actions .button{min-height:52px;border-radius:8px}
.welcome-masthead>span{letter-spacing:.2em}.welcome-footer{font-size:10px;letter-spacing:.12em;padding-top:24px}
.reveal-item{opacity:1}.reveal-item.revealed{animation:edition-arrive .7s var(--ease-silk) var(--reveal-delay,0ms) backwards}
dialog[open]{animation:edition-dialog .32s var(--ease-silk)}dialog::backdrop{background:#0e080dd4;backdrop-filter:blur(5px)}
details[open]>.prose,details[open]>.note-editor{animation:edition-arrive .32s var(--ease-silk)}
::view-transition{pointer-events:none}::view-transition-group(codex-page){animation-duration:.48s;animation-timing-function:var(--ease-silk)}
::view-transition-old(codex-page){animation:edition-page-out .22s ease-out both;mix-blend-mode:normal}
::view-transition-new(codex-page){animation:edition-page-in .48s var(--ease-silk) both;mix-blend-mode:normal}
@keyframes edition-page-out{to{opacity:0;transform:translateY(-12px)}}
@keyframes edition-page-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes edition-arrive{from{opacity:.35;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes edition-title{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes edition-dialog{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
@keyframes edition-orbit{to{transform:rotate(360deg)}}
@media(hover:hover) and (pointer:fine){.entry-card:hover,.culture-house:hover{border-color:#a36d80;box-shadow:0 18px 44px #0805083b;transform:translateY(-4px)}.culture-topic-card:hover{border-color:var(--rose);transform:translateY(-3px)}.button:hover:not(:disabled){transform:translateY(-2px)}}
html[data-page-visibility="hidden"] *,html[data-page-visibility="hidden"] *:before,html[data-page-visibility="hidden"] *:after{animation-play-state:paused!important}
html[data-tone="midnight"] .culture-hero h1 em,html[data-tone="midnight"] .culture-home-door h2 em{color:#c7b3d1}
/* The contents navigation belongs inside reader-aside, never in a third grid track. */
@media(min-width:1500px){.reader-layout{grid-template-columns:minmax(0,1fr) 310px}}
@media(max-width:1200px){.culture-hero{gap:32px;grid-template-columns:minmax(0,1fr) minmax(210px,.7fr)}.culture-hero h1{font-size:clamp(3.7rem,6vw,6rem)}.culture-hero-copy>p{font-size:16px}.culture-hero-art{padding:12px}.culture-home-door{grid-template-columns:62px minmax(0,1fr);gap:24px}.culture-home-door>.button{grid-column:2;justify-self:start}.culture-home-mark{width:62px;height:88px}.culture-house{padding:26px}.culture-house h3{font-size:2rem}.culture-topic-card{padding:19px}.culture-topic-card h3{font-size:1.4rem}.culture-reading-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.faction-culture{padding:24px}.culture-guides{gap:30px}.entry-grid,.cast-grid{gap:20px}}
@media(max-width:1000px){.culture-hero{grid-template-columns:1fr}.culture-hero-copy{max-width:650px}.culture-hero h1{font-size:clamp(4rem,10vw,6rem)}.culture-hero-copy>p{max-width:54ch}.culture-hero-art{display:grid;grid-template-columns:minmax(0,1fr) 1fr;gap:24px;align-items:end;border-radius:12px;max-width:560px;padding:18px}.culture-hero-art img{max-height:390px;width:auto;justify-self:center}.culture-hero-art figcaption{padding:20px 0}.culture-art-orbit{width:65%;left:32%;top:18%}.culture-grid{grid-template-columns:1fr}.culture-house-articles{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.culture-guides{grid-template-columns:1fr}.culture-house>p{max-width:60ch}.culture-library-door{padding:24px}.culture-topic-grid{grid-template-columns:1fr}.culture-topic-card{padding:24px}.culture-topic-card h3{font-size:1.65rem}}
@media(max-width:760px){
 :root{--space:24px}html{scrollbar-gutter:auto}.page-heading{padding:12px 0 26px;margin-bottom:26px;gap:14px}.page-heading h1{font-size:clamp(2.4rem,8vw,3.5rem);line-height:1.1}.page-heading .eyebrow{font-size:10px;margin-bottom:16px}.page-heading p{font-size:16px;margin-top:18px}.page-count{font-size:2.8rem}.page-count span{font-size:10px;letter-spacing:.07em}
 .section{margin:48px 0}.section-heading{gap:15px;margin-bottom:24px;align-items:flex-start}.section-heading h2{font-size:2rem}.topbar{padding:0 18px}.sidebar nav a{min-height:46px}.entry-grid,.cast-grid{gap:20px}.card-copy,.compact .card-copy{padding:24px}.card-copy h3,.compact .card-copy h3,.person-card .card-copy h3{font-size:1.7rem}.card-copy p,.compact .card-copy p,.person-card .card-copy p{font-size:16px;line-height:1.8}
 .list-view .card-copy h3{font-size:1.25rem}.list-view .card-copy p{font-size:14px}.list-view .entry-card:not(.has-art) .card-copy{padding-top:22px}.field input,input,select{font-size:16px}.cover-edition .opening-copy{padding:28px 24px}.cover-edition .opening-copy h1{font-size:2.7rem;max-width:15ch}.cover-edition .opening-copy p{font-size:16px}.cover-edition .opening-actions{gap:18px}.statistics{padding:20px 0}.statistics a{padding:8px}.statistics strong{font-size:2rem}.statistics span{font-size:11px}
 .culture-home-door{padding:32px 0;grid-template-columns:1fr;gap:24px}.culture-home-mark{display:none}.culture-home-door>.button{grid-column:auto;justify-self:start}.culture-home-door h2{font-size:2rem}.culture-home-door p{font-size:15px}.culture-hero{padding:12px 0 36px;gap:36px}.culture-hero-copy>.text-link{margin-bottom:36px}.culture-hero h1{font-size:clamp(3.8rem,14vw,6rem);margin:23px 0 27px}.culture-hero-copy>p{font-size:17px;line-height:1.8}.culture-hero-index{font-size:10px;gap:10px;margin-top:28px}.culture-hero-art{gap:18px;padding:14px}.culture-hero-art figcaption>span{font-size:9px}.culture-hero-art b{font-size:1.5rem}.culture-hero-art figcaption{padding:12px 0}.culture-art-orbit{display:none}
 .culture-topic-pills{gap:8px}.culture-topic-pills button{font-size:12px;padding:10px 13px}.culture-house{padding:25px}.culture-house-top{gap:14px;margin-bottom:28px}.culture-house h3{font-size:2rem}.culture-house>p{font-size:15px;line-height:1.85}.culture-house-articles{grid-template-columns:1fr}.culture-article-link{font-size:14px;min-height:58px}.culture-guides{margin-top:48px;padding:32px 0;gap:15px}.culture-guides h2{font-size:2.1rem}.culture-library-door{padding:23px;gap:20px}.culture-library-door>div{min-width:0;align-items:flex-start;gap:16px}.culture-library-door .culture-glyph{display:none}.culture-library-door h2{font-size:1.9rem}.culture-library-door>.button{width:100%}.culture-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.faction-culture{padding:22px}.culture-topic-card{padding:18px}.culture-topic-card h3{font-size:1.5rem}.culture-topic-card p{font-size:13px}.culture-topic-card>.text-link{font-size:12px}.culture-reader-context{padding:20px}.culture-reading-steps{gap:16px}.culture-reading-steps a{font-size:13px}
 .reader-section{margin-top:30px;padding-top:28px}.reader-section h2{font-size:1.9rem}.reader-body>.prose{line-height:1.9}.reader-image{padding:0;border-radius:10px}.reader-image img{height:auto;max-height:none;object-fit:contain}.reader-aside .fact-box{padding:24px}.reference-chip{font-size:14px}.welcome-stage{padding:22px 22px 28px}.welcome-art-frame{margin-top:25px}.welcome-invitation{padding:32px 0}.welcome-invitation h1{font-size:3.2rem;line-height:1.08}.welcome-invitation p{font-size:16px}.welcome-invitation>.eyebrow{font-size:10px;line-height:1.8;letter-spacing:.15em}.welcome-actions{gap:11px}.welcome-actions .button{min-width:0;font-size:14px;padding:12px 18px}.welcome-footer{font-size:9px;gap:18px}.welcome-masthead>span{font-size:10px;letter-spacing:.12em}.welcome-masthead .text-link{font-size:12px}.welcome-masthead i{margin:0 6px}.next-chapter{padding:26px}.next-chapter h2{font-size:2.2rem}.court-tile h3{font-size:1.5rem}.court-tile-text{padding:19px}.court-tile small{font-size:11px}
}
@media(max-width:520px){.culture-topic-grid{grid-template-columns:1fr}.culture-topic-card{padding:24px}.culture-topic-card h3{font-size:1.75rem}.culture-topic-card p{font-size:15px}.culture-topic-card>.text-link{font-size:13px}.text-grid .card-copy h3{font-size:1.75rem}.page-heading h1{font-size:2.65rem}.entry-back{gap:18px}.entry-back>.text-link{font-size:12px}.entry-back .button{font-size:12px;padding:9px 12px;gap:7px}.welcome-actions{flex-direction:column}.welcome-actions .button{width:100%}.culture-hero-art b{font-size:1.35rem}.faction-culture{padding:20px}.culture-house-top>.eyebrow{font-size:9px}}
/* Explicit calm mode also applies when selected while an animation is running. */
html[data-motion="reduced"] *,html[data-motion="reduced"] *:before,html[data-motion="reduced"] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-motion="reduced"] ::view-transition-group(*),html[data-motion="reduced"] ::view-transition-old(*),html[data-motion="reduced"] ::view-transition-new(*){animation:none!important}
html[data-motion="reduced"] .entry-card:hover,html[data-motion="reduced"] .culture-house:hover,html[data-motion="reduced"] .culture-topic-card:hover,html[data-motion="reduced"] .button:hover,html[data-motion="reduced"] .culture-house-open:hover{transform:none}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.entry-card:hover,.culture-house:hover,.culture-topic-card:hover,.button:hover,.culture-house-open:hover{transform:none}}
@media print{#main{view-transition-name:none;max-width:none}.culture-reader-context,.culture-home-door{display:none}.culture-topic-card,.culture-house{break-inside:avoid}.culture-hero{display:block}.culture-hero-art{max-width:240px}.culture-glyph{display:none}}

/* Long authored titles and compact reader controls keep the first screen useful. */
.page-heading h1.long-title{font-size:clamp(2.2rem,3.7vw,4rem);line-height:1.15;max-width:29ch}
.reading-tools .read-duration{flex-wrap:nowrap;max-width:none;gap:9px}.read-duration>span{white-space:nowrap}
html[data-motion="full"] .reveal-item.revealed{animation:edition-arrive .7s var(--ease-silk) var(--reveal-delay,0ms) backwards}
html[data-motion="full"] :is(.quick-view,.preferences-dialog)[open]{animation:edition-dialog .32s var(--ease-silk)}
@media(max-width:760px){.page-heading h1.long-title{font-size:2.1rem;line-height:1.17;letter-spacing:-.02em}.reading-tools{justify-content:space-between;gap:14px;padding-bottom:20px}.reading-tools .read-duration{max-width:none;font-size:12px}.read-duration .read-category,.read-duration i{display:none}.reading-tools .button{font-size:12px;min-height:40px;padding:8px 12px}.reading-tools>div{gap:6px}}

#main:focus{outline:none}.cover-edition .opening-actions .text-link{max-width:none}

/* Let compact cards shrink to their grid track instead of widening the whole page. */
.reference-tile,.relationship-ladder>div,.statistics a{min-width:0}
.reference-tile h2,.relationship-ladder b,.comparison-facts dd{overflow-wrap:anywhere}
@media(max-width:1200px){.statistics a{flex-direction:column;gap:5px;text-align:center}.comparison-facts>div{grid-template-columns:minmax(0,1fr);gap:5px}}
@media(min-width:761px) and (max-width:1000px){.courts-grid,.doorway-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.reference-grid{grid-template-columns:minmax(0,1fr)}.reference-tile{padding:24px}.reference-tile h2{font-size:1.75rem}}
@media(max-width:420px){.courts-grid{grid-template-columns:minmax(0,1fr)}.court-tile h3{font-size:1.75rem}}
@media(max-width:380px){
 .preferences-content .segmented-controls:has([data-reading-size]){flex-direction:column}
 .segmented-controls>[data-reading-size]{flex-direction:row;justify-content:flex-start;gap:14px;padding:10px 14px}
 .soundtrack-intro{flex-wrap:wrap;gap:14px}.soundtrack-library-count{text-align:left;white-space:normal;font-size:18px}
}

@media(max-width:520px){.welcome-masthead{gap:10px;align-items:center}.welcome-masthead>span{white-space:nowrap;font-size:9px;letter-spacing:.08em}.welcome-masthead .text-link{white-space:nowrap;font-size:10px;gap:5px}.welcome-invitation h1{font-size:2.65rem}}

/* Public guides and the approved world showcase share the existing reading system. */
.guide-introduction{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:center;margin:10px 0 48px;padding:32px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,#38212b66,#1b131800)}
.guide-introduction h2{font-size:clamp(2rem,3vw,3.3rem);line-height:1.15;margin:18px 0}.guide-introduction p,.guide-home-door p,.guide-showcase-door p{color:var(--muted);line-height:1.8;max-width:55ch}
.guide-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:24px}.guide-actions .button{white-space:normal;text-align:center}
.guide-art{display:block;min-width:0;border:1px solid var(--line);border-radius:6px;overflow:hidden}.guide-art img{display:block;width:100%;height:auto;object-fit:contain}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.guide-card{display:flex;flex-direction:column;min-width:0;padding:28px;border:1px solid var(--line);border-radius:10px;background:var(--panel);transition:border-color .2s,transform .2s}.guide-card-top{display:flex;align-items:start;justify-content:space-between;gap:16px}.guide-number{color:var(--gold);font-family:var(--serif);font-size:1.6rem;line-height:1}.guide-card h2{font-size:1.9rem;line-height:1.18;margin:30px 0 15px;overflow-wrap:anywhere}.guide-card p{color:var(--muted);line-height:1.8;margin:0 0 26px}.guide-card>.text-link{margin-top:auto}
.guide-home-door,.guide-showcase-door{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.65fr);align-items:center;gap:40px;padding:36px;margin:40px 0;border:1px solid var(--line);border-radius:10px;background:#291b224d}.guide-home-door h2,.guide-showcase-door h2{font-size:2.25rem;line-height:1.15;margin:16px 0}.guide-showcase-door>.button{justify-self:end;white-space:normal;text-align:center}.guide-home-links{display:grid;gap:12px}.guide-home-links>a{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--gold)}
.guide-reading-links{display:flex;flex-wrap:wrap;gap:16px 24px;margin:0 0 32px;padding-bottom:22px;border-bottom:1px solid var(--line)}.guide-callout{border-left:2px solid var(--rose);background:#42263035;padding:20px 24px;margin:0 0 28px}.guide-callout>a{display:flex;justify-content:space-between;gap:18px;color:var(--gold);padding-top:14px}
.quest-journey>p,.quest-path-preview{max-width:70ch;line-height:1.85}.quest-journey>p{color:var(--muted);margin:16px 0}.quest-path-preview{padding:22px;margin:24px 0;border:1px solid var(--line);border-radius:8px;background:#28192055}.quest-path-preview h3{font-size:1.5rem;line-height:1.3;margin:0 0 16px}.quest-path-preview h3:not(:first-child){margin-top:26px}.quest-path-preview ol{padding-left:24px}.quest-path-preview li{padding:8px 0 8px 6px}.quest-path-preview .muted{font-size:14px}.quest-path-preview .reference-chip{white-space:normal}
.showcase-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-gallery .gallery-piece img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}.showcase-gallery .gallery-piece>span{position:static;display:block;padding:20px;text-align:left;background:var(--panel)}.showcase-gallery .gallery-piece small{display:block;white-space:normal;line-height:1.65;margin-top:9px}.showcase-caption{padding:8px 24px 0;line-height:1.75;color:var(--muted)}.showcase-caption p{margin:10px 0}.gallery-toolbar .view-toggle{flex-wrap:wrap}.gallery-toolbar .view-toggle .button{white-space:normal}
@media(hover:hover) and (pointer:fine){.guide-card:hover{border-color:var(--rose);transform:translateY(-3px)}}
@media(max-width:1200px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-introduction{gap:24px;padding:26px}}
@media(max-width:1000px){.guide-introduction,.guide-home-door,.guide-showcase-door{grid-template-columns:minmax(0,1fr)}.guide-art{max-width:760px}.guide-showcase-door>.button{justify-self:start}.showcase-gallery{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.guide-grid{grid-template-columns:minmax(0,1fr)}.guide-introduction,.guide-home-door,.guide-showcase-door{padding:24px;gap:24px}.guide-card{padding:24px}.guide-card h2{font-size:1.8rem;margin-top:22px}.guide-introduction h2,.guide-home-door h2,.guide-showcase-door h2{font-size:2rem}.guide-callout{padding:18px}.quest-path-preview{padding:18px}.showcase-caption{padding:6px 18px 0}.gallery-toolbar .view-toggle{width:100%}.gallery-toolbar .view-toggle .button{flex:1;padding:10px 8px;font-size:12px}}
.showcase-lightbox .gallery-art-stage:not(.zoomed){height:auto;aspect-ratio:1672/941;max-height:65dvh}.showcase-lightbox .gallery-art-stage:not(.zoomed)>img{height:100%;max-height:65dvh}.showcase-lightbox .gallery-art-stage.zoomed{height:min(55dvh,650px)}
html[data-motion="reduced"] .guide-card:hover{transform:none}@media(prefers-reduced-motion:reduce){.guide-card:hover{transform:none}}

/* Public leadership: complete portraits and offices with room for long titles. */
.leadership-introduction{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.5fr);gap:48px;padding:36px;border:1px solid var(--line);border-radius:12px;background:radial-gradient(ellipse at top right,#813f532b,transparent 70%),var(--panel)}
.leadership-introduction h2{font-size:clamp(2rem,3vw,3.2rem);margin:18px 0}.leadership-introduction p,.leadership-notes p{max-width:70ch;line-height:1.85;color:var(--muted)}
.leadership-totals{display:grid;gap:22px;border-left:1px solid var(--line);padding-left:38px;align-content:center}.leadership-totals span{display:flex;align-items:center;gap:22px;color:var(--muted);font-size:13px}.leadership-totals b{font:400 3.2rem/1 var(--serif);color:var(--gold);min-width:70px}
.leadership-controls{display:flex;align-items:end;gap:22px;flex-wrap:wrap;margin-top:36px}.leadership-controls>.search-field{flex:1;min-width:220px}.leadership-controls>label:not(.search-field){display:grid;gap:9px;color:var(--muted);font-size:13px}.leadership-controls select{max-width:100%;min-height:46px}.leadership-controls .new-leaders-toggle{display:flex!important;align-items:center;gap:10px;min-height:46px}.new-leaders-toggle input{width:18px;height:18px;accent-color:var(--rose)}
.leadership-court-section{margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}.leadership-court-section>.section-heading h2{font-size:clamp(1.9rem,3vw,3rem);line-height:1.15;margin:16px 0}.office-group-title{font-size:1.7rem;line-height:1.3;margin:30px 0 22px}
.office-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.court-leadership .office-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.office-card{min-width:0;padding:24px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:9px;background:var(--panel)}
.office-heading{display:flex;justify-content:space-between;gap:12px;align-items:start;flex-wrap:wrap}.office-heading .eyebrow{font-size:9px;line-height:1.7;overflow-wrap:anywhere}.leader-new{color:#e5b6c7;font-size:10px;letter-spacing:.03em;padding:4px 8px;background:#71344a44;border:1px solid #8e576055;border-radius:20px;white-space:nowrap}.office-card h3{font:400 1.6rem/1.2 var(--serif);margin:17px 0 22px;overflow-wrap:anywhere}.office-people{display:grid;gap:16px}.office-person{display:flex;align-items:center;gap:17px;color:var(--ink);min-width:0}.office-person img{display:block;width:72px;height:auto;max-height:108px;object-fit:contain;border-radius:5px;flex-shrink:0}.office-person>span{line-height:1.6;overflow-wrap:anywhere;font-size:15px}.office-person .icon{color:var(--gold);width:16px;margin-left:5px}.office-succession{font-size:12px;line-height:1.8;color:var(--muted);padding-top:17px;margin-top:22px;border-top:1px solid var(--line)}.office-reference{font-size:12px;line-height:1.6;padding-top:22px;margin-top:auto;white-space:normal}
.reigning-ruler{display:flex;align-items:center;gap:28px;max-width:660px;padding:24px;margin:24px 0;border:1px solid #bba17355;border-radius:10px;background:linear-gradient(120deg,#62432a22,#44223544)}.ruler-portrait{flex-shrink:0;width:100px}.ruler-portrait img{display:block;width:100%;height:auto;object-fit:contain;border-radius:6px}.reigning-ruler h3{font:400 1.9rem/1.2 var(--serif);margin:14px 0}.reigning-ruler p{color:var(--muted);line-height:1.7;margin:0 0 14px}.reigning-ruler .text-link{font-size:12px}
.leadership-notes{margin-top:60px;padding:32px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.leadership-notes h2{font-size:2rem}.leadership-scope{font-size:13px;line-height:1.8;color:var(--muted);margin-top:24px}.leadership-context{border-left:2px solid var(--gold);padding:22px 26px;margin-bottom:30px;background:#69452d1a;max-width:70ch}.leadership-context p{font-size:14px;line-height:1.8;margin:14px 0;color:var(--muted)}.leadership-context .text-link{font-size:13px}.leadership-story{max-width:70ch}.leadership-story p{color:var(--muted);line-height:1.85}
.leadership-door{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px;margin:28px 0 34px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(115deg,#573a2440,#36222d66)}.leadership-door h2{font-size:2rem;line-height:1.2;margin:12px 0}.leadership-door p{color:var(--muted);font-size:14px;line-height:1.7;margin:10px 0 0}.leadership-door .button{flex-shrink:0;white-space:normal;text-align:center}
@media(max-width:1200px){.office-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.court-leadership .office-grid{grid-template-columns:minmax(0,1fr)}.leadership-introduction{gap:28px;padding:28px}.leadership-totals{padding-left:24px}}
@media(max-width:900px){.leadership-introduction{grid-template-columns:minmax(0,1fr)}.leadership-totals{display:flex;flex-wrap:wrap;gap:24px;border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.leadership-totals span{flex:1;min-width:120px;flex-direction:column;align-items:start;gap:9px}.leadership-door{align-items:start;flex-direction:column}.leadership-controls>label{max-width:100%}}
@media(max-width:600px){.office-grid{grid-template-columns:minmax(0,1fr)}.leadership-introduction,.leadership-notes,.leadership-door{padding:22px}.leadership-controls{gap:16px}.leadership-controls>.search-field,.leadership-controls>label:not(.new-leaders-toggle){width:100%;min-width:0}.office-card{padding:22px}.reigning-ruler{gap:18px;padding:20px}.ruler-portrait{width:72px}.reigning-ruler h3{font-size:1.5rem}.reigning-ruler .text-link{white-space:normal}.leadership-context{padding:18px}.leadership-court-section>.section-heading{align-items:start;flex-direction:column}.leadership-door .button{max-width:100%}}

/* Launch edition: playable character introductions and reversible draft loading. */
.premade-intro,.premade-door {display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;margin:0 0 28px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(120deg,rgba(129,50,80,.14),rgba(183,146,101,.04));}
.premade-intro>div,.premade-door>div {min-width:0;max-width:75ch;}
.premade-intro h2,.premade-door h2 {font-size:clamp(1.65rem,3vw,2.5rem);margin:8px 0 14px;}
.premade-intro p,.premade-door p {line-height:1.7;color:var(--muted);}
.premade-actions {display:flex;flex-wrap:wrap;gap:12px;margin:24px 0;}
.premade-confirm {max-width:min(540px,calc(100vw - 32px));padding:28px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);}
.premade-confirm::backdrop {background:rgba(12,7,10,.8);backdrop-filter:blur(8px);}
.premade-confirm h2 {font-size:2rem;margin:12px 0;overflow-wrap:anywhere;}
.premade-confirm p {line-height:1.75;color:var(--muted);}
.soundtrack-row-copy small {overflow-wrap:anywhere;}
@media(max-width:760px){.premade-intro,.premade-door{align-items:flex-start;flex-direction:column;padding:20px}.premade-actions .button{white-space:normal}.premade-confirm{padding:20px;}.gallery-toolbar .view-toggle{flex-wrap:wrap;}}

.premade-intro>.button,.premade-door>.button{flex-shrink:0}
