/* Inline illustrations only. The page owns the continuous background.
   Preserve the full-screen nightbook and all existing interaction layers. */
html:root body.nw-woven-scenes[data-locale="zh-tw"]{--nw-light-x:73%;--nw-light-y:12%;--nw-light-w:100%;--nw-light-h:24%;--nw-tide-x:26%;--nw-tide-y:80%;--nw-tide-w:110%;--nw-tide-h:30%;overflow-x:clip;min-height:100svh}
html:root body.nw-woven-scenes :is(main,.home-opening,.how-opening,.how-opening-grid,.closing,.how-safety){height:auto;min-height:0;aspect-ratio:auto;overflow:visible;background:transparent!important;box-shadow:none!important}
html:root body.nw-woven-scenes :is(.home-copy,.how-opening-copy,.woven-copy)::before,html:root body.nw-woven-scenes :is(.home-copy,.how-opening-copy,.woven-copy)::after{content:none!important}
html:root body.nw-woven-scenes .woven-row{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr)!important;align-items:center;gap:clamp(24px,4vw,64px)!important;max-width:1320px;width:100%;margin-inline:auto;text-align:left;box-sizing:border-box}
html:root body.nw-woven-scenes .home-opening{padding:40px 40px 36px;max-width:1320px}
html:root body.nw-woven-scenes .how-opening{max-width:1320px;padding:32px 40px 24px}
html:root body.nw-woven-scenes .woven-reverse{grid-template-columns:minmax(0,1.15fr) minmax(0,.9fr)!important;padding:64px 40px;max-width:1320px}
html:root body.nw-woven-scenes .woven-reverse>.woven-copy{grid-column:2;grid-row:1}
html:root body.nw-woven-scenes .woven-reverse>.woven-art{grid-column:1;grid-row:1}
html:root body.nw-woven-scenes :is(.home-copy,.how-opening-copy,.woven-copy){width:100%;max-width:560px;min-width:0;margin:0;padding:0;color:var(--text)!important;position:relative;z-index:1}
html:root body.nw-woven-scenes :is(.home-opening,.how-opening,.woven-reverse) :is(p,.definition,.tiny,.muted){color:var(--text-muted)!important}
html:root body.nw-woven-scenes :is(.home-opening,.how-opening,.woven-reverse) .eyebrow{color:var(--accent)!important}
html:root body.nw-woven-scenes :is(.home-opening,.how-opening,.woven-reverse) .text-link{color:var(--accent-soft)!important}
html:root body.nw-woven-scenes .home-copy .definition{margin-left:0}
html:root body.nw-woven-scenes .closing h2{margin:0 0 28px}
html:root body.nw-woven-scenes .home-start-note{margin:24px 0}
html:root body.nw-woven-scenes .woven-art{display:block;position:relative;inset:auto;align-self:center;margin:0;width:100%;max-width:none;min-width:0;height:auto;min-height:0;aspect-ratio:auto;padding:0;overflow:visible!important;pointer-events:none;background:transparent!important;background-image:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:0;filter:none!important;backdrop-filter:none!important;mask:none!important;-webkit-mask:none!important;clip-path:none!important;transform:none!important}
html:root body.nw-woven-scenes .woven-reverse .woven-art{width:100%;margin:0}
html:root body.nw-woven-scenes .woven-art::before,html:root body.nw-woven-scenes .woven-art::after{content:none!important;display:none!important;background:none!important;box-shadow:none!important;filter:none!important}
/* Separate grades preserve the cream fur and amber light. Contrast
   compression reduces highlight intensity without a blue or black overlay. */
html:root body.nw-woven-scenes .woven-storybook{--art-grade:saturate(.75) contrast(.93) brightness(.99);--fade-left:16%;--fade-right:16%;--fade-top:10%;--fade-bottom:17%}
html:root body.nw-woven-scenes .woven-lantern{--art-grade:saturate(.70) contrast(.90) brightness(.97);--fade-left:18%;--fade-right:15%;--fade-top:18%;--fade-bottom:15%}
/* Every ramp is calculated from its own edge width. Stops always remain
   monotonic when a theme or mobile rule changes that width. Intersecting
   horizontal and vertical alpha ramps dissolves corners without an oval.
   The original asset alpha remains intact; no color-key filter is applied. */
html:root body.nw-woven-scenes .woven-art img{display:block;position:static!important;inset:auto!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;margin:0!important;padding:0!important;object-fit:contain!important;object-position:center!important;opacity:1!important;background:transparent!important;background-image:none!important;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;filter:var(--art-grade,none)!important;backdrop-filter:none!important;mix-blend-mode:normal!important;transform:none!important;clip-path:none!important;
--art-alpha-x:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.10) calc(var(--fade-left)*.2),rgba(0,0,0,.36) calc(var(--fade-left)*.45),rgba(0,0,0,.72) calc(var(--fade-left)*.7),rgba(0,0,0,.94) calc(var(--fade-left)*.9),#000 var(--fade-left),#000 calc(100% - var(--fade-right)),rgba(0,0,0,.94) calc(100% - var(--fade-right)*.9),rgba(0,0,0,.72) calc(100% - var(--fade-right)*.7),rgba(0,0,0,.36) calc(100% - var(--fade-right)*.45),rgba(0,0,0,.10) calc(100% - var(--fade-right)*.2),transparent 100%);
--art-alpha-y:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.10) calc(var(--fade-top)*.2),rgba(0,0,0,.36) calc(var(--fade-top)*.45),rgba(0,0,0,.72) calc(var(--fade-top)*.7),rgba(0,0,0,.94) calc(var(--fade-top)*.9),#000 var(--fade-top),#000 calc(100% - var(--fade-bottom)),rgba(0,0,0,.94) calc(100% - var(--fade-bottom)*.9),rgba(0,0,0,.72) calc(100% - var(--fade-bottom)*.7),rgba(0,0,0,.36) calc(100% - var(--fade-bottom)*.45),rgba(0,0,0,.10) calc(100% - var(--fade-bottom)*.2),transparent 100%);
-webkit-mask-image:var(--art-alpha-x),var(--art-alpha-y)!important;mask-image:var(--art-alpha-x),var(--art-alpha-y)!important;-webkit-mask-size:100% 100%!important;mask-size:100% 100%!important;-webkit-mask-position:center!important;mask-position:center!important;-webkit-mask-repeat:no-repeat!important;mask-repeat:no-repeat!important;-webkit-mask-composite:source-in!important;mask-composite:intersect!important;mask-mode:alpha!important}
/* No local background plate: every translucent pixel exposes the document's
   actual night, dim or dawn gradient. */
html:root[data-theme="dim"] body.nw-woven-scenes .woven-storybook{--art-grade:saturate(.72) contrast(.91) brightness(.95)}
html:root[data-theme="dim"] body.nw-woven-scenes .woven-lantern{--art-grade:saturate(.68) contrast(.89) brightness(.93)}
html:root[data-theme="dawn"] body.nw-woven-scenes .woven-storybook{--art-grade:saturate(.78) contrast(.92) brightness(1.02);--fade-left:18%;--fade-right:18%;--fade-bottom:19%}
html:root[data-theme="dawn"] body.nw-woven-scenes .woven-lantern{--art-grade:saturate(.74) contrast(.89) brightness(1.00);--fade-left:20%;--fade-right:17%;--fade-top:20%;--fade-bottom:17%}
html:root body.nw-woven-scenes[data-page="home"]{--text:#e8e3d7!important;--text-muted:#b9c9cf!important;--accent:#cdbb94!important;--accent-soft:#c7d3d5!important}
html:root[data-theme="dim"] body.nw-woven-scenes[data-page="home"]{--text:#d1d0c8!important;--text-muted:#afbec5!important;--accent:#b9aa89!important;--accent-soft:#bcc9cb!important}
html:root[data-theme="dawn"] body.nw-woven-scenes[data-page="home"]{--text:#2b4048!important;--text-muted:#4a606a!important;--accent:#75613e!important;--accent-soft:#405f66!important}
html:root body.nw-woven-scenes[data-page="home"] .button.primary{background:var(--accent)!important;border-color:var(--accent)!important;color:#1b2d33!important;box-shadow:none!important;text-shadow:none!important}
html:root[data-theme="dawn"] body.nw-woven-scenes[data-page="home"] .button.primary{color:#eee8db!important}
html:root body.nw-woven-scenes[data-page="home"] :is(h1,h2,h3){color:var(--text)!important;text-shadow:none!important}
@media(max-width:1000px){html:root body.nw-woven-scenes .woven-row,html:root body.nw-woven-scenes .woven-reverse{grid-template-columns:1fr!important;gap:16px!important}html:root body.nw-woven-scenes .woven-reverse>.woven-copy,html:root body.nw-woven-scenes .woven-reverse>.woven-art{grid-column:auto;grid-row:auto}html:root body.nw-woven-scenes :is(.home-copy,.how-opening-copy,.woven-copy){max-width:700px;margin-inline:auto}html:root body.nw-woven-scenes .woven-art,html:root body.nw-woven-scenes .woven-reverse .woven-art{width:100%;max-width:700px;margin:0 auto}html:root body.nw-woven-scenes .home-opening{padding:32px 24px 20px}html:root body.nw-woven-scenes .how-opening{padding:28px 24px 20px}html:root body.nw-woven-scenes .woven-reverse{padding:44px 24px}}
@media(max-width:640px){html:root body.nw-woven-scenes .home-opening,html:root body.nw-woven-scenes .how-opening{padding:28px 16px 12px}html:root body.nw-woven-scenes .woven-reverse{padding:40px 16px 28px}html:root body.nw-woven-scenes .woven-row{gap:12px!important}html:root body.nw-woven-scenes .woven-art,html:root body.nw-woven-scenes .woven-reverse .woven-art{width:100%;margin:0}html:root body.nw-woven-scenes .home-opening .actions>.button,html:root body.nw-woven-scenes .woven-reverse .actions>.button{width:100%}
/* Narrower peripheral ramps protect ears, canopy and low foreground detail. */
html:root body.nw-woven-scenes .woven-storybook{--fade-left:10%;--fade-right:10%;--fade-top:6%;--fade-bottom:11%}
html:root body.nw-woven-scenes .woven-lantern{--fade-left:12%;--fade-right:10%;--fade-top:12%;--fade-bottom:10%}
html:root[data-theme="dawn"] body.nw-woven-scenes .woven-storybook{--fade-left:12%;--fade-right:12%;--fade-top:7%;--fade-bottom:13%}
html:root[data-theme="dawn"] body.nw-woven-scenes .woven-lantern{--fade-left:14%;--fade-right:12%;--fade-top:14%;--fade-bottom:12%}}
