/* WORLD ZERO / Reading rooms beyond the archipelago.
   Final, scoped skin for both existing inner-page shells. */
body:not([data-page="home"]) {
  --w-night:#071212; --w-deep:#102725; --w-mint:#a2ffe0; --w-copper:#ff7047;
  --w-paper:#f2efe5; --w-tint:#e6e9df; --w-text:#17332d; --w-secondary:#51635b;
  --w-accent:#276c58; --w-rule:#b9c9bd;
  --s-accent:var(--w-accent); --s-paper:var(--w-paper); --s-butter:var(--w-tint);
  --s-coral:var(--w-copper); --s-ink:var(--w-text);
  --bg-0:var(--w-paper); --bg-1:var(--w-tint); --bg-2:#dce4d9; --bg-3:#cbd8cc;
  --ink:var(--w-text); --text:var(--w-text); --muted:var(--w-secondary); --dim:#5c6b62;
  --text-dim:var(--w-secondary); --panel:var(--w-paper); --panel-2:var(--w-tint);
  --line:var(--w-rule); --line-2:#819d8c; --border:var(--w-rule); --accent:var(--w-accent);
  --accent-2:var(--w-accent); --accent-d:var(--w-accent); --orange:var(--w-accent);
  --orange-2:var(--w-accent); --orange-d:var(--w-accent); --blue:var(--w-accent);
  --violet:var(--w-copper); --radius:3px; --radius-lg:3px; --menu-hover:#18332c;
  color:var(--w-text); background:var(--w-paper)!important;
}
html[data-theme="emberforge"] body:not([data-page="home"]) { --w-accent:#9b4527; --w-mint:#ffbd93; --w-copper:#ff8466; }
html[data-theme="prismarine"] body:not([data-page="home"]) { --w-accent:#176a71; --w-mint:#9ce7fa; --w-copper:#d0f091; }
html[data-theme="amethyst"] body:not([data-page="home"]) { --w-accent:#705094; --w-mint:#d5bbff; --w-copper:#ffa5bf; }
body:not([data-page="home"]) ::selection { color:var(--w-night); background:var(--w-mint); }
body:not([data-page="home"]) :focus-visible { outline-color:var(--w-accent); outline-offset:5px; }
body:not([data-page="home"]) :is(h1,h2,h3) { letter-spacing:-.05em; }
body:not([data-page="home"]) h2 { font-weight:500; }
body:not([data-page="home"]) :is(.eyebrow,.pill,.tag,.chip,.cs-tag,.field label,.fact .k,.kv dt) { font-family:var(--f-mono,'JetBrains Mono',monospace); font-size:10px; letter-spacing:.1em; }
body:not([data-page="home"]) .eyebrow::before { width:5px; height:5px; border-radius:50%; }
body:not([data-page="home"]) .lead { line-height:1.8; }

/* A dark, quiet navigation deck above the illuminated reading surface. */
body:not([data-page="home"]) :is(.top,.site-header) { background:var(--w-night)!important; color:var(--w-paper); border-bottom:1px solid #a2ffe02b!important; }
body:not([data-page="home"]) .top-in { height:80px; }
body:not([data-page="home"]) .site-header .wrap.nav { min-height:80px; }
body:not([data-page="home"]) :is(.top,.site-header) :is(.brand,.atelier-brand,.brand b) { color:var(--w-paper)!important; }
body:not([data-page="home"]) :is(.top,.site-header) .atelier-brand svg path[stroke] { stroke:var(--w-night); }
body:not([data-page="home"]) :is(.top,.site-header) .brand-logo { filter:brightness(0) invert(1)!important; }
body:not([data-page="home"]) :is(.top-nav>a,.top-nav .nav-group>a,.site-header .nav-link) { color:#d1e0d7!important; font-size:11px; letter-spacing:.035em; }
body:not([data-page="home"]) :is(.top-nav a,.site-header .nav-link):hover { background:#163028; box-shadow:inset 0 -1px 0 var(--w-mint); }
body:not([data-page="home"]) :is(.top-nav .nav-menu,.site-header .nav-menu,.theme-menu) { background:var(--w-deep)!important; border:1px solid #a2ffe042; border-radius:3px; box-shadow:0 20px 55px #0005; }
body:not([data-page="home"]) :is(.nav-menu a,.site-header .nav-menu a,.theme-choice) { color:var(--w-paper)!important; }
body:not([data-page="home"]) .nav-menu a:hover { color:var(--w-mint)!important; background:#244239; }
body:not([data-page="home"]) :is(.nav-toggle,.theme-trigger) { color:var(--w-paper); border-color:#a2ffe057; border-radius:3px; }
body:not([data-page="home"]) .nav-toggle span { background:var(--w-mint); }
body:not([data-page="home"]) .theme-trigger::after { color:var(--w-paper); }
body:not([data-page="home"]) .theme-orbit { background:conic-gradient(var(--w-mint) 0 50%,var(--w-copper) 50% 75%,var(--w-deep) 75%); }
body:not([data-page="home"]) :is(.theme-choice:hover,.theme-choice.is-active) { background:#244239; box-shadow:inset 2px 0 0 var(--w-mint); }
body:not([data-page="home"]) .theme-swatch { border-radius:50%; border-color:#a2ffe066; }
body:not([data-page="home"]) .theme-swatch--voxelbox { background:#a2ffe0; }
body:not([data-page="home"]) .theme-swatch--emberforge { background:#ffbd93; }
body:not([data-page="home"]) .theme-swatch--prismarine { background:#9ce7fa; }
body:not([data-page="home"]) .theme-swatch--amethyst { background:#d5bbff; }
body:not([data-page="home"]) :is(.top,.site-header) :focus-visible { outline-color:var(--w-mint); }
body:not([data-page="home"]) .btn { border-radius:3px!important; font-weight:500; letter-spacing:.005em; }
body:not([data-page="home"]) :is(.btn--primary,.site-header .nav-cta) { background:var(--w-accent)!important; border-color:var(--w-accent)!important; color:var(--w-paper)!important; }
body:not([data-page="home"]) :is(.top .btn--primary,.site-header .nav-cta) { color:var(--w-night)!important; background:var(--w-mint)!important; border-color:var(--w-mint)!important; }
body:not([data-page="home"]) :is(.top .btn--primary,.site-header .nav-cta):hover { background:var(--w-paper)!important; border-color:var(--w-paper)!important; }
body:not([data-page="home"]) .btn--ghost { border-color:#829d8b; }

/* Each chapter opens onto the same strange horizon as the homepage. */
body:not([data-page="home"]) :is(.page-hero,.banner) {
  --ink:var(--w-paper); --muted:#b9cdc1; --line:#a2ffe038; --line-2:#a2ffe061;
  background:radial-gradient(ellipse at 95% 95%,#19453e 0%,transparent 52%),var(--w-night)!important;
  color:var(--w-paper); border-bottom:1px solid var(--w-night);
}
body:not([data-page="home"]) .page-hero { padding-top:clamp(135px,12vw,178px); padding-bottom:clamp(58px,6.5vw,96px); }
body:not([data-page="home"]) .banner { padding-block:clamp(56px,6.5vw,96px); }
body:not([data-page="home"]) :is(.page-hero,.banner)::before {
  content:''; display:block; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:linear-gradient(90deg,transparent calc(100% - 1px),#a2ffe00a 1px),linear-gradient(transparent calc(100% - 1px),#a2ffe00a 1px);
  background-size:88px 88px; opacity:.7;
}
body:not([data-page="home"]) .page-hero::after {
  content:''; position:absolute; width:clamp(370px,45vw,680px); aspect-ratio:1; right:-9%; bottom:-73%;
  border:1px solid #a2ffe053; border-radius:50%; opacity:.5; z-index:0; pointer-events:none;
  background:repeating-radial-gradient(ellipse at center,transparent 0 35px,#a2ffe02d 36px,transparent 37px 57px);
  box-shadow:0 0 0 35px #a2ffe008,0 0 0 70px #a2ffe006; transform:rotate(-24deg) scaleX(1.45);
}
body:not([data-page="home"]) :is(.page-hero,.banner) h1 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(54px,7.2vw,106px); font-weight:400; letter-spacing:-.065em; line-height:1.01; color:var(--w-paper); max-width:19ch; }
body:not([data-page="home"]) .banner h1 { font-size:clamp(50px,6.1vw,89px); }
body:not([data-page="home"]) :is(.page-hero,.banner) :is(.eyebrow,.g,.kv dt) { color:var(--w-mint)!important; }
body:not([data-page="home"]) :is(.page-hero,.banner) .g { font-family:inherit; font-weight:400; font-style:italic; letter-spacing:inherit; }
body:not([data-page="home"]) :is(.page-hero,.banner) :is(.lead,.kv dd) { color:#b9cdc1; }
body:not([data-page="home"]) :is(.page-hero,.banner) .btn--primary { color:var(--w-night)!important; background:var(--w-mint)!important; border-color:var(--w-mint)!important; }
body:not([data-page="home"]) :is(.page-hero,.banner) .btn--primary:hover { color:var(--w-night)!important; background:var(--w-paper)!important; border-color:var(--w-paper)!important; }
body:not([data-page="home"]) :is(.page-hero,.banner) .btn--ghost { color:var(--w-paper); border-color:#a2ffe073; }
body:not([data-page="home"]) :is(.page-hero,.banner) :focus-visible { outline-color:var(--w-mint); }
body:not([data-page="home"]) .banner-side { border-color:#a2ffe038; }
body:not([data-page="home"]) .banner :is(.panel,.scene-stage) { --ink:var(--w-text); --muted:var(--w-secondary); --line:var(--w-rule); --line-2:#819d8c; }
body:not([data-page="home"]) .scene-stage { background:#e5ece0!important; border:1px solid #9ec8b55e; border-radius:4px; box-shadow:0 24px 90px #0004; }
body:not([data-page="home"]) .scene-stage .scene-caption { background:var(--w-night); color:#c4d8cc; border-color:#a2ffe038; }
body:not([data-page="home"]) .sc-chip { border-color:#a2ffe04d; border-radius:3px; background:var(--w-deep); color:var(--w-paper); }
body:not([data-page="home"]) .sc-chip i { color:var(--w-mint); }

/* Paper, fine rules and restrained colour keep long pages easy to use. */
body:not([data-page="home"]) .sec-head h2 { font-weight:500; letter-spacing:-.055em; }
body:not([data-page="home"]) .sec-head h2 em { color:var(--w-accent); }
body:not([data-page="home"]) :is(.card,.panel,.form-card,.contact-form,.world,.stat-card,.support-card,.stackcard,.bot,.cs,.idcard,.game,.holo) { border-color:var(--w-rule); border-radius:3px; }
body:not([data-page="home"]) :is(.card,.cs,.holo,.game):hover { border-color:var(--w-accent); transform:translateY(-3px); box-shadow:0 15px 34px #17332d10!important; }
body:not([data-page="home"]) :is(.card,.panel,.cs,.idcard,.stackcard) { border-color:var(--w-rule); }
body:not([data-page="home"]) .mods { border-color:var(--w-rule); }
body:not([data-page="home"]) .mod { border-color:var(--w-rule); }
body:not([data-page="home"]) .mod:hover { background:#e7ecdf!important; }
body:not([data-page="home"]) .mod h3 { font-weight:500; letter-spacing:-.045em; }
body:not([data-page="home"]) :is(.pill,.tag,.chip,.cs-tag,.idcard-feats span,.holo-tags i) { color:var(--w-secondary); border-color:#a4b7a8; border-radius:2px; }
body:not([data-page="home"]) :is(.cs-tag--live,.badge) { color:var(--w-accent); border-color:#aac6b7; background:#e3ecdd; border-radius:2px; }
body:not([data-page="home"]) :is(.notice,.cs-pn a) { border-color:var(--w-rule); border-radius:3px; }
body:not([data-page="home"]) .notice .ic { color:var(--w-night); background:var(--w-mint); border-radius:50%; }
body:not([data-page="home"]) :is(.game-body h3,.holo-cap h3) { font-weight:500; }
body:not([data-page="home"]) .arcade { --muted:var(--w-secondary); --line:var(--w-rule); --line-2:#819d8c; }
body:not([data-page="home"]) .arcade :is(.game,.idcard) { border-color:var(--w-rule); }
body:not([data-page="home"]) .holo-open { color:var(--w-paper); background:var(--w-accent); }
body:not([data-page="home"]) .faq-q { font-weight:500; letter-spacing:-.025em; }
body:not([data-page="home"]) :is(input,textarea,select) { background:#faf9f3!important; border-color:#8a9f91!important; border-radius:3px!important; color:var(--w-text)!important; }
body:not([data-page="home"]) :is(input,textarea)::placeholder { color:#617369; }
body:not([data-page="home"]) :is(input,textarea,select):focus { border-color:var(--w-accent)!important; box-shadow:0 0 0 2px var(--w-accent); }
body:not([data-page="home"]) tbody tr:nth-child(even) { background:#e8eadf; }
body:not([data-page="home"]) :is(code,pre) { background:#e0e7dc; color:var(--w-text); }

/* The last room returns to the dark landscape. */
body:not([data-page="home"]) :is(.final,.cta) {
  --ink:var(--w-paper); --muted:#b9cdc1;
  color:var(--w-paper); background:radial-gradient(ellipse at 85% 120%,#255946 0%,transparent 60%),var(--w-deep)!important;
  border-color:#a2ffe03d; border-radius:0;
}
body:not([data-page="home"]) .final-in h2 { color:var(--w-paper); font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.065em; }
body:not([data-page="home"]) .cta :is(h2,h3) { color:var(--w-paper); }
body:not([data-page="home"]) :is(.final,.cta) .eyebrow { color:var(--w-mint); }
body:not([data-page="home"]) .final .lead { color:#b9cdc1; }
body:not([data-page="home"]) :is(.final,.cta) .btn--primary { color:var(--w-night)!important; background:var(--w-mint)!important; border-color:var(--w-mint)!important; }
body:not([data-page="home"]) :is(.final,.cta) .btn--primary:hover { background:var(--w-paper)!important; border-color:var(--w-paper)!important; }
body:not([data-page="home"]) :is(.final,.cta) .btn--ghost { color:var(--w-paper); border-color:#a2ffe073; }
body:not([data-page="home"]) :is(.final,.cta) .btn--ghost:hover { color:var(--w-paper); background:#a2ffe018; }
body:not([data-page="home"]) :is(.final,.cta) :focus-visible { outline-color:var(--w-mint); }
body:not([data-page="home"]) .foot { --ink:var(--w-paper); --muted:#a0b8aa; --line:#2b493b; color:var(--w-paper); background:var(--w-night); border-color:#a2ffe02b; }
body:not([data-page="home"]) .foot :is(.atelier-brand,.brand,.brand b) { color:var(--w-paper)!important; }
body:not([data-page="home"]) .foot .atelier-brand svg path[stroke] { stroke:var(--w-night); }
body:not([data-page="home"]) .foot h4 { color:var(--w-mint); font:400 10px/1.6 var(--f-mono,'JetBrains Mono',monospace); letter-spacing:.14em; }
body:not([data-page="home"]) .foot :is(a,.foot-brand p) { color:#aec4b7; }
body:not([data-page="home"]) .foot a:hover { color:var(--w-mint); }
body:not([data-page="home"]) .foot-bottom { color:#90aa9b; border-color:#2b493b; }
body:not([data-page="home"]) .foot-social a { color:var(--w-paper); border-color:#496552; border-radius:50%; }
body:not([data-page="home"]) .foot-grants { background:#13291e; }
body:not([data-page="home"]) .foot a:focus-visible { outline-color:var(--w-mint); }
body:not([data-page="home"]) .cookie { border-color:var(--w-rule); background:var(--w-paper); }
body:not([data-page="home"]) .cookie p { color:var(--w-secondary); }

@media (max-width:900px) {
  body:not([data-page="home"]) .top-in { height:72px; }
  body:not([data-page="home"]) .site-header .wrap.nav { min-height:72px; }
  body:not([data-page="home"]) :is(.top-nav,.site-header .nav-links) { background:var(--w-night)!important; border-color:#a2ffe03d; }
  body:not([data-page="home"]) :is(.top-nav .nav-menu,.site-header .nav-menu) { background:var(--w-deep)!important; border-color:#a2ffe03d; box-shadow:none; }
  body:not([data-page="home"]) .page-hero { padding-top:124px; }
  body:not([data-page="home"]) .page-hero h1 { font-size:clamp(51px,9.5vw,85px); }
  body:not([data-page="home"]) .banner h1 { font-size:clamp(48px,8.8vw,75px); }
  body:not([data-page="home"]) .page-hero::after { bottom:-50%; right:-45%; }
}
@media (max-width:600px) {
  body:not([data-page="home"]) .page-hero { padding-top:116px; padding-bottom:55px; }
  body:not([data-page="home"]) :is(.page-hero,.banner) h1 { font-size:clamp(46px,12vw,68px); line-height:1.03; }
  body:not([data-page="home"]) .page-hero::after { right:-67%; bottom:-40%; width:370px; }
  body:not([data-page="home"]) .banner { padding-block:46px; }
  body:not([data-page="home"]) .scene-stage { box-shadow:0 16px 40px #0003; }
  body:not([data-page="home"]) .final-in h2 { font-size:clamp(45px,12vw,64px); }
}
