:root{--void:#090e16;--navy:#101b29;--navy2:#162338;--ink:#ded9cb;--muted:#a3a69f;--gold:#d9b979;--gold2:#a78750;--line:#344052;--paper:#e9dfc9;--paper-ink:#2a2a2d;--paper-muted:#696358;--pink:#d4ac9c;--blue:#93acba;--green:#94a68e;--shadow:0 22px 80px #0008;--display:Georgia,'Palatino Linotype','Book Antiqua',serif;--ui:'Trebuchet MS',Verdana,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--void);color:var(--ink);font-family:var(--ui);line-height:1.65;min-height:100vh;overflow-x:hidden}body:has(dialog[open]){overflow:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #eac782;outline-offset:3px}a{text-decoration:none}::selection{background:#a38355;color:#fff}.aurora{position:fixed;z-index:-3;inset:0;pointer-events:none;background:radial-gradient(ellipse 65% 48% at 71% 2%,#34476050,transparent 70%),radial-gradient(ellipse 60% 60% at 1% 35%,#15344840,transparent 80%),linear-gradient(130deg,#0c131e,#0b1018 45%,#131521);}.aurora:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#0006,transparent 80%)}.starfield{position:fixed;inset:0;pointer-events:none;z-index:-1}.starfield i{position:absolute;width:2px;height:2px;background:#f3e4c5;box-shadow:0 0 10px 2px #b5d6f76c;border-radius:50%;animation:twinkle 7.5s ease-in-out infinite alternate}.starfield i:nth-child(1){left:12%;top:14%}.starfield i:nth-child(2){left:87%;top:12%;animation-delay:1s}.starfield i:nth-child(3){left:60%;top:26%;animation-delay:2s}.starfield i:nth-child(4){left:36%;top:73%;animation-delay:3s}.starfield i:nth-child(5){left:94%;top:55%;animation-delay:1.6s}.starfield i:nth-child(6){left:76%;top:90%;animation-delay:2.9s}.starfield i:nth-child(7){left:8%;top:86%;animation-delay:1.4s}.starfield i:nth-child(8){left:43%;top:8%;animation-delay:2.4s}.starfield i:nth-child(9){left:52%;top:82%;animation-delay:1.2s}.starfield i:nth-child(10){left:23%;top:48%;animation-delay:3.3s}.starfield i:nth-child(11){left:69%;top:60%;animation-delay:2.7s}.starfield i:nth-child(12){left:32%;top:34%;animation-delay:0.8s}@keyframes twinkle{from{opacity:.3;transform:scale(.9)}to{opacity:.76;transform:scale(1.12)}}
.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 clamp(18px,3vw,54px);background:#101722e8;border-bottom:1px solid #8d78573c;backdrop-filter:blur(15px);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:12px;min-width:290px}.brand-mark{width:54px;height:54px;flex-shrink:0;position:relative;border:1px solid #9d8450;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 4px #121b28,inset 0 0 0 5px #8c7756,0 0 25px #cbaa5712}.brand-mark:before,.brand-mark:after{content:'✧';position:absolute;color:var(--gold);font-size:10px}.brand-mark:before{top:-9px}.brand-mark:after{bottom:-9px}.brand-moon{color:#e9c987;font:38px var(--display);transform:rotate(-30deg)}.brand-fleur{font-size:15px;color:#d5b573;position:absolute;right:11px;bottom:10px}.brand-copy{line-height:1.25}.brand-copy strong{font:700 17px var(--display);letter-spacing:2px;color:#f1e4c9;white-space:nowrap}.brand-copy small{display:block;margin-top:7px;letter-spacing:2.6px;color:var(--gold2);font-size:8px;font-weight:700}.brand-tick{padding:0 2px}.topnav{display:flex;gap:clamp(10px,2.2vw,32px);align-items:center;height:100%}.topnav a{color:#b8bbbd;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;position:relative;white-space:nowrap;transition:color .2s}.topnav a:hover,.topnav a.active{color:var(--gold)}.topnav a.active:after{content:'';position:absolute;left:0;right:0;bottom:-35px;height:2px;background:var(--gold)}.top-actions{display:flex;align-items:center;gap:9px}.btn,.btn-icon{border-radius:4px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;font-weight:700;letter-spacing:.4px;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease}.btn{padding:12px 18px;font-size:12px}.btn.primary{color:#18202c;background:linear-gradient(125deg,#e6c88a,#bea16a);border-color:#f8d99b;box-shadow:0 0 25px #c5a46422}.btn.primary:hover{background:linear-gradient(125deg,#eed19a,#ceb079);box-shadow:0 0 23px #c5a46440}.btn.ghost{background:#1a2635;color:#f1e2be;border-color:#635842}.btn.outline{background:transparent;border-color:#8d7957;color:var(--gold)}.btn.subtle{background:#ffffff0b;color:#d3c8b8;border-color:#ffffff17}.btn.danger{background:#552c3025;color:#dda7a6;border-color:#a25b6666}.btn.mini{font-size:11px;padding:8px 10px}.btn.smaller{font-size:10px;padding:10px 13px;text-transform:uppercase}.btn-icon{width:42px;height:42px;background:#ffffff07;border:1px solid #ffffff17;color:#dcc18c;gap:3px}.btn-icon span{font:30px var(--display)}kbd{background:#ffffff0a;border:1px solid #8f8e8e40;color:#aca397;border-radius:3px;padding:0 4px;font:11px monospace}.rune-rule{height:20px;display:flex;align-items:center;justify-content:center;color:#af986b;font-size:13px;background:linear-gradient(90deg,transparent,#836a412a,transparent);position:relative}.rune-rule:before,.rune-rule:after{content:'';height:1px;width:30%;max-width:500px;background:linear-gradient(90deg,transparent,#947a52 90%)}.rune-rule:after{transform:rotate(180deg)}.rune-rule span{padding:0 18px}
.site-grid{display:grid;grid-template-columns:minmax(220px,255px) minmax(0,1fr) minmax(180px,230px);max-width:1690px;margin:auto;align-items:start;min-height:calc(100vh - 189px);padding:24px 28px 62px;gap:36px}.sidebar{position:sticky;top:24px;min-height:calc(100vh - 164px);padding:24px 19px 20px;border:1px solid #59617240;background:linear-gradient(155deg,#192435bd,#101824ae);box-shadow:0 12px 45px #0002}.side-title{font-family:var(--display);color:#e1cca2;letter-spacing:1.7px;font-size:14px;font-weight:bold;display:flex;align-items:center;gap:8px}.side-title>span:first-child{font-size:19px}.side-small{font:8px var(--ui);color:#777f87;letter-spacing:1px;margin-left:auto}.side-search{font-size:11px;background:#0f1927;color:#a5a8aa;padding:12px 10px;cursor:pointer;display:flex;align-items:center;gap:9px;border:1px solid #49566b6b;margin:23px 0 26px}.side-search:hover{border-color:var(--gold)}.side-search span{font-size:22px;line-height:10px}.side-search kbd{margin-left:auto}.side-section-title{color:#998866;letter-spacing:1.5px;font-size:9px;font-weight:700;border-bottom:1px solid #5d647045;padding-bottom:11px;margin:0 0 7px}.side-gap{margin-top:32px}.side-category-list{display:grid}.side-category-list a,.side-shortcuts a{display:flex;align-items:center;gap:11px;padding:10px 7px;color:#b7b9bb;font-size:12px;border-left:2px solid transparent;transition:.2s}.side-category-list a:hover,.side-shortcuts a:hover,.side-category-list a.selected{background:#d9b9790d;color:#e9d1a5;border-left-color:var(--gold)}.side-category-list a span,.side-shortcuts a span{font-size:17px;color:#b49d7c;width:23px;text-align:center}.side-category-list a b{margin-left:auto;color:#858789;font-size:10px}.side-shortcuts{display:grid}.sidebar-quote{margin-top:40px;text-align:center;border:1px solid #766b593b;padding:23px 8px;background:radial-gradient(circle at 50% 10%,#9f826720,transparent 78%)}.quote-mark{font:37px var(--display);color:#c8ad73;display:block;height:18px}.sidebar-quote p{font:italic 15px/1.6 var(--display);color:#cfbfaa;margin:13px 0 18px}.small-line{display:block;width:35px;height:1px;background:#8e7a59;margin:0 auto 12px}.sidebar-quote small{color:#978466;font-size:8px;letter-spacing:1px}.side-bottom{margin:21px auto 0;color:#7e8182;text-align:center;font-size:9px;line-height:1.8}.side-bottom span{color:var(--gold)}#main{min-width:0;animation:arrival .35s ease both}.rightbar{position:sticky;top:24px;padding-top:13px}.right-panel{border:1px solid #61627347;padding:18px;background:#131c28ae;margin-bottom:18px}.right-panel h3{color:var(--gold);font:13px var(--display);margin:0 0 13px;letter-spacing:.7px}.right-panel a{display:flex;align-items:center;gap:10px;color:#b4b6b6;font-size:11px;padding:9px 1px;border-bottom:1px solid #ffffff0b;line-height:1.3}.right-panel a:hover{color:var(--gold)}.right-panel a span{color:#ac9367}.right-panel p{font-size:11px;color:#8f989e;margin:0}.right-rune{font:60px var(--display);text-align:center;color:#bba1722b;margin:15px}.footer{border-top:1px solid #ad956630;display:flex;align-items:center;gap:15px;padding:27px max(3vw,25px);background:#0e1521}.footer>span{font:34px var(--display);color:var(--gold)}.footer div{display:grid}.footer b{font:12px var(--display);letter-spacing:1.6px;color:#bba273}.footer small{font-size:10px;color:#8c9093}.footer a{margin-left:auto;color:#bba77e;font-size:11px}
.eyebrow{color:var(--gold2);letter-spacing:3px;font-weight:700;font-size:9px;text-transform:uppercase}.page-loading{text-align:center;padding:150px 0;color:var(--gold)}.home-eyebrow{display:flex;align-items:center;gap:11px;color:var(--gold);font-size:10px;letter-spacing:2.8px;font-weight:700}.home-eyebrow:before{content:'';height:1px;width:35px;background:var(--gold)}.hero{min-height:420px;border:1px solid #826d4a80;position:relative;overflow:hidden;background:linear-gradient(95deg,#111c2c 2%,#17243ccf 70%,#111923e0);box-shadow:var(--shadow);padding:58px clamp(26px,5vw,66px);isolation:isolate}.hero:after{content:'';position:absolute;inset:8px;border:1px solid #a38c554a;pointer-events:none}.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 85% 40%,#9e8f5d33,transparent 40%),radial-gradient(circle at 70% 75%,#58768b26,transparent 40%);z-index:-1}.hero .hero-copy{max-width:610px;position:relative;z-index:2}.hero h1{font:normal clamp(48px,5.5vw,81px)/1.03 var(--display);letter-spacing:-1.8px;color:#f2e4c8;margin:22px 0}.hero h1 em{display:block;font-style:italic;color:#deb977;text-shadow:0 0 30px #a27b3655}.hero p{color:#c8c6bc;font:16px/1.8 var(--display);max-width:460px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-compass{position:absolute;width:380px;height:380px;right:-62px;top:24px;opacity:.65;z-index:0;animation:float 10s ease-in-out infinite}.hero-compass .orb{position:absolute;inset:24px;border:1px solid #d7b7776d;border-radius:50%;box-shadow:0 0 0 17px #d4b56d09,0 0 0 18px #d4b56d35,0 0 0 42px #d4b56d05,0 0 0 43px #d4b56d30}.hero-compass .orb:before{content:'';position:absolute;inset:33px;border:1px dashed #d4b56d6b;border-radius:50%;animation:spin 75s linear infinite}.hero-compass .orb:after{content:'';position:absolute;inset:78px;border:1px solid #e0c68b60;transform:rotate(45deg)}.hero-compass .moon{position:absolute;left:117px;top:91px;color:#f6d7a2;font:190px var(--display);text-shadow:0 0 35px #f5cf7f68;transform:rotate(-28deg)}.hero-compass .season{position:absolute;color:#d4b577;font:24px var(--display)}.hero-compass .season.one{left:178px;top:2px}.hero-compass .season.two{right:6px;top:169px}.hero-compass .season.three{left:179px;bottom:7px}.hero-compass .season.four{left:3px;top:169px}@keyframes float{50%{transform:translateY(14px) rotate(3deg)}}@keyframes spin{to{transform:rotate(360deg)}}.home-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:37px 0 21px}.section-heading{font:normal 26px var(--display);color:#e8d8b9;margin:0}.section-heading span{color:var(--gold);font-size:18px;margin-right:7px}.section-sub{font-size:12px;color:#9ea4a6;margin:4px 0 0}.text-link,.home-intro>a{color:var(--gold);font-size:11px;letter-spacing:.5px;font-weight:700}.text-link:hover{text-decoration:underline}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.wiki-card{border:1px solid #77775d5c;background:linear-gradient(145deg,#1d2a3ba8,#101924e8);position:relative;overflow:hidden;min-height:225px;transition:border-color .2s ease,box-shadow .2s ease}.wiki-card:hover{border-color:#d6b8759c;box-shadow:0 15px 34px #0007}.wiki-card:before{content:'';position:absolute;right:-36px;top:-45px;width:150px;height:150px;border-radius:50%;background:#a89a7a15;filter:blur(10px)}.wiki-card>a{display:block;height:100%;padding:22px;position:relative}.wiki-card .card-symbol{display:flex;align-items:center;justify-content:center;width:59px;height:59px;border:1px solid #bc9a6675;border-radius:50%;font:27px var(--display);color:#e3c488;background:#172435;margin-bottom:20px;overflow:hidden}.wiki-card .card-symbol img{height:100%;width:100%;object-fit:cover}.card-category{text-transform:uppercase;letter-spacing:1.6px;color:#be9f69;font-size:9px;font-weight:700}.wiki-card h3{font:normal 20px var(--display);color:#eddfc5;margin:6px 0 10px}.wiki-card p{font-size:11px;color:#a9afb0;margin:0;line-height:1.65}.card-arrow{position:absolute;right:18px;bottom:14px;color:#b49b65}.feature-banner{margin-top:27px;background:linear-gradient(105deg,#263647,#14202dcf);border:1px solid #8b795a70;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px 30px;position:relative;overflow:hidden}.feature-banner:after{content:'☾';font:100px var(--display);color:#c3a77412;position:absolute;right:26px;top:-47px}.feature-banner .feature-text{position:relative;z-index:1}.feature-banner strong{display:block;font:23px var(--display);color:#e9d9b8}.feature-banner p{font:12px/1.7 var(--ui);color:#aab3b5;margin:6px 0 0}.stat-strip{display:grid;grid-template-columns:repeat(3,1fr);margin-top:20px;border:1px solid #706a574e;background:#ffffff04}.stat-strip>div{text-align:center;padding:18px 8px;border-right:1px solid #706a574e}.stat-strip>div:last-child{border-right:none}.stat-strip strong{display:block;font:28px var(--display);color:#d9b979}.stat-strip small{display:block;font-size:9px;letter-spacing:1px;color:#949b9f;text-transform:uppercase}
.breadcrumbs{display:flex;align-items:center;gap:10px;margin:2px 0 23px;color:#979e9e;font-size:11px;flex-wrap:wrap}.breadcrumbs a:hover{color:var(--gold)}.breadcrumbs b{color:#d4b77d;font-weight:normal}.article-shell{border:1px solid #a68a62a6;padding:7px;background:#1b2430;box-shadow:var(--shadow)}.article-hero{background:linear-gradient(125deg,#1b293c,#172336 60%,#263649);position:relative;min-height:230px;padding:43px clamp(25px,4vw,55px);overflow:hidden}.article-hero:before{content:'';position:absolute;right:-30px;bottom:-90px;width:300px;height:300px;border-radius:50%;border:1px solid #b3985b56;box-shadow:0 0 0 24px #b3985b09,0 0 0 25px #b3985b22,0 0 0 60px #b3985b09}.article-hero.has-cover{background-position:center;background-size:cover}.article-hero.has-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111b2cef 5%,#1520339c 65%,#1520335e)}.article-hero>*{position:relative;z-index:1}.article-hero .article-icon{font:36px var(--display);color:#d7b77c;display:block;margin-bottom:12px}.article-hero h1{font:normal clamp(36px,4vw,54px)/1.12 var(--display);color:#f1e4ca;margin:10px 0}.article-hero p{color:#c1c2b9;font:italic 15px/1.55 var(--display);max-width:650px}.article-main{background:var(--paper);color:var(--paper-ink);padding:clamp(24px,4vw,50px);border-top:4px double #998261;min-height:500px;position:relative}.article-main:before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.25;background-image:radial-gradient(#948d7729 .8px,transparent 1px);background-size:7px 7px}.article-main>*{position:relative}.article-topline{display:flex;gap:12px;justify-content:space-between;align-items:center;border-bottom:1px solid #b7ab95;padding-bottom:18px;margin-bottom:25px;flex-wrap:wrap}.article-topline small{color:#796e5e;font:10px var(--ui);letter-spacing:1px;text-transform:uppercase}.article-topline button{border:1px solid #ad976f;color:#645131;background:transparent;font-size:11px;font-weight:bold;padding:8px 14px;border-radius:3px}.article-topline button:hover{background:#e5d2ad}.article-prose{font:17px/1.88 var(--display);color:#333337;overflow-wrap:anywhere}.article-prose>h2,.article-prose>h3{line-height:1.28;color:#483f35;margin:30px 0 12px}.article-prose>h2{font-size:27px;border-bottom:1px solid #c6b596;padding-bottom:8px}.article-prose>h3{font-size:21px}.article-prose>h2:first-child{margin-top:0}.article-prose p{margin:0 0 17px}.article-prose ul{padding-left:23px}.article-prose li{margin-bottom:7px}.article-prose blockquote{margin:23px 0;padding:13px 21px;border-left:3px solid #a48751;background:#cbb9963b;color:#62523b;font-style:italic}.article-prose a.wiki-link{color:#825d25;border-bottom:1px dotted #b18d51;font-weight:600;transition:.2s}.article-prose a.wiki-link:hover{color:#503412;background:#cfbb9370}.article-prose a.missing-link{color:#9b6260;border-bottom:1px dashed #b9897e}.article-prose a.external-link{color:#3c6685;text-decoration:underline}.article-prose img{max-width:100%;max-height:650px;height:auto;border:6px solid #f6ead4;box-shadow:0 5px 22px #0002;cursor:zoom-in}.article-prose figure{text-align:center;margin:24px auto}.article-prose figcaption{font:italic 12px var(--display);color:#716858;margin-top:7px}.article-prose code{font:13px monospace;background:#c6b89f82;padding:2px 4px}.article-prose strong{font-weight:700}.article-actions{margin-top:32px;padding-top:20px;border-top:1px solid #c6b9a1;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.article-actions span{color:#82745e;font:12px var(--display);font-style:italic}.article-actions button{color:#694c25;background:none;border:none;font-weight:bold;font-size:11px}.facts{border:1px solid #c5b594;background:#d6c7aa3d;padding:18px;margin:0 0 27px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.fact-key{font:9px var(--ui);color:#826f50;letter-spacing:1px;text-transform:uppercase}.fact-value{font:15px var(--display);color:#463e35;margin-top:3px;overflow-wrap:anywhere}.fact-value a{border-bottom:1px dotted #aa915f;color:#714e19}.related-footer{padding:24px;background:#1c2839;border-top:1px solid #b7a17c55}.related-footer h3{color:var(--gold);font:21px var(--display);margin:0 0 14px}.related-chips{display:flex;flex-wrap:wrap;gap:8px}.related-chips a{padding:7px 10px;background:#243143;border:1px solid #b6a07355;color:#dac9a8;font-size:11px}.related-chips a:hover{background:#3a4250}.category-intro{padding:30px 36px;background:linear-gradient(115deg,#1e2c40,#141c2a);border:1px solid #8d795a69;margin-bottom:25px;position:relative;overflow:hidden}.category-intro:after{content:'✧';font:155px var(--display);color:#ad905b12;position:absolute;right:20px;top:-70px}.category-intro>*{position:relative;z-index:1}.category-intro h1{font:45px var(--display);margin:6px 0;color:#e9d7b3}.category-intro p{color:#aeb2b4;font:14px var(--display);max-width:560px}.category-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:15px;flex-wrap:wrap}.category-toolbar small{color:#9aa0a1}.category-toolbar input{width:210px;max-width:100%;background:#111c2b;border:1px solid #63656b;color:#e5dfd1;padding:9px;font-size:12px}.not-found{text-align:center;padding:90px 25px;border:1px solid #61594366;background:#141f2e}.not-found h1{font:40px var(--display);color:var(--gold)}.not-found p{color:#a3adaf}.page-tag{display:inline-block;border:1px solid #b7965954;color:#ceaf7e;padding:4px 9px;text-transform:uppercase;letter-spacing:1.5px;font-size:9px;font-weight:700}
/* Dialogs */
dialog{border:1px solid #a78b59;background:#131e2c;color:var(--ink);box-shadow:0 28px 110px #000b;padding:0;max-width:calc(100vw - 24px);max-height:calc(100vh - 28px);border-radius:4px}dialog::backdrop{background:#03080ddf;backdrop-filter:blur(5px)}dialog[open]{animation:dialogup .2s ease both}@keyframes dialogup{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.dialog-header{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:18px}.dialog-header h2{font:29px var(--display);margin:5px 0;color:#f0ddbd}.x-button{background:#ffffff08;color:#e3d3ba;border:1px solid #ffffff21;border-radius:3px;font-size:25px;width:36px;height:36px;line-height:1}.x-button:hover{background:#a3855433}.search-dialog{width:min(680px,95vw);top:12vh;margin:0 auto;padding:22px}.search-head{display:flex;align-items:center;gap:12px;background:#0b1420;border:1px solid #b99a6688;padding:8px 10px}.search-glyph{font:32px var(--display);color:var(--gold)}.search-head input{background:none;border:none;outline:none;flex:1;min-width:0;color:#eee0c8;font:17px var(--display)}.search-hint{font-size:11px;color:#8f9a9c;padding:0 7px;margin:16px 0}.search-results{max-height:56vh;overflow:auto}.search-result{display:flex;gap:15px;align-items:center;width:100%;padding:13px;border:none;border-bottom:1px solid #ffffff13;text-align:left;background:transparent;color:#daccb7}.search-result:hover{background:#d5b57916}.search-result>span{font:25px var(--display);width:35px;color:var(--gold);text-align:center}.search-result div{min-width:0}.search-result strong{display:block;font:17px var(--display)}.search-result small{display:block;font:10px var(--ui);color:#a1aaa8;margin-top:5px}.empty-state{padding:30px;text-align:center;color:#a3a9aa;font:13px var(--display)}.editor-dialog{width:min(1380px,98vw);padding:25px clamp(15px,2.2vw,32px);overflow:auto}.editor-note{font-size:12px;color:#c2b6a5;padding:10px 13px;background:#dac18b12;border-left:2px solid #cbaa70;margin:-2px 0 22px}.editor-note span{color:var(--gold);margin-right:7px}.editor-layout{display:grid;grid-template-columns:1fr .85fr;gap:21px}.editor-fields{min-width:0}dialog label{display:block;color:#bdab88;letter-spacing:1.1px;font-size:9px;font-weight:bold;margin:0 0 16px}dialog label input,dialog label textarea,dialog label select{display:block;margin:7px 0 0;width:100%;padding:11px 12px;border:1px solid #616f7e;background:#0b1522;color:#e9e0d3;border-radius:2px;letter-spacing:normal;font-size:13px;outline:none}dialog label textarea{resize:vertical}dialog label input:focus,dialog label textarea:focus,dialog label select:focus{border-color:#d9b979}.field-two{display:grid;grid-template-columns:1fr 1fr;gap:13px}.editor-cover-row{display:flex;align-items:center;gap:15px;padding:10px;background:#1a293c;border:1px solid #465468;margin-bottom:13px}.editor-cover-thumb{width:78px;height:62px;flex-shrink:0;display:grid;place-items:center;border:1px solid #9c855e;font:30px var(--display);color:var(--gold);overflow:hidden}.editor-cover-thumb img{width:100%;height:100%;object-fit:cover}.editor-cover-row strong{font:15px var(--display);color:#e0cca9}.editor-cover-row p{font-size:10px;color:#a6a9a9;margin:3px 0 8px}.textarea-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.textarea-top label{margin-bottom:7px}.textarea-top span{font-size:10px;color:#9da7ab}.toolbar{display:flex;gap:3px;flex-wrap:wrap;padding:5px;background:#172235;border:1px solid #4f6071;border-bottom:none}.toolbar button{background:transparent;border:1px solid transparent;border-radius:3px;color:#d4c5ae;padding:5px 10px;font-size:12px}.toolbar button:hover{border-color:#ab8b53;background:#b7955e1f}.body-input{display:block;min-height:335px;width:100%;resize:vertical;background:#0b1522;color:#ece0cb;border:1px solid #4f6071;padding:15px;font:13px/1.8 Consolas,'Liberation Mono',monospace;tab-size:2}.body-input:focus{outline:1px solid var(--gold)}.editor-tips,.small-tip{color:#9ea8ab;font-size:11px;margin-top:11px}.editor-tips code,.editor-note code{color:#e5c58b}.editor-preview{border:1px solid #485468;background:#e9dfc9;color:#27282d;min-height:580px;overflow:auto}.preview-caption{font:10px var(--ui);color:#ceb37c;background:#172437;padding:12px;letter-spacing:2px;text-align:center}.editor-preview #editorPreview{padding:20px}.editor-preview h1{font:32px var(--display);color:#453a2e;margin:0 0 11px}.editor-preview .preview-summary{font:italic 15px var(--display);color:#796c5d;border-bottom:1px solid #bcae91;padding-bottom:16px;margin-bottom:19px}.editor-preview .article-prose{font-size:15px}.editor-bottom{display:flex;gap:10px;align-items:center;padding:19px 0 0;border-top:1px solid #5b6674;margin-top:20px}.editor-draft-note{font-size:10px;color:#9ca5a6;flex:1;text-align:right}.small-dialog{padding:23px;width:min(520px,95vw)}.link-picker-list{height:285px;overflow:auto;background:#0c1725;border:1px solid #3c4b5d}.link-picker-list button{display:flex;align-items:center;gap:13px;padding:9px 12px;text-align:left;background:transparent;border:0;border-bottom:1px solid #ffffff13;width:100%;color:#e0d5be}.link-picker-list button:hover{background:#bda06b21}.link-picker-list span{font-size:20px;width:30px;color:var(--gold)}.link-picker-list small{display:block;color:#8f9b9d;font-size:10px}.publish-dialog{padding:25px 28px;width:min(630px,95vw);overflow:auto}.status-summary{background:#1d2c3b;border:1px solid #b796594a;padding:16px;margin-bottom:22px;color:#decaa8;font:16px var(--display)}.publish-explain{font-size:12px;color:#b4babb;line-height:1.8}.publish-explain h3{font:20px var(--display);color:#e2cfaa;margin:0 0 7px}.publish-explain p{margin:7px 0}.publish-explain b{color:#e1c58e}.publish-fields{margin-top:22px}.publish-utilities{display:flex;flex-wrap:wrap;gap:14px 19px;font-size:11px}.publish-utilities a,.plain-link{color:#d6bc84;background:none;border:0;text-decoration:underline;padding:0;font-weight:700}.publish-warning{font-size:11px;color:#b8aeb0;border-left:2px solid #ad796a;padding:10px 12px;background:#a66e6716;margin-top:20px}.publish-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:21px}.publish-foot p{font-size:11px;color:#d2bc8a;flex:1}.lightbox-dialog{background:#07101a;padding:34px;max-width:96vw;text-align:center}.lightbox-dialog .x-button{position:absolute;right:8px;top:8px;z-index:1}.lightbox-dialog img{display:block;max-width:85vw;max-height:77vh;margin:auto}.lightbox-dialog p{font:italic 13px var(--display);color:#c8bfaa}.toast{position:fixed;right:24px;bottom:24px;background:#253b4b;border:1px solid #c8a46c;color:#f2e2be;box-shadow:var(--shadow);padding:13px 18px;font-size:12px;z-index:200;max-width:320px;transform:translateY(100px);opacity:0;pointer-events:none;transition:.3s}.toast.show{transform:translateY(0);opacity:1}@keyframes arrival{from{opacity:.2;transform:translateY(12px)}to{opacity:1;transform:none}}

/* V1.1: richer sky, subtle twinkles, stable hover hit targets. */
.starfield::before{content:"";position:absolute;inset:0;pointer-events:none;
 background-image:radial-gradient(circle,#e7d6ac87 .75px,transparent 1.4px),radial-gradient(circle,#a8c9e178 .75px,transparent 1.5px);
 background-size:109px 101px,173px 139px;background-position:13px 31px,74px 15px;opacity:.43}
.starfield i:nth-child(n+13){width:1.5px;height:1.5px;box-shadow:0 0 6px 1px #bcd9ed55;animation-duration:9s;opacity:.53}
.starfield i:nth-child(3n){animation-duration:10.5s}.starfield i:nth-child(4n){background:#b6d5eb}
.starfield i:nth-child(13){left:58.3%;top:71.2%;animation-delay:-6.2s}
.starfield i:nth-child(14){left:4.8%;top:52.5%;animation-delay:-2.1s}
.starfield i:nth-child(15){left:72.8%;top:55.5%;animation-delay:-6.0s}
.starfield i:nth-child(16){left:51.2%;top:90.4%;animation-delay:-4.5s}
.starfield i:nth-child(17){left:88.8%;top:40.5%;animation-delay:-7.6s}
.starfield i:nth-child(18){left:19.4%;top:43.9%;animation-delay:-4.6s}
.starfield i:nth-child(19){left:91.5%;top:28.1%;animation-delay:-5.7s}
.starfield i:nth-child(20){left:29.8%;top:81.3%;animation-delay:-1.4s}
.starfield i:nth-child(21){left:83.4%;top:16.2%;animation-delay:-6.2s}
.starfield i:nth-child(22){left:50.2%;top:15.5%;animation-delay:-0.7s}
.starfield i:nth-child(23){left:11.2%;top:25.6%;animation-delay:-3.8s}
.starfield i:nth-child(24){left:81.0%;top:32.3%;animation-delay:-6.1s}
.starfield i:nth-child(25){left:8.3%;top:86.6%;animation-delay:-5.4s}
.starfield i:nth-child(26){left:10.6%;top:49.2%;animation-delay:-2.0s}
.starfield i:nth-child(27){left:14.0%;top:7.5%;animation-delay:-4.5s}
.starfield i:nth-child(28){left:20.5%;top:68.8%;animation-delay:-0.1s}
.starfield i:nth-child(29){left:26.0%;top:4.2%;animation-delay:-4.3s}
.starfield i:nth-child(30){left:41.5%;top:30.1%;animation-delay:-1.1s}
.starfield i:nth-child(31){left:52.1%;top:19.0%;animation-delay:-4.8s}
.starfield i:nth-child(32){left:52.2%;top:61.2%;animation-delay:-2.8s}
.starfield i:nth-child(33){left:55.9%;top:62.9%;animation-delay:-6.3s}
.starfield i:nth-child(34){left:20.4%;top:25.4%;animation-delay:-4.1s}
.starfield i:nth-child(35){left:16.7%;top:75.2%;animation-delay:-5.0s}
.starfield i:nth-child(36){left:74.9%;top:41.8%;animation-delay:-4.0s}
.starfield i:nth-child(37){left:27.6%;top:78.4%;animation-delay:-1.1s}
.starfield i:nth-child(38){left:82.1%;top:75.5%;animation-delay:-0.5s}
.starfield i:nth-child(39){left:51.9%;top:65.6%;animation-delay:-5.6s}
.starfield i:nth-child(40){left:9.5%;top:51.2%;animation-delay:-6.9s}
@media(max-width:1300px){.site-grid{grid-template-columns:225px minmax(0,1fr);gap:24px}.rightbar{display:none}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topnav{gap:15px}.topnav a{font-size:10px}.brand{min-width:248px}.brand-copy strong{font-size:16px}}@media(max-width:980px){.topnav{display:none}.site-grid{grid-template-columns:1fr;padding:17px 22px 45px}.sidebar{position:static;min-height:0;padding:13px}.side-title,.side-search,.side-gap,.side-shortcuts,.sidebar-quote,.side-bottom{display:none}.side-section-title{margin:0 0 8px}.side-category-list{display:flex;gap:3px;overflow-x:auto}.side-category-list a{flex-shrink:0;border-left:none;border-bottom:2px solid transparent;padding:8px 9px}.side-category-list a.selected{border-bottom-color:var(--gold);border-left-color:transparent}.side-category-list a b{display:none}.hero-compass{right:-100px}.editor-layout{grid-template-columns:1fr}.editor-preview{min-height:180px;max-height:350px}.body-input{min-height:290px}}@media(max-width:620px){.topbar{padding:10px 14px;height:75px;gap:6px}.brand{gap:8px;min-width:0}.brand-mark{width:40px;height:40px}.brand-moon{font-size:28px}.brand-fleur{font-size:9px;right:8px;bottom:7px}.brand-copy strong{font-size:12px;letter-spacing:1px}.brand-copy small{font-size:6px;letter-spacing:1.3px}.top-actions{gap:4px}.btn.smaller{padding:7px 9px}.desktop-only{display:none}.btn-icon{height:35px;width:35px}.btn-icon kbd{display:none}.site-grid{padding:12px 12px 35px;gap:16px}.sidebar{margin-bottom:0}.hero{min-height:380px;padding:34px 25px}.hero h1{font-size:49px}.hero p{font-size:14px}.hero-compass{width:320px;height:320px;top:100px;right:-200px;opacity:.35}.hero-compass .moon{font-size:130px;left:115px}.hero-compass .season{display:none}.hero-actions{gap:9px}.hero-actions .btn{padding:11px;font-size:11px}.card-grid{grid-template-columns:1fr}.wiki-card{min-height:190px}.wiki-card a{padding:18px}.wiki-card .card-symbol{margin-bottom:12px}.home-intro{margin-top:25px}.section-heading{font-size:22px}.feature-banner{flex-direction:column;align-items:flex-start;padding:21px}.article-hero{min-height:190px;padding:30px 22px}.article-hero h1{font-size:36px}.article-main{padding:22px 18px}.article-prose{font-size:16px}.facts{grid-template-columns:1fr}.category-intro{padding:26px 21px}.category-intro h1{font-size:37px}.field-two{grid-template-columns:1fr}.editor-dialog{padding:15px}.editor-bottom{flex-wrap:wrap}.editor-draft-note{flex-basis:100%;order:-1;text-align:left}.editor-bottom .btn{flex:1}.footer{padding:24px 13px}.footer a{display:none}.stat-strip strong{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
/* The archive shelves may scroll horizontally on a narrow phone, but must never widen the page. */
@media(max-width:980px){.site-grid{grid-template-columns:minmax(0,1fr)}.site-grid>.sidebar,.site-grid>#main{min-width:0}.side-category-list{width:100%;max-width:100%;min-width:0;overflow-x:auto;scrollbar-width:thin}}

/* V1.2 — longer campaign title, stable branding across breakpoints.
   Keep the existing button hitboxes and animation-safe styles. */
.brand{min-width:310px}.brand-copy strong{font-size:15px;letter-spacing:1.15px}
.hero h1{font-size:clamp(45px,4.8vw,76px);overflow-wrap:normal}
@media(max-width:1300px){.brand{min-width:255px}.brand-copy strong{font-size:12.5px;letter-spacing:.55px}}
@media(max-width:980px){.brand{min-width:0}.brand-copy strong{font-size:16px;letter-spacing:1px}}
@media(max-width:620px){.brand-copy strong{font-size:10px;letter-spacing:.1px}.brand-copy small{letter-spacing:.7px}.hero h1{font-size:clamp(36px,9vw,48px)}}
@media(max-width:380px){.brand-mark{width:34px;height:34px}.brand-copy strong{font-size:9px}.brand-copy small{font-size:5.5px}.top-actions{gap:2px}}

/* V2.0 — THE LIVING ATLAS · FATE CONSTELLATION · SESSION JOURNAL · QUEST BOARD */
.topnav{gap:clamp(8px,1.35vw,21px)}.topnav a{font-size:10px;letter-spacing:.6px}.topbar{gap:10px}.brand{min-width:285px}.top-actions{gap:6px}
.living-head{padding:38px clamp(24px,4vw,54px) 35px;background:radial-gradient(ellipse at 91% 10%,#6c558533,transparent 51%),linear-gradient(120deg,#192a3c,#121b29 65%,#1a2235);border:1px solid #89704e69;position:relative;overflow:hidden;margin:0 0 20px;box-shadow:var(--shadow)}
.living-head::after{content:'☾';position:absolute;right:5%;top:-58px;font:240px var(--display);color:#d0b47b10;pointer-events:none;animation:lunar-drift 13s ease-in-out infinite alternate}.living-head h1{font:normal clamp(36px,4vw,63px)/1.08 var(--display);color:#f3e6c6;margin:12px 0}.living-head p{margin:0;position:relative;z-index:1;color:#b8bdc0;font:14px/1.8 var(--ui);max-width:740px}
@keyframes lunar-drift{to{transform:translateY(12px) rotate(3deg)}}
.living-tools{display:flex;align-items:center;flex-wrap:wrap;gap:11px;margin:13px 0 20px}.living-tools>.btn:first-of-type{margin-left:auto}.map-region-caption,.quest-board-count{font:italic 14px var(--display);color:#aeb9c3}.living-tabs{display:flex;gap:7px;flex-wrap:wrap}.living-tab{border:1px solid #816d506c;color:#b9c1ca;background:#142233;padding:9px 14px;border-radius:5px;font:700 11px var(--ui);letter-spacing:.25px;transition:border-color .2s,background-color .2s,color .2s}.living-tab:hover,.living-tab.active{border-color:#e1c385;color:#f4d7a0;background:#2c2d31}.living-tab:focus-visible{outline:2px solid #eac782;outline-offset:3px}.focus-select{background:#192637;color:#eee0c1;border:1px solid #7b765e;border-radius:4px;padding:10px 13px;max-width:100%;min-width:210px;font-size:12px}
.atlas-layout,.constellation-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,245px);gap:17px;align-items:stretch}.atlas-surface{position:relative;isolation:isolate;min-height:510px;aspect-ratio:1000/650;max-height:740px;overflow:hidden;border:1px solid #ad945c7a;border-radius:8px;background:#0a2134;background-image:radial-gradient(ellipse at 22% 44%,#27708865,transparent 65%),radial-gradient(ellipse at 68% 57%,#a18a5060,transparent 52%),linear-gradient(155deg,#112b40,#0c1628);box-shadow:inset 0 0 90px #04090e90,0 24px 52px #0005}
.atlas-surface.threskel{background-image:radial-gradient(circle at 71% 35%,#b8895f65,transparent 42%),radial-gradient(ellipse at 25% 75%,#547c6b70,transparent 50%),linear-gradient(120deg,#182a31,#1b2d36)}.atlas-surface.shadow{background-image:radial-gradient(ellipse at 54% 33%,#7f6c9b35,transparent 45%),radial-gradient(ellipse at 72% 82%,#4d426c7c,transparent 47%),linear-gradient(130deg,#090d16,#171326)}
.atlas-surface:before{content:'';position:absolute;inset:0;opacity:.28;pointer-events:none;background-image:radial-gradient(circle,#e7d2a1 1px,transparent 1.4px);background-size:47px 43px;z-index:1}.atlas-surface:after{content:'';position:absolute;inset:12px;border:1px solid #d3b77c28;border-radius:5px;pointer-events:none;z-index:3}.atlas-paths{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.landmass{fill:#85865c43;stroke:#b5aa7273;stroke-width:2;stroke-dasharray:3 5}.shadow-haze{fill:#654c8e27;stroke:#ab7aa751;stroke-width:3}.shadow-halo{fill:#7f5bad16;stroke:#ad85dd45;stroke-width:1.5;stroke-dasharray:4 9}.hillline{fill:none;stroke:#b6b7862b;stroke-width:19;stroke-linecap:round}.map-contours path{fill:none;stroke:#e2c99e0f;stroke-width:1.6}.journey-line{fill:none;stroke:#dcc087;stroke-width:4;stroke-linecap:round;stroke-dasharray:4 10;animation:route-flow 45s linear infinite}.journey-line.voyage{stroke:#97d4d5;stroke-width:3.3;stroke-dasharray:4 9}.journey-line.portal{stroke:#c6a1e7;stroke-width:5;stroke-dasharray:2 9;filter:drop-shadow(0 0 6px #9a65cf)}@keyframes route-flow{to{stroke-dashoffset:-460}}
.map-pin{position:absolute;z-index:2;display:grid;justify-items:center;gap:3px;border:0;background:transparent;color:#f7e9c9;transform:translate(-50%,-50%);max-width:132px;padding:4px;cursor:pointer;touch-action:none;text-shadow:0 2px 4px #000,0 0 8px #000}.pin-dot{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;border:1px solid #f0dca5;background:#172333d9;box-shadow:0 0 0 5px #dbc17c15,0 0 26px #e5c9866b;font:21px var(--display);transition:box-shadow .2s,background-color .2s;animation:pin-halo 4s ease-in-out infinite alternate}.map-pin:nth-child(3n) .pin-dot{animation-delay:-1.4s}.map-pin:hover .pin-dot,.map-pin.selected .pin-dot,.map-pin.dragging .pin-dot{background:#b79459;box-shadow:0 0 0 7px #e6cb8540,0 0 28px #e6c77faa}.pin-name{font:600 11px/1.1 var(--ui);letter-spacing:.2px;max-width:115px;overflow-wrap:anywhere;white-space:normal}.map-pin.dragging{z-index:6}@keyframes pin-halo{to{box-shadow:0 0 0 8px #dbc17c06,0 0 35px #e5c9867f}}
.map-compass{position:absolute;top:24px;right:27px;z-index:2;color:#c6b683;font:italic 24px var(--display);border:1px solid #b9a1736b;border-radius:50%;width:54px;height:54px;display:grid;place-items:center;pointer-events:none}.map-compass:after{content:'↑';position:absolute;top:23px;font:14px var(--ui)}
.atlas-detail{background:linear-gradient(140deg,#1a2637d9,#101c2ace);padding:24px;border:1px solid #90785463;min-width:0;border-radius:6px;max-height:740px;overflow-y:auto}.atlas-detail h2{font:normal 28px/1.2 var(--display);color:#eddcb9;margin:17px 0}.atlas-detail h3{color:#d4b986;font:17px var(--display);margin:28px 0 11px}.atlas-detail p{font-size:12px;line-height:1.8;color:#b3b9c0}.atlas-detail-links{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.atlas-detail-links>.btn{font-size:10px;padding:9px}.side-story{display:block;font:12px/1.4 var(--ui);padding:9px;border-bottom:1px solid #ffffff12;color:#c9c0b0}.side-story:hover{color:#ead29a}.map-symbol{text-align:center;font:120px var(--display);color:#be9e5d2d;line-height:1.6;animation:lunar-drift 12s ease-in-out infinite alternate}.map-explainer{margin-top:30px!important;font-size:10px!important;color:#a2a4a5!important}
.atlas-chronology{margin-top:27px;display:grid;gap:10px}.atlas-chronology h2{font:26px var(--display);color:#e8d2a4;margin:0 0 6px}.journey-card{display:flex;align-items:center;gap:15px;padding:16px 22px;background:#172437ab;border:1px solid #776e5b5e;border-radius:5px;transition:background-color .2s,border-color .2s}.journey-card:hover{background:#213348;border-color:#ccae76}.journey-card strong{color:#e9d2a6;font:18px var(--display)}.journey-card small{margin-left:auto;color:#b3bbc4;font-size:11px}.journey-card>span{color:var(--gold)}
.constellation-stage{position:relative;border:1px solid #a38c5875;border-radius:8px;min-height:510px;background:radial-gradient(circle at 50% 50%,#283047 0,#171a2c 45%,#0b1422 98%);overflow:hidden;box-shadow:inset 0 0 80px #010409,0 18px 50px #0006}.constellation-stage::before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#e8d3ac78 1px,transparent 1.5px),radial-gradient(circle,#abb8dd50 1px,transparent 1.5px);background-size:62px 58px,107px 114px;animation:sky-drift 110s linear infinite}.constellation-stage svg{position:relative;width:100%;height:auto;max-height:680px;aspect-ratio:1000/690;display:block}.constellation-link{fill:none;stroke:#c5af8375;stroke-width:2.4;stroke-dasharray:5 9;animation:route-flow 65s linear infinite;pointer-events:stroke}.star-node{cursor:pointer;outline:none}.star-node circle{fill:#1b344d;stroke:#d4bc89;stroke-width:2.7;filter:drop-shadow(0 0 12px #cba97b61);transition:fill .2s,stroke-width .2s}.star-node:hover circle,.star-node:focus-visible circle{fill:#685a46;stroke-width:4.5}.star-node.central circle{fill:#4e3e4f;stroke:#f9daa5;stroke-width:3.2;filter:drop-shadow(0 0 24px #dfbf8a87)}.star-glyph{font:23px var(--display);fill:#e8d2a4;pointer-events:none}.star-node.central .star-glyph{font-size:42px}.star-label{font:600 15px var(--ui);fill:#dedad6;paint-order:stroke;stroke:#0b1422;stroke-width:6px;stroke-linejoin:round;pointer-events:none}.star-node.central .star-label{font:bold 25px var(--display);fill:#f4d8a4}.constellation-note{position:absolute;bottom:15px;left:15px;right:15px;text-align:center;color:#afaab0;font:11px var(--ui);pointer-events:none}.connection-pill{display:flex;width:100%;gap:4px;flex-direction:column;align-items:start;text-align:left;margin-bottom:6px;padding:9px 10px;background:#ffffff08;border:1px solid #ffffff13;color:#e2d6c0;border-radius:4px}.connection-pill:hover{background:#d4ba7e18;border-color:#c4a36d}.connection-pill strong{font:13px var(--display)}.connection-pill small{font:10px var(--ui);color:#a5adb8}.muted-note{color:#9da2a7;font-size:11px}
@keyframes sky-drift{to{background-position:160px 110px,-100px 80px}}
.session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.session-card{padding:24px;min-height:190px;background:linear-gradient(145deg,#1c293c,#111a29);border:1px solid #9f89555a;border-radius:6px;position:relative;overflow:hidden;transition:border-color .2s,background-color .2s}.session-card:after{content:'☾';position:absolute;right:-10px;bottom:-65px;color:#c8a97412;font:180px var(--display);pointer-events:none}.session-card:hover{border-color:#d7b97a;background:linear-gradient(145deg,#24354a,#172134)}.session-num{font:bold 10px var(--ui);letter-spacing:2px;color:#d0b779}.session-card h3{font:26px/1.2 var(--display);margin:14px 0 8px;color:#f0ddba}.session-card p{font:12px/1.8 var(--ui);color:#aab6c3;max-width:390px}.session-open{font:11px var(--ui);color:#e0c084}
.quest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.quest-grid:has(.quest-empty){grid-template-columns:1fr}.quest-empty{min-height:370px;display:grid;place-items:center;align-content:center;gap:10px;text-align:center;padding:40px 24px;border:1px dashed #b1936580;border-radius:9px;background:radial-gradient(ellipse at center,#9171471a,transparent 65%),linear-gradient(120deg,#1a2737,#101824)}.empty-seal{font:100px/1.2 var(--display);color:#dec382;filter:drop-shadow(0 0 18px #caac7245)}.quest-empty h2{font:32px var(--display);color:#e9cf9d;margin:0}.quest-empty p{max-width:490px;color:#b7b9b9;font-size:13px;margin:0 0 15px}.quest-card{padding:22px;background:linear-gradient(160deg,#1b2839,#121e2d);border:1px solid #8b7d5d92;border-radius:7px}.quest-card-head{display:flex;justify-content:space-between;align-items:center}.quest-state{border:1px solid #ab9269;color:#e8c990;font-size:10px;text-transform:uppercase;letter-spacing:1px;padding:5px 10px;border-radius:3px}.quest-state.completed{border-color:#7a9b81;color:#bcd5b6}.quest-state.in-progress{border-color:#8e9eb4;color:#b5c9dd}.quest-seal{font:35px var(--display);color:#af9a62}.quest-card h2{font:27px var(--display);margin:12px 0 4px;color:#ebd6b0}.quest-giver{font:11px var(--ui);color:#a6a7a8}.quest-card .article-prose{font-size:13px}.quest-reward{padding:10px;color:#dfc88c;background:#c4a16f12;font-size:12px}.quest-card-image{width:100%;max-height:230px;object-fit:cover;border-radius:3px;cursor:zoom-in;margin:12px 0}
.living-edit-dialog{width:min(700px,95vw);max-height:90vh;overflow-y:auto}.living-edit-dialog label{display:block;margin:10px 0 14px;font:700 10px var(--ui);letter-spacing:1px;color:#cbbb9e}.living-edit-dialog input,.living-edit-dialog select,.living-edit-dialog textarea{display:block;width:100%;min-width:0;margin-top:7px;padding:10px 12px;color:#e9e2d7;border:1px solid #84765991;border-radius:4px;background:#131e2b;font:13px/1.4 var(--ui);letter-spacing:0}.living-edit-dialog label small{font-weight:400;letter-spacing:0}.edit-hint{font:12px/1.7 var(--ui);color:#b9bfc6;margin:8px 0 22px}.living-action-row{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:20px}.living-action-row .danger{margin-right:auto}.modal-divider{border:0;border-top:1px solid #8b78584e;margin:22px 0}.edit-relationship-list{display:grid;gap:7px;max-height:190px;overflow-y:auto;margin-top:15px}.relationship-row{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #ffffff20;padding:5px 4px;font:11px var(--ui);color:#c8ced2}.plain-remove{border:1px solid #855859;background:#39252b;color:#e9b3b3;border-radius:4px;min-width:28px;height:28px}.quest-cover-control{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:10px;color:#b6b6b7}
.living-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:33px 0}.living-feature{display:grid;grid-template-columns:40px 1fr auto;grid-template-rows:1fr 1fr;align-items:center;gap:0 10px;padding:17px;background:linear-gradient(120deg,#17273b,#131d2b);border:1px solid #86785878;border-radius:5px;transition:background-color .2s,border-color .2s}.living-feature:hover{background:#26354a;border-color:#d6b779}.living-feature-icon{font:31px var(--display);grid-row:span 2;color:#dbbd7b;text-align:center}.living-feature strong{font:17px var(--display);color:#efdcbb}.living-feature small{font:11px var(--ui);color:#a6b1b8}.living-feature-arrow{grid-column:3;grid-row:span 2;color:#deb978;font:20px var(--display)}
.article-gallery{margin-top:35px}.article-gallery h3{font:25px var(--display);color:#e7d5b1;margin:0 0 14px}.article-gallery-grid,.edit-gallery-items,.preview-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.gallery-tile{aspect-ratio:4/3;overflow:hidden;border:1px solid #a38b6099;border-radius:4px;background:#111e2e;padding:0}.gallery-tile img{width:100%;height:100%;object-fit:contain;transition:filter .2s}.gallery-tile:hover img{filter:brightness(1.2)}.gallery-manager{margin:14px 0;padding:15px;border:1px solid #665c4d;background:#142333}.gallery-manager strong{font:17px var(--display);color:#e4cfa6}.gallery-manager p{font-size:11px;color:#a9b0b6;margin:4px 0 10px}.gallery-edit-tile{position:relative;aspect-ratio:4/3;border:1px solid #bba875;border-radius:4px;overflow:hidden;background:#131c27;padding:0}.gallery-edit-tile img{width:100%;height:100%;object-fit:contain}.gallery-edit-tile span{position:absolute;right:3px;top:3px;background:#34212bea;color:#fff;border-radius:50%;line-height:1;width:22px;height:22px;font-size:20px}.preview-gallery img{width:100%;aspect-ratio:4/3;object-fit:contain}.session-fields{padding-top:10px;border-top:1px solid #ffffff21}
@media(max-width:1550px){.topnav{gap:11px}.topnav a{font-size:9px;letter-spacing:0}.brand{min-width:245px}.brand-copy strong{font-size:12px}}
@media(max-width:1350px){.atlas-layout,.constellation-layout{grid-template-columns:minmax(0,1fr) 215px}.atlas-detail{padding:16px}}
@media(max-width:1150px){.topnav{display:none}}
@media(max-width:980px){.atlas-layout,.constellation-layout{grid-template-columns:1fr}.atlas-detail{max-height:none}.atlas-surface,.constellation-stage{min-height:390px}.atlas-detail-links{display:flex}.journey-card{flex-wrap:wrap}.journey-card small{margin-left:0}}
@media(max-width:620px){.living-head{padding:28px 22px}.living-head h1{font-size:38px}.living-head:after{font-size:150px;top:-35px}.atlas-surface{min-height:300px;aspect-ratio:1.18}.atlas-surface:before{opacity:.14}.map-pin{max-width:75px}.pin-dot{width:26px;height:26px;font-size:15px}.pin-name{font-size:9px;line-height:1.05;max-width:75px}.living-tools{align-items:stretch}.living-tools>.btn:first-of-type{margin-left:0}.map-compass{width:35px;height:35px;font-size:16px;top:12px;right:14px}.map-compass:after{font-size:10px;top:14px}.session-grid,.quest-grid,.living-feature-grid{grid-template-columns:1fr}.session-card{min-height:0}.constellation-stage{min-height:260px}.constellation-note{font-size:9px}.living-feature strong{font-size:16px}.living-tabs{gap:4px}.living-tab{padding:8px 10px;font-size:10px}.journey-card small{flex-basis:100%}.gallery-manager{padding:10px}}
@media(prefers-reduced-motion:reduce){.journey-line,.constellation-link,.pin-dot,.constellation-stage::before,.living-head::after,.map-symbol{animation:none!important}}
/* Expanded reading surface for immersive maps and constellations. */
body:has(.atlas-layout) .site-grid,body:has(.constellation-layout) .site-grid{grid-template-columns:235px minmax(0,1fr);max-width:1740px;gap:24px}
body:has(.atlas-layout) .rightbar,body:has(.constellation-layout) .rightbar{display:none}
.atlas-surface{width:100%;min-width:0;min-height:0;max-height:none;aspect-ratio:1000/650}
.constellation-stage svg{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto}
.star-label{font-size:23px}.star-node.central .star-label{font-size:31px}.star-glyph{font-size:32px}.star-node.central .star-glyph{font-size:50px}
@media(max-width:980px){body:has(.atlas-layout) .site-grid,body:has(.constellation-layout) .site-grid{grid-template-columns:minmax(0,1fr)}.atlas-surface{min-height:320px}}
@media(max-width:620px){.atlas-surface{min-height:275px;aspect-ratio:1.18}.constellation-stage{min-height:390px}}
@media(max-width:620px){
 .map-pin .pin-name{display:none}
 .map-pin.selected .pin-name{display:block;background:#101925e8;border:1px solid #bd9c65;border-radius:3px;padding:3px 5px;max-width:106px}
 .atlas-detail{padding:20px;min-height:0}
 .map-symbol{font-size:70px;line-height:1.1;margin:8px 0}
 .map-explainer{margin-top:12px!important}
}
