/* Locked direction: autonomous Crimson, Golden Sun and Void Trees. */
:root{--realm-ink:#eadbc6;--realm-gold:#cead76;--realm-bg:#091018;--realm-font:'Cormorant Garamond',Georgia,serif}
body{background:#090f16;color:#e8e4de}
.layout{display:block;min-height:100vh}
body.nav-open{overflow:hidden}
.main-wrap{width:100%;min-width:0}
.sidebar{position:fixed;inset:0 auto 0 0;width:min(340px,88vw);height:100dvh;z-index:70;transform:translateX(-102%);visibility:hidden;transition:transform .3s ease,visibility .3s;background:linear-gradient(150deg,#161b23,#0b1119 70%);box-shadow:20px 0 60px #0006;border-right:1px solid #6d604949}
.menu-open .sidebar{transform:translateX(0);visibility:visible}
.mobile-scrim{position:fixed;inset:0;z-index:60;background:#02050bab;border:0;border-radius:0;backdrop-filter:blur(3px)}
.menu-open .mobile-scrim{display:block}
.sidebar-close{position:absolute;right:10px;top:9px;border:0;background:transparent;color:#cbbcaa;width:40px;height:40px}
.sidebar .brand{padding-top:45px}.sidebar .brand-title{font-weight:500}.sidebar .nav-item{min-height:44px}
.drawer-reading-mode{display:flex;align-items:center;gap:10px;min-height:44px;width:100%;margin-top:16px;padding:8px 10px;color:#dbceb9;font-size:14px;background:#20232b;border-color:#74644d66}
.topbar.realm-topbar{height:80px;position:sticky;top:0;z-index:40;display:flex;gap:28px;padding:12px clamp(22px,4vw,72px);background:#0c131bec;border:0;border-bottom:1px solid #c6b48d20;backdrop-filter:blur(18px);box-shadow:0 7px 30px #0002}
.realm-wordmark{display:flex;align-items:center;gap:12px;font:500 32px/1 var(--realm-font);color:#eee0c9;white-space:nowrap}
.realm-wordmark svg{width:24px;height:29px;color:#caad78;stroke-width:1}
.realm-header-search{display:flex;align-items:center;gap:11px;width:clamp(240px,32vw,470px);margin:0 0 0 auto;height:44px;padding:0 14px;border:1px solid #b0ad9c60;border-radius:7px;background:#19212b72;color:#d6d1c8;min-width:0}
.realm-header-search>svg{width:18px;height:18px}
.realm-header-search input{border:0;outline:none;background:transparent;width:100%;min-width:0;font:500 18px var(--realm-font);color:#f0e3ce;padding:0;height:100%}
.realm-header-search input::placeholder{color:#c3beb7}
.realm-header-search:focus-within{border-color:#d7be90;box-shadow:0 0 0 2px #d7be9020}
.realm-header-search button{display:none}
.realm-topbar .reading-control{flex-shrink:0;margin:0;height:44px;border:1px solid #b0ad9c60;border-radius:7px;background:#19212b72;padding:0 10px}
.realm-topbar .reading-control select{font:500 17px var(--realm-font);min-height:42px;max-width:168px;color:#eee1cc;padding-right:2px}
.realm-topbar .reading-control option{background:#111923;color:#eee1cc}
.realm-topbar .reading-control>svg{display:none}
.realm-topbar .menu-button{display:flex;order:4;border:0;color:#eee1cc;margin:0;background:transparent}
.realm-theme{border:0;color:#ddd0be}
.realm-topbar .realm-theme{order:3}
/* Connected Realm: navigation and painting share an immutable scene geometry. */
body.realm-home{background:#091018;color:#eee3d1;color-scheme:dark}
body.realm-home main{padding:0;max-width:none;background:transparent;border:0;box-shadow:none;margin:0}
.ancestral-realm{isolation:isolate;background:#091018;overflow:hidden}
.hero-scene,.branch-scene{position:relative;isolation:isolate;overflow:hidden}
.hero-scene{aspect-ratio:12/7;width:100%}
.hero-composition{position:absolute;width:100%;aspect-ratio:3/2;top:0;left:0;transform:translateY(-9.375%)}
.hero-painting{position:absolute;inset:0;display:block}
.hero-painting img{display:block;width:100%;height:100%;object-fit:fill}
.hero-scene:after{content:'';position:absolute;inset:90% 0 0;background:linear-gradient(transparent,#091018);pointer-events:none;z-index:1}
.realm-title{position:absolute;top:5.5%;left:7.5%;width:40%;text-align:center;z-index:3;pointer-events:none}
.realm-kicker{display:flex;align-items:center;justify-content:center;gap:16px;font:500 .8rem var(--realm-font);letter-spacing:.36em;color:#d3bb95;margin:0 0 22px}
.realm-kicker:before,.realm-kicker:after{content:'';height:1px;width:44px;background:#b99e6a70}
.realm-title h1{font:500 clamp(3.5rem,4.8vw,6.2rem)/.94 var(--realm-font);letter-spacing:-.035em;color:#eadfce;text-shadow:0 2px 14px #03080bb3;margin:0}
.fruit-canopy{position:absolute;inset:0;z-index:2;pointer-events:none}
.aspect-fruit{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);min-width:44px;min-height:44px;translate:-50% -50%;display:flex;align-items:center;justify-content:center;pointer-events:auto;isolation:isolate;border:0;border-radius:42%;background:transparent;touch-action:manipulation;scroll-margin:150px 20px;color:var(--pigment,#e6d3b7);outline-offset:5px}
/* Live inscriptions: measured quiet surfaces, open small capitals, local ink.
   The shallow edge follows the skin's lighting; there is no surrounding glow. */
.aspect-fruit{--letter-x:50%;--letter-y:52%;--letter-width:92%;--ink-light:#ecd6b0;--pigment:#e4c69a;--ink-shade:#d7b582;--ink-edge:#29150eb3}
.fruit-lettering{position:absolute;left:var(--letter-x);top:var(--letter-y);translate:-50% -50%;width:var(--letter-width);display:flex;flex-direction:column;align-items:center;gap:.03em;text-align:center;font:500 clamp(1.1875rem,1.75vw,2.125rem)/1.1 var(--realm-font);font-variant-caps:small-caps;font-kerning:normal;letter-spacing:.04em;color:var(--pigment);text-shadow:0 .025em .018em var(--ink-edge);pointer-events:none;z-index:3}
.fruit-line{display:block;max-width:100%;white-space:nowrap}
@supports (background-clip:text){.fruit-line{background:linear-gradient(175deg,var(--ink-light),var(--pigment) 52%,var(--ink-shade));background-clip:text;-webkit-background-clip:text;color:transparent}}
[data-tree="crimson"]{--ink-light:#efd0b1;--pigment:#e5bfa1;--ink-shade:#d9b18e;--ink-edge:#360c16cc}
[data-tree="void"]{--ink-light:#e5d3e6;--pigment:#d6c0db;--ink-shade:#c5adcb;--ink-edge:#140c22cc}
.fruit-pale{--ink-light:#5b391f;--pigment:#4b2c17;--ink-shade:#3c2719;--ink-edge:#ffebbc66}
[data-tree="void"].fruit-pale{--ink-light:#55354d;--pigment:#44283f;--ink-shade:#372035;--ink-edge:#f4dfea66}
.fruit-levi{--letter-y:51%;--letter-width:82%}
.fruit-levi .fruit-lettering{font-size:clamp(1.75rem,2.75vw,3.05rem);line-height:1.02;gap:.1em;letter-spacing:.055em}
.fruit-levi .fruit-line:first-child{font-size:1.12em}
.fruit-levi .fruit-line:last-child{font-size:.84em;letter-spacing:.12em}
.fruit-characters{--letter-y:51%;--letter-width:98%}
.fruit-characters .fruit-lettering{letter-spacing:.012em}
.fruit-power{--letter-x:49%;--letter-y:51%;--letter-width:86%}
.fruit-power .fruit-line:last-child{font-size:.9em;letter-spacing:.075em}
.fruit-cosmology{--letter-x:50%;--letter-y:54%;--letter-width:94%}
.fruit-cosmology .fruit-lettering{font-size:clamp(1.1875rem,1.7vw,2rem);line-height:1.03;letter-spacing:.025em}
.fruit-cosmology .fruit-line:nth-child(2){font-size:.85em;letter-spacing:.075em}
.fruit-crs{--letter-x:51%;--letter-y:56%}
.fruit-crs .fruit-line:first-child{font-size:.83em;letter-spacing:.15em}
.fruit-ring{--letter-x:51%;--letter-y:62%;--letter-width:88%}
.fruit-locations{--letter-x:52%;--letter-y:53%;--letter-width:94%}
.fruit-races{--letter-x:50%;--letter-y:56%;--letter-width:92%}
.fruit-factions{--letter-x:50%;--letter-y:54%;--letter-width:94%}
.fruit-items{--letter-x:49%;--letter-y:57%;--letter-width:94%}
.fruit-creatures{--letter-x:51%;--letter-y:52%;--letter-width:98%}
.fruit-creatures .fruit-lettering{font-size:clamp(1.125rem,1.7vw,2rem);letter-spacing:.01em}
.fruit-economy{--letter-x:50%;--letter-y:54%;--letter-width:94%}
.fruit-events{--letter-x:48%;--letter-y:53%;--letter-width:94%}
.fruit-mysteries{--letter-x:49%;--letter-y:50%;--letter-width:94%}
.fruit-veil{position:absolute;width:var(--leaf-size);aspect-ratio:1;left:var(--leaf-x);top:var(--leaf-y);translate:-13.5% -9.5%;transform-origin:13.5% 9.5%;transform:rotate(34deg);pointer-events:none;z-index:2;transition:transform .58s cubic-bezier(.25,.8,.25,1),opacity .5s;opacity:.95}
.fruit-veil img{display:block;width:100%;height:auto}
[data-tree="void"] .fruit-veil{rotate:-8deg}
.aspect-fruit:focus-visible{outline:2px solid #d9c197;background:#d9c1970c}
.aspect-fruit:hover .fruit-veil,.aspect-fruit:focus-visible .fruit-veil{transform:rotate(43deg)}
.aspect-fruit.is-uncovering .fruit-veil,.aspect-fruit.is-uncovered .fruit-veil{transform:rotate(129deg) scale(.8);opacity:0}
.realm-depth{position:relative;display:grid;grid-template-columns:1fr 1fr;width:100%;margin-top:-5%;z-index:2}
.branch-scene{aspect-ratio:1/2;mask-image:linear-gradient(transparent,#000 4%,#000 96%,transparent)}
.scene-painting{position:absolute;top:0;left:0;display:block;width:200%;max-width:none;height:100%;object-fit:fill;pointer-events:none}
.scene-deep .scene-painting{left:-100%}
.realm-bottom-links{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:18px 40px;padding:48px 24px 58px;font:500 1.125rem var(--realm-font);color:#c5b496}
.realm-bottom-links a{padding:8px 0;border-bottom:1px solid #9a806345;min-height:44px;display:flex;align-items:center}
.realm-bottom-links a:hover{color:#f2dfbc;border-color:#c5a678}
.realm-home .page-footer{margin:0;padding:28px clamp(24px,5vw,72px);background:#091018;border-color:#c7a67d20;color:#ada99f;font-size:.8125rem}
body:not(.realm-home){background:linear-gradient(#091019ca,#091019ee),url('/art/realm-desktop.webp') center top/cover fixed}
body:not(.realm-home) main{max-width:1280px;min-height:calc(100vh - 80px);padding:40px 52px 48px;margin:0 auto;background:#0d141cf5;border-inline:1px solid #bfa47c1c;box-shadow:0 20px 90px #0003}
body:not(.realm-home) .article-header h1,body:not(.realm-home) .page-top h1{color:#ecdbc0}
.article-content{max-width:850px}.article-content section{scroll-margin-top:100px}.article-content .prose{font-size:1.0625rem;line-height:1.8}
.article-header,.fandom-panel,.portal-explainer,.infobox,.aside-box{border-color:#b6a17b38}.portal-explainer,.fandom-panel,.aside-box,.infobox{background:#111b24}
.catalog-entry{border-color:#a8906c38}.catalog-entry h3{font-family:var(--realm-font);font-size:26px;line-height:1.12;color:#ecdbc0}
.article-tabs a.active{color:#e2c48e;border-color:#c09f67}.article-lead{color:#c4c0bb}.prose a{color:#d7ba83}
.light:not(.realm-home){background:#ddd8ce;color:#302c2b}.light:not(.realm-home) main{background:#f5f0e6;color:#302c2b}
.light:not(.realm-home) .article-header h1,.light:not(.realm-home) .page-top h1,.light:not(.realm-home) .catalog-entry h3{color:#483727}
.light:not(.realm-home) .portal-explainer,.light:not(.realm-home) .fandom-panel,.light:not(.realm-home) .aside-box,.light:not(.realm-home) .infobox{background:#eee6d9}
.light:not(.realm-home) .article-lead{color:#605750}.light:not(.realm-home) .prose a{color:#765324}

/* Fixed artwork coordinates preserve every stem at intermediate widths too. */
@media(min-width:701px) and (max-width:1100px){
 .realm-topbar.topbar{gap:16px;padding-inline:24px}.realm-wordmark{font-size:28px}.realm-header-search{width:35vw}.realm-theme{display:none}
 .realm-title h1{font-size:clamp(2.5rem,5.5vw,4.1rem)}.realm-title{left:4%;width:44%;top:8%}.realm-kicker{margin-bottom:14px}
 .fruit-lettering{font-size:1.25rem}.fruit-levi .fruit-lettering{font-size:1.65rem}
}
@media(max-width:700px){
 html{scrollbar-width:none}html::-webkit-scrollbar{display:none}
 .realm-topbar.topbar{height:auto;min-height:116px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:8px 10px;padding:10px 16px 12px;background:#0b131bf5}
 .realm-wordmark{font-size:1.8rem;grid-column:1;grid-row:1;gap:9px}.realm-wordmark svg{width:22px;height:25px}
 .realm-topbar .menu-button{grid-column:2;grid-row:1;justify-self:end;min-width:44px;min-height:40px}
 .realm-header-search{grid-column:1;grid-row:2;width:100%;margin:0;padding:0 10px;gap:8px;min-width:0;height:44px}
 .realm-header-search input{font-size:1.0625rem}.realm-header-search>svg{width:17px;height:17px}
 .realm-topbar .reading-control{grid-column:2;grid-row:2;padding:0 7px;max-width:9rem}
 .realm-topbar .reading-control select{max-width:8rem;font-size:1rem}.realm-topbar .realm-theme{display:none}
 .hero-scene{aspect-ratio:4/7}
 .hero-composition{aspect-ratio:4/7;transform:none}
 .realm-title{top:8%;left:9%;width:82%}
 .realm-title h1{font-size:clamp(2.7rem,11.4vw,4.8rem);line-height:.94}
 .realm-kicker{font-size:.75rem;gap:13px;margin-bottom:16px}
 .realm-kicker:before,.realm-kicker:after{width:34px}
 .aspect-fruit{left:var(--mobile-x);top:var(--mobile-y);width:var(--mobile-w);height:var(--mobile-h)}
 .fruit-veil{left:var(--mobile-leaf-x);top:var(--mobile-leaf-y);width:var(--mobile-leaf-size)}
 .fruit-lettering{font-size:clamp(1.125rem,4.9vw,1.375rem)}
 .primary-canopy .fruit-lettering{font-size:clamp(1.25rem,5.15vw,1.4rem)}
 .primary-canopy .fruit-levi .fruit-lettering{font-size:clamp(1.625rem,6.7vw,1.85rem)}
 .primary-canopy .fruit-characters .fruit-lettering{font-size:clamp(1.125rem,4.62vw,1.25rem);letter-spacing:0}
 .fruit-cosmology .fruit-lettering{font-size:clamp(1.125rem,4.9vw,1.375rem)}
 .fruit-creatures .fruit-lettering{font-size:clamp(1rem,4.8vw,1.35rem)}
 .realm-depth{display:block;margin-top:-14%}
 .branch-scene{width:100%;aspect-ratio:1/2}
 .scene-deep{margin-top:-10%}
 .realm-bottom-links{gap:4px 28px;padding:20px 22px 36px;font-size:1.0625rem}
 .realm-home .page-footer{padding:22px 22px 30px;display:flex;gap:12px;font-size:.8125rem}.realm-home .page-footer>span{display:block;width:100%}
 body:not(.realm-home) main{padding:26px 20px 35px;min-height:calc(100vh - 116px);border:0}
 .article-content .prose{font-size:1.0625rem;line-height:1.75}.article-content section{scroll-margin-top:140px}.article-header h1{font-size:2.5rem}
 .reader-strip{font-size:.875rem;gap:12px}.reader-strip button{font-size:.875rem;padding:8px;min-height:44px;white-space:normal}
 .article-layout{display:block}.aside-sticky{position:static}.catalog-entry h3{font-size:1.625rem}.page-footer{font-size:.8125rem}
 .sidebar{z-index:70}.layout.menu-open .mobile-scrim{z-index:60}.sidebar .nav-item{font-size:.875rem}
}
@media(max-width:370px){.realm-topbar.topbar{padding-inline:12px}.realm-topbar .reading-control{max-width:8rem}.realm-topbar .reading-control select{max-width:7rem}.fruit-lettering{font-size:1.0625rem}.primary-canopy .fruit-characters .fruit-lettering{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.aspect-fruit *,.sidebar{animation:none!important;transition:none!important}.aspect-fruit:hover .fruit-veil{transform:rotate(34deg)}.aspect-fruit.is-uncovered .fruit-veil{opacity:0}}
html[data-motion="reduce"]{scroll-behavior:auto}html[data-motion="reduce"] .aspect-fruit *{animation:none!important;transition:none!important}
@media print{.realm-topbar,.sidebar,.hero-painting,.scene-painting,.fruit-veil{display:none!important}.hero-scene,.branch-scene{aspect-ratio:auto;overflow:visible}.realm-title{position:static;width:auto}.fruit-canopy{position:static;display:grid;grid-template-columns:repeat(2,1fr)}.aspect-fruit{position:static;translate:none;width:auto;height:auto;padding:10px}.fruit-lettering{color:#111!important;text-shadow:none}.realm-depth{display:block;margin:0}.realm-title h1{color:#111;text-shadow:none}body:not(.realm-home) main{background:white;box-shadow:none}}

/* Text enlargement keeps readable surfaces and intact supporting branches. */
.type-gauge{position:absolute;width:1rem;height:1rem;visibility:hidden;pointer-events:none}
.fruit-detail{display:none}
.enlarged-type .realm-topbar.topbar{height:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;padding:12px 16px;gap:10px}
.enlarged-type .realm-wordmark{grid-column:1;grid-row:1}
.enlarged-type .realm-topbar .menu-button{grid-column:2;grid-row:1}
.enlarged-type .realm-header-search{grid-column:1/-1;grid-row:2;width:100%;height:1.9rem;margin:0}
.enlarged-type .realm-topbar .reading-control{grid-column:1/-1;grid-row:3;width:100%;max-width:none;height:1.9rem}
.enlarged-type .realm-topbar .reading-control select{max-width:none;width:100%;height:100%}
.enlarged-type .realm-theme{display:none}
.enlarged-type .hero-scene{aspect-ratio:auto;padding-top:9rem}
.enlarged-type .hero-composition{position:static;aspect-ratio:auto;transform:none}
.enlarged-type .hero-painting{height:14rem;overflow:hidden}
.enlarged-type .hero-painting img{object-fit:cover;object-position:center top}
.enlarged-type .realm-title{top:1rem;left:5%;width:90%}
.enlarged-type .realm-title h1{font-size:1.85rem}
.enlarged-type .realm-kicker{margin-bottom:.65rem}
.enlarged-type .fruit-canopy{position:relative;display:flex;flex-direction:column}
.enlarged-type .aspect-fruit{position:relative;left:0;top:0;translate:none;width:100%;height:var(--detail-height,14rem);border-radius:0;overflow:hidden;isolation:isolate}
.enlarged-type .fruit-lettering{position:absolute;left:50%;top:59%;translate:-50% -50%;width:68%;font-size:1.125rem;line-height:1.06}
.enlarged-type .fruit-levi .fruit-lettering{font-size:1.5rem}
.enlarged-type .primary-canopy .fruit-characters .fruit-lettering{font-size:1.125rem}
.enlarged-type .fruit-lettering{transform:none}
.enlarged-type .fruit-detail{display:block;position:absolute;inset:0;background-image:var(--detail-art);background-size:var(--detail-size);background-position:var(--detail-position);background-repeat:no-repeat;mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent)}
.enlarged-type .fruit-veil{left:var(--detail-leaf-x);top:var(--detail-leaf-y);width:var(--detail-leaf-size)}
.enlarged-type .realm-depth{display:block;margin:0}
.enlarged-type .branch-scene{aspect-ratio:auto;mask-image:none}
.enlarged-type .scene-deep{margin-top:0}
.enlarged-type .scene-painting{display:none}
.enlarged-type .realm-depth:before,.enlarged-type .realm-depth:after,.enlarged-type .branch-scene:before,.enlarged-type .branch-scene:after,.enlarged-type .hero-scene:after{display:none}
.enlarged-type .realm-topbar{position:relative}
.enlarged-type .article-meta,.enlarged-type .toolbar{flex-wrap:wrap}
.enlarged-type .toolbar>*{max-width:100%}
.enlarged-type .realm-bottom-links{padding-block:1rem}

/* Reader text follows the browser's preferred text size as well as the fruits. */
body{font-size:1rem}
.article-lead{font-size:1.0625rem}
.page-top p,.portal-explainer>p,.catalog-entry p{font-size:1rem}
.article-tabs a,.inline-toc,.inline-toc a,.toc a,.infobox-row,.infobox-section,.toolbar label,.toolbar input,.toolbar select,.toolbar button,.crumbs{font-size:.875rem}
.article-content h2{font-size:1.875rem}.article-content h3{font-size:1.625rem}
.enlarged-type .article-content{padding:1rem .65rem}
.enlarged-type .article-layout,.enlarged-type .entries-grid{display:block}
.enlarged-type .catalog-entry{margin-bottom:1rem}
.enlarged-type .article-header h1{font-size:1.85rem}
.enlarged-type .article-tabs a{padding:.35rem}
.enlarged-type .infobox-row{grid-template-columns:1fr;gap:.2rem}
.enlarged-type .inline-toc ol{columns:1;padding-left:1rem}
.enlarged-type .dialog{max-width:calc(100vw - 24px);padding:1rem}
.enlarged-type .dialog h2{font-size:1.3rem}
.enlarged-type .dialog p{font-size:.875rem}
.enlarged-type .dialog .button-row{flex-direction:column}
@media print{.hero-composition{position:static;aspect-ratio:auto;transform:none}}
@media(forced-colors:active){.fruit-line{background:none;color:LinkText;text-shadow:none}.fruit-lettering{forced-color-adjust:auto}}
@media print{.fruit-line{background:none;color:#111;text-shadow:none}}
