/* One document-length atmosphere. :root specificity intentionally exceeds
   legacy body.nw-organized !important backgrounds, even when loaded later.
   Artwork remains a single original image; wildlife is never filtered. */
html:root{--nw-edge:#070e1b;--nw-mid:#101f35;--nw-sea:#19364a;--nw-green:#204447;--nw-moon:rgba(97,123,140,.23);--nw-green-light:rgba(32,68,71,.65);--nw-sea-light:rgba(25,54,74,.8);--nw-edge-shade:rgba(7,14,27,.42);--nw-page-card:rgba(12,26,43,.58);--nw-page-elevated:rgba(17,36,52,.76);--nw-page-border:rgba(167,192,200,.19);background-color:var(--nw-edge);color-scheme:dark}
html[data-theme="dim"]{--nw-edge:#101923;--nw-mid:#1a2936;--nw-sea:#2a414d;--nw-green:#304b4d;--nw-moon:rgba(127,150,161,.17);--nw-green-light:rgba(65,93,94,.39);--nw-sea-light:rgba(54,80,94,.55);--nw-edge-shade:rgba(16,25,35,.3);--nw-page-card:rgba(28,44,54,.6);--nw-page-elevated:rgba(34,51,61,.78);--nw-page-border:rgba(169,192,197,.2)}
html[data-theme="dawn"]{--nw-edge:#e4eaf0;--nw-mid:#f2f3ef;--nw-sea:#d4e3e9;--nw-green:#d6e6df;--nw-moon:rgba(255,255,250,.72);--nw-green-light:rgba(177,205,197,.45);--nw-sea-light:rgba(176,203,219,.48);--nw-edge-shade:rgba(122,151,167,.1);--nw-page-card:rgba(248,250,247,.66);--nw-page-elevated:rgba(245,248,244,.84);--nw-page-border:rgba(54,82,94,.2);color-scheme:light}
html:root body[data-page]{--nw-light-x:76%;--nw-light-y:18%;--nw-light-w:75%;--nw-light-h:22%;--nw-tide-x:18%;--nw-tide-y:67%;--nw-tide-w:85%;--nw-tide-h:29%;--nw-sea-y:43%;--nw-light-color:var(--nw-moon);--nw-tide-color:var(--nw-green-light);--bg:var(--nw-edge)!important;--bg-elevated:var(--nw-page-elevated)!important;--surface:var(--nw-page-card)!important;--border:var(--nw-page-border)!important;--text:#ecebe5!important;--text-muted:#bbcbd0!important;--accent:#e9c77b!important;--accent-soft:#cad9d9!important;min-height:100vh;position:relative;isolation:isolate;background-color:var(--nw-edge)!important;background-image:linear-gradient(90deg,var(--nw-edge-shade),transparent 28%,transparent 74%,var(--nw-edge-shade)),radial-gradient(ellipse var(--nw-light-w) var(--nw-light-h) at var(--nw-light-x) var(--nw-light-y),var(--nw-light-color),transparent 76%),radial-gradient(ellipse var(--nw-tide-w) var(--nw-tide-h) at var(--nw-tide-x) var(--nw-tide-y),var(--nw-tide-color),transparent 82%),radial-gradient(ellipse 95% 30% at 65% var(--nw-sea-y),var(--nw-sea-light),transparent 84%),linear-gradient(180deg,var(--nw-edge),var(--nw-mid) 18%,var(--nw-sea) 43%,var(--nw-mid) 72%,var(--nw-edge))!important;background-size:100% 100%!important;background-repeat:no-repeat!important;background-position:0 0!important;background-attachment:scroll!important;color:var(--text)}
html:root[data-theme="dim"] body[data-page]{--text:#dce2df!important;--text-muted:#b5c5c9!important;--accent:#d2bf97!important;--accent-soft:#c0cfcd!important}
html:root[data-theme="dawn"] body[data-page]{--text:#263c47!important;--text-muted:#49616b!important;--accent:#765b2c!important;--accent-soft:#365e64!important}
/* Each page varies only the coordinates of the shared continuous paint. */
html:root body:is([data-page="home"],[data-page="welcome"]){--nw-light-x:77%;--nw-light-y:12%;--nw-light-w:86%;--nw-light-h:21%;--nw-tide-x:30%;--nw-tide-y:64%;--nw-tide-w:100%;--nw-tide-h:31%;--nw-sea-y:37%}
html:root body[data-page="how-it-works"]{--nw-light-x:53%;--nw-light-y:37%;--nw-light-w:105%;--nw-light-h:28%;--nw-tide-x:45%;--nw-tide-y:54%;--nw-tide-w:105%;--nw-tide-h:31%;--nw-sea-y:38%}
html:root body[data-page="start"]{--nw-light-x:82%;--nw-light-y:24%;--nw-light-w:67%;--nw-light-h:34%;--nw-tide-x:91%;--nw-tide-y:48%;--nw-tide-w:78%;--nw-tide-h:40%;--nw-sea-y:53%}
html:root body:is([data-page="stories"],[data-page="story"],[data-page="bedtime-stories"]){--nw-light-x:69%;--nw-light-y:42%;--nw-light-w:87%;--nw-light-h:26%;--nw-tide-x:22%;--nw-tide-y:57%;--nw-tide-w:93%;--nw-tide-h:29%;--nw-sea-y:45%}
html:root body[data-page="faq"]{--nw-light-x:99%;--nw-light-y:14%;--nw-light-w:78%;--nw-light-h:21%;--nw-tide-x:0%;--nw-tide-y:78%;--nw-tide-w:79%;--nw-tide-h:28%;--nw-sea-y:53%}
html:root body:is([data-page="privacy"],[data-page="support"],[data-page="terms"]){--nw-light-x:50%;--nw-light-y:41%;--nw-light-w:79%;--nw-light-h:30%;--nw-tide-x:65%;--nw-tide-y:70%;--nw-tide-w:80%;--nw-tide-h:24%;--nw-sea-y:48%;--nw-tide-color:var(--nw-moon)}
html:root body:is([data-page="about"],[data-page="contact"],[data-page="journal"]){--nw-light-x:82%;--nw-light-y:25%;--nw-light-w:88%;--nw-light-h:30%;--nw-tide-x:13%;--nw-tide-y:70%;--nw-tide-w:94%;--nw-tide-h:31%}
/* Retire old page scenery and section fills, not semantic content or controls. */
html:root body[data-page]::before,html:root body[data-page]::after{content:none!important;background:none!important}
html:root body[data-page] :is(main,.header,.footer,.home-opening,.en-opening,.cn-opening,.nw-home-hero,.how-opening,.how-chapter,.how-dialogue-chapter,.forest-host,.closing,.safety-inline){background:transparent!important;box-shadow:none!important}
html:root body[data-page] main>section{background:transparent!important}
html:root body[data-page] :is(.closing,.safety-inline,.footer,.footer-bottom){border-top:0!important;border-bottom:0!important}
html:root body[data-page] :is(.home-scene,.nw-hero-picture,.how-tree-scene,.en-scene,.cn-scene,.nw-start-scene,.start-forest-picture){background:none!important;border:0!important;box-shadow:none!important}
html:root body[data-page] :is(.story-panel,.how-chat-panel,.nw-dialogue,.nw-story-card,.nw-start-channel,.home-story-links a,.language-grid>a,.nw-channel-placeholder,.nw-clean-page .features>div,.how-background .steps>div,.nw-guide .steps>div){background:var(--nw-page-card)!important;border-color:var(--nw-page-border)!important}
html:root body[data-page] .story-panel .story-body{background:transparent!important}
/* Full-width scenes feather only the upper sky and bottom ground. */
html:root body[data-page] :is(.home-scene,.nw-hero-picture,.en-scene,.cn-scene){mask-image:none!important;-webkit-mask-image:none!important}
html:root body[data-page] :is(.home-scene img,.nw-hero-picture img,.en-scene img,.cn-scene img){mask-image:linear-gradient(180deg,transparent,rgba(0,0,0,.55) 3%,#000 9%,#000 96%,transparent)!important;-webkit-mask-image:linear-gradient(180deg,transparent,rgba(0,0,0,.55) 3%,#000 9%,#000 96%,transparent)!important}
/* Side scenes feather on the actual image, with no colored overlay. */
html:root body[data-page] :is(.how-tree-image,.nw-start-scene img){mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.65) 5%,#000 12%,#000 90%,rgba(0,0,0,.65) 96%,transparent),linear-gradient(180deg,transparent,rgba(0,0,0,.7) 4%,#000 10%,#000 93%,rgba(0,0,0,.65) 97%,transparent)!important;mask-composite:intersect!important;-webkit-mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.65) 5%,#000 12%,#000 90%,rgba(0,0,0,.65) 96%,transparent),linear-gradient(180deg,transparent,rgba(0,0,0,.7) 4%,#000 10%,#000 93%,rgba(0,0,0,.65) 97%,transparent)!important;-webkit-mask-composite:source-in!important}
/* Preserve the requested enlargement; scale the layout, not a cropped bitmap. */
html:root body[data-locale="zh-tw"][data-page="start"] .nw-start-layout{overflow:visible;align-items:center;padding-top:32px;padding-bottom:20px}
html:root body[data-locale="zh-tw"][data-page="start"] .nw-start-scene{width:127%;max-width:none;justify-self:start;position:relative;margin-left:-7%;margin-top:-64px;margin-right:0;margin-bottom:0;overflow:visible}
html:root body[data-locale="zh-tw"][data-page="start"] .nw-start-scene img{height:auto;object-fit:contain;aspect-ratio:1}
@media(max-width:1100px) and (min-width:901px){html:root body[data-locale="zh-tw"][data-page="start"] .nw-start-scene{width:120%;margin-left:-5%;margin-top:-40px}}
@media(max-width:900px){
 html:root body[data-page]{--nw-light-x:64%;--nw-light-y:25%;--nw-light-w:120%;--nw-light-h:25%;--nw-tide-x:20%;--nw-tide-y:70%;--nw-tide-w:130%;--nw-tide-h:30%}
 html:root body:is([data-page="home"],[data-page="welcome"]){--nw-light-x:62%;--nw-light-y:19%;--nw-light-w:140%;--nw-light-h:23%;--nw-tide-x:25%;--nw-tide-y:63%;--nw-tide-w:140%;--nw-tide-h:31%}
 html:root body[data-page="how-it-works"]{--nw-light-x:48%;--nw-light-y:37%;--nw-light-w:145%;--nw-light-h:31%;--nw-tide-x:70%;--nw-tide-y:64%;--nw-tide-w:140%}
 html:root body[data-page="start"]{--nw-light-x:64%;--nw-light-y:38%;--nw-light-w:135%;--nw-light-h:32%;--nw-tide-x:20%;--nw-tide-y:73%;--nw-tide-w:145%;--nw-tide-h:28%}
 html:root body[data-page="faq"]{--nw-light-x:100%;--nw-light-y:12%;--nw-light-w:110%;--nw-light-h:20%;--nw-tide-x:0%;--nw-tide-y:82%;--nw-tide-w:115%}
 html:root body:is([data-page="privacy"],[data-page="support"],[data-page="terms"]){--nw-light-x:50%;--nw-light-y:39%;--nw-light-w:140%;--nw-tide-x:75%;--nw-tide-y:76%}
 html:root body[data-locale="zh-tw"][data-page="start"] .nw-start-layout{padding-top:0;padding-bottom:0;gap:24px}
 html:root body[data-locale="zh-tw"][data-page="start"] .nw-start-scene{width:100%;max-width:680px;justify-self:center;margin:0 auto;overflow:hidden}
}
@media(max-width:640px){
 html:root body[data-page]{--nw-light-w:150%;--nw-tide-w:160%}
 html:root body[data-locale="zh-tw"][data-page="start"] .nw-start-scene{width:calc(100% + 24px);max-width:none;margin-left:-12px;margin-right:-12px}
 html:root body[data-page] :is(.how-tree-image,.nw-start-scene img){mask-image:linear-gradient(90deg,transparent,#000 8%,#000 94%,transparent),linear-gradient(180deg,transparent,#000 8%,#000 95%,transparent)!important;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 94%,transparent),linear-gradient(180deg,transparent,#000 8%,#000 95%,transparent)!important}
}
