@charset "UTF-8";
/* v4 — the user's selected composition, rebuilt with native, usable controls. */
:root{--paper:#f4f1e9;--deep:#07101d;--ink:#182433;--gold:#e9ca59;--silver:#b8c7d9;--stage-font:"Noto Serif CJK JP","Yu Mincho","Hiragino Mincho ProN",serif}
html{scroll-padding-top:80px;background:#07101d}body.has-reference{background:#07101d;color:#f7f4ed;font-family:var(--stage-font);line-height:1.8}button{font-family:inherit}button:disabled{opacity:.6}.sr-only{pointer-events:none}
.reference-header{position:absolute;inset:0 0 auto;z-index:30;height:130px;background:transparent;backdrop-filter:none;border:0;color:#fff}.reference-header .header-inner{width:calc(100% - 50px);height:100%;gap:20px;align-items:flex-start;position:relative;padding-top:25px}.reference-brand{width:clamp(240px,31.7vw,410px);display:block;flex-shrink:0;position:relative;z-index:2;text-align:center}.reference-brand img{width:100%;height:auto;filter:drop-shadow(0 3px 15px #030810)}.reference-brand>span{display:block;font:9px/1.4 Georgia,serif;letter-spacing:.57em;margin-top:1px;text-indent:.57em}.reference-brand em{display:block;text-align:right;color:#e64660;font:italic 20px/1.4 "URW Chancery L","Brush Script MT",cursive;transform:rotate(-7deg);margin:6px 20px 0 0;text-shadow:0 2px 9px #000}
.reference-header .main-nav{display:flex;justify-content:space-between;gap:clamp(14px,2.2vw,34px);padding-top:5px;flex:1}.reference-header .main-nav>a{padding:0 0 8px;font-family:Georgia,serif;text-shadow:0 1px 6px #030810;line-height:1.4;white-space:nowrap}.reference-header .main-nav>a span{font-family:Georgia,serif;font-size:10px;letter-spacing:.06em}.reference-header .main-nav>a small{display:none}.reference-header .main-nav>a:first-child:after{width:100%;background:#fff;height:1px;bottom:0}.header-share{padding:0;background:transparent;color:white;width:30px;height:32px;display:grid;place-items:center;flex:0 0 30px}.header-share svg{width:20px;height:20px}.reference-header .menu-toggle{display:flex;color:#fff;background:none;gap:6px;width:42px;height:38px;flex:0 0 42px;margin:0}.reference-header .menu-toggle span{width:28px;background:#cfd6db}.reference-header .menu-toggle small{font:7px Georgia,serif;letter-spacing:.12em;margin-top:2px}.reference-header .reading-progress{display:none}.reference-header .motion-toggle{position:absolute;right:2px;top:85px;color:#c6ced8;border:0;background:transparent;display:flex;align-items:center;gap:7px;font:7px Georgia,serif;letter-spacing:.05em;cursor:pointer;padding:10px 0 10px 10px}.motion-bars{display:flex;gap:3px;height:13px;align-items:center}.motion-bars i{width:1px;height:12px;background:currentColor;animation:motion-bar 1.3s ease-in-out infinite alternate}.motion-bars i:nth-child(2){height:7px;animation-delay:-.7s}.motion-bars i:nth-child(3){height:10px;animation-delay:-.3s}@keyframes motion-bar{to{transform:scaleY(.4)}}
.reference-header .main-nav.is-open{position:fixed;inset:70px 26px auto auto;width:min(510px,calc(100% - 52px));padding:34px;display:grid;grid-template-columns:1fr 1fr;gap:23px;background:rgba(5,14,25,.98);backdrop-filter:blur(20px);border:1px solid #687485;box-shadow:0 30px 80px #0008;z-index:40}.reference-header .main-nav.is-open>a{align-items:flex-start}.reference-header .main-nav.is-open>a span{font-size:14px}.reference-header .main-nav.is-open>a small{display:block;margin-top:5px;font:10px var(--font);color:#c4c9d1}
.reference-hero{position:relative;isolation:isolate;height:clamp(790px,88.55vw,1100px);overflow:hidden;background:#081321;--pointer-x:0px;--pointer-y:0px}.stage-ambient{position:absolute;inset:0;background:linear-gradient(0deg,#050d17aa,#13294377),url('../images/sky-ambient.webp') center/cover;z-index:-5}.stage-art{position:absolute;inset:0;overflow:hidden;z-index:-4;transform:translate(var(--pointer-x),var(--pointer-y)) scale(1.016);will-change:transform}.stage-art picture{display:block;width:100%;height:100%}.stage-image{width:100%;height:100%;max-width:none;object-fit:cover;object-position:center top;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.stage-shade{position:absolute;inset:0;pointer-events:none;z-index:-3;background:linear-gradient(180deg,#02081388 0,transparent 17%,transparent 60%,#040c1799 95%,#07111e),linear-gradient(90deg,#020913bb,transparent 26%,transparent 91%,#03091499)}.opening-copy{position:absolute;left:3.35%;top:18.2%;text-shadow:0 2px 16px #020914,0 2px 3px #07121e}.vertical-catch{display:flex;flex-direction:row-reverse;gap:15px;font-size:clamp(30px,3.1vw,44px);line-height:1.5;letter-spacing:.18em;font-weight:500;white-space:nowrap}.vertical-catch>span{writing-mode:vertical-rl;text-orientation:mixed}.opening-prose{font-size:12px;line-height:2.3;letter-spacing:.10em;margin-top:28px}.opening-prose .dash{letter-spacing:0}.right-motto{position:absolute;right:2%;top:12.5%;writing-mode:vertical-rl;text-orientation:mixed;font-size:15px;letter-spacing:.24em;line-height:2.3;text-shadow:0 1px 6px #030913}.face-rail{position:absolute;right:17px;top:47.1%;display:flex;align-items:center;flex-direction:column;gap:1px}.face-rail .rail-quote{border:0;display:flex;align-items:center;justify-content:space-between;gap:10px;width:42px;height:34px;max-width:none;margin:0;padding:0 4px;background:none;font:9px Georgia,serif;color:#dce4ec;transform:none}.rail-quote span{transition:color .3s}.rail-quote i{width:3px;height:3px;border:1px solid transparent;border-radius:50%}.face-rail .rail-quote.unlocked{color:var(--gold);border:0;background:none}.face-rail .rail-quote.unlocked i{border-color:var(--gold);background:var(--gold);box-shadow:0 0 8px #e9ca5977}.face-rail .rail-quote:hover{color:var(--gold);transform:translateX(-3px)}.rail-line{height:29px;width:1px;background:#dee4e9;margin-top:12px;opacity:.7}
/* The central die is a six-sided CSS model, not a painted button. */
.portal{position:absolute;left:50.2%;bottom:36px;transform:translateX(-50%);width:282px;height:282px;border:0;color:#fffdf7;background:radial-gradient(circle,rgba(42,66,89,.15),transparent 67%);display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:0 0 48px;z-index:4;-webkit-appearance:none;transition:filter .25s}.portal:hover{filter:drop-shadow(0 0 13px #b2d9ff66)}.portal:focus-visible{outline-offset:6px;border-radius:50%;outline-color:var(--gold)}.portal-ring{position:absolute;border-radius:50%;pointer-events:none}.ring-one{inset:4px;border:1px solid #c7dbec77;box-shadow:inset 0 0 10px #c2d8eb10,0 0 8px #a9d5ff22;animation:ring-drift 23s linear infinite}.ring-two{inset:13px;border:1px solid #f4f7ff66;border-top-color:#edf6ffcc;border-bottom-color:#eef7ffcc;animation:ring-drift 29s linear infinite reverse}.ring-three{inset:0px;border:1px solid transparent;border-top-color:#e0ecf744;border-left-color:#bdd6ee55;animation:ring-drift 18s linear infinite}.portal-arrow{position:absolute;top:44%;height:21px;width:21px;border-left:2px solid #dceaff;border-bottom:2px solid #dceaff;filter:drop-shadow(0 0 8px #d4e7ff)}.arrow-left{left:-3px;transform:rotate(45deg)}.arrow-right{right:-3px;transform:rotate(225deg)}.portal-down{position:absolute;bottom:14px;width:18px;height:18px;border-left:1px solid #f3f9ff;border-bottom:1px solid #f3f9ff;transform:rotate(-45deg)}.portal-label{position:relative;font:700 21px/1.18 Georgia,serif;letter-spacing:.18em;text-indent:.18em;text-shadow:0 1px 8px #040a12}.portal-jp{font-size:10px;letter-spacing:.18em;margin-top:9px;font-weight:500}.portal-scene{position:absolute;top:34px;width:110px;height:110px;perspective:650px;pointer-events:none}.portal-tilt{position:absolute;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(-22deg) rotateY(-30deg) rotateZ(-16deg);animation:die-hover 4.5s ease-in-out infinite}.portal-cube{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform 1.3s cubic-bezier(.18,.66,.21,1)}.portal-face{position:absolute;inset:0;border:1px solid #aab0b7;border-radius:9px;padding:21px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:10px;backface-visibility:hidden;background:#f8f8f6;box-shadow:inset 0 0 16px #42475933;color:#0e1827}.portal-face i{border-radius:50%}.portal-face i.lit{background:currentColor;box-shadow:inset 1px 1px 2px #0008}.portal-face--1{transform:translateZ(55px);color:#c2233d}.portal-face--6{transform:rotateY(180deg) translateZ(55px);background:#d6d9de}.portal-face--3{transform:rotateY(90deg) translateZ(55px);background:#bdc7d2}.portal-face--4{transform:rotateY(-90deg) translateZ(55px);background:#eff3f4}.portal-face--2{transform:rotateX(90deg) translateZ(55px);background:#fff}.portal-face--5{transform:rotateX(-90deg) translateZ(55px);background:#b9c4ce}.portal.is-rolling .portal-tilt{animation-play-state:paused}.portal.is-rolling .ring-one{border-color:var(--gold);box-shadow:0 0 28px #e9ca5944}.portal:disabled{opacity:1;cursor:wait}
@keyframes die-hover{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -9px;rotate:4deg}}@keyframes ring-drift{to{rotate:360deg}}
.intro-tile{position:absolute;bottom:31px;left:2.45%;width:278px;height:182px;border:1px solid #acbbca99;background:#102135;color:#fff;padding:0;overflow:hidden;text-align:left;z-index:4}.intro-tile>img{width:100%;height:100%;object-fit:cover;object-position:32% 27%;filter:brightness(.75);transition:transform .7s,filter .5s}.intro-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#020912ee,transparent 74%);pointer-events:none}.intro-tile:hover img{transform:scale(1.045);filter:brightness(.95)}.play-ring{position:absolute;top:30%;left:45%;display:grid;place-items:center;border:1px solid #edf4fcaa;border-radius:50%;width:50px;height:50px;font-size:16px;z-index:1;padding-left:3px;box-shadow:0 0 18px #b6d9ff22}.intro-label{position:absolute;bottom:14px;left:17px;z-index:2;display:flex;flex-direction:column;gap:2px}.intro-label small{font:8px Georgia,serif;letter-spacing:.18em}.intro-label strong{font-weight:500;font-size:20px;letter-spacing:.08em}.intro-label em{font-family:var(--font);font-style:normal;font-size:8px;color:#b4c2d2;letter-spacing:.05em}.hero-links{position:absolute;right:2.4%;bottom:32px;width:252px;display:flex;flex-direction:column;gap:7px;z-index:4}.hero-link{height:81px;width:100%;text-align:left;border:1px solid #aabaca99;position:relative;isolation:isolate;overflow:hidden;padding:13px 19px;color:#fff;background:#091526;transition:border-color .25s,translate .25s}.hero-link:first-child{height:96px}.hero-link>img{position:absolute;inset:0 0 0 auto;width:79%;height:100%;object-fit:cover;object-position:50% 25%;z-index:-3;transition:transform .6s;filter:brightness(.8)}.hero-link:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#020810fa,rgba(3,11,23,.80) 41%,rgba(3,11,23,.1) 100%)}.hero-link span{display:block}.hero-link strong{font-size:17px;line-height:1.5;letter-spacing:.07em;font-weight:500}.hero-link small{display:block;font:8px Georgia,serif;letter-spacing:.26em;margin-top:5px}.hero-link>b{position:absolute;right:12px;bottom:9px;font-size:15px;opacity:.8;font-weight:400}.hero-link:hover{border-color:var(--gold);translate:-5px 0}.hero-link:hover>img{transform:scale(1.07)}.link-character>img{object-position:50% 23%}.link-world>img{object-position:center}.hero-scroll{position:absolute;left:15px;bottom:2px;top:auto;display:flex;gap:10px;align-items:center;writing-mode:vertical-rl;transform:translateX(-3px);font:7px Georgia,serif;letter-spacing:.21em;color:#d7e0e9}.hero-scroll i{height:56px;width:1px;background:#f7fbff66;position:relative}.hero-scroll i:before{content:"";position:absolute;top:0;left:-1px;width:3px;height:10px;background:#fff;animation:scroll-signal 3s infinite}.hero-rule{position:absolute;bottom:0;left:0;width:100%;height:1px;background:#a6b4c047}.hero-rule:before{position:absolute;content:"";height:2px;left:0;bottom:0;width:29%;background:linear-gradient(90deg,#f3d000,#f3d00011)}@keyframes scroll-signal{0%{transform:translateY(0);opacity:0}20%{opacity:1}90%{transform:translateY(46px);opacity:1}100%{transform:translateY(46px);opacity:0}}
.stage-dust{position:absolute;inset:0;z-index:-2;pointer-events:none}.stage-dust i{position:absolute;left:var(--x);top:var(--y);height:7px;width:3px;background:#f3d478;opacity:0;rotate:var(--turn);animation:dust-float var(--life) linear infinite;animation-delay:var(--delay);filter:blur(.3px)}.stage-dust i:nth-child(3n){background:#b7d7ed;width:2px;height:2px}.stage-dust i:nth-child(5n){background:#d66c73;height:9px;width:3px}@keyframes dust-float{0%{transform:translate(0,45px) rotate(0);opacity:0}30%{opacity:.45}70%{opacity:.6}100%{transform:translate(40px,-160px) rotate(220deg);opacity:0}}
.reference-updates{display:flex;align-items:center;justify-content:space-between;min-height:147px;padding:26px 4%;gap:45px;position:relative;background:linear-gradient(135deg,#091422ee,#081422f2),url('../images/selected-scene.webp') center 95%/cover;border-bottom:1px solid #8399ac55}.news-area{display:flex;gap:34px;flex:1;align-items:flex-start;min-width:0}.news-area h2{font:12px Georgia,serif;letter-spacing:.17em;padding-top:7px;font-weight:400}.news-rows{width:100%;max-width:560px}.news-rows button{display:grid;grid-template-columns:65px 1fr 15px;gap:12px;align-items:center;width:100%;text-align:left;min-height:29px;padding:5px 0;background:transparent;border:0;color:#cbd4dd;transition:color .2s}.news-rows button:hover{color:#fff}.news-rows button span{font:8px Georgia,serif;letter-spacing:.07em}.news-rows p{font-size:10px;letter-spacing:.04em;line-height:1.8}.news-rows b{font-weight:400;font-size:12px;opacity:.6}.manifesto{flex:0 0 auto;width:340px;font:italic 21px/1.65 var(--stage-font);letter-spacing:.09em;transform:rotate(-4deg);padding-right:3px}.manifesto em{font-size:19px;color:#e9ca45;white-space:nowrap;font-weight:500;letter-spacing:.05em}
.reference-footer{position:relative;padding:23px 5%;background:#050b13;color:#d3d9df;display:flex;gap:20px;justify-content:space-between;align-items:center;border:0}.footer-credits{display:flex;gap:23px;align-items:center;justify-content:center;width:100%;font-size:9px;line-height:1.9}.footer-credits p{font-size:inherit;margin:0}.footer-credits strong{font-weight:600}.footer-credits .production{white-space:nowrap}.footer-credits .fiction{font-size:8px;max-width:460px}.footer-credits .rights{font:9px/1.8 Georgia,serif;letter-spacing:.045em;white-space:nowrap}.footer-about{border:0;color:#aab7c8;background:transparent;font:8px Georgia,serif;letter-spacing:.09em;min-height:30px;min-width:38px}
/* Reading & story content are real dialogs, not flattened artwork. */
dialog{font-family:var(--font);color:var(--ink);max-height:calc(100svh - 40px);border:1px solid #8594a466}dialog::backdrop{background:#020914da;backdrop-filter:blur(10px)}.dialog-head{background:#091523;color:#fffdf7;border-color:#a7b9cd44;padding:15px 24px}.dialog-head .eyebrow{color:#c6d1df;font-size:9px}.dialog-head .eyebrow strong{font-size:13px;color:#fff;margin-top:3px}.dialog-head .dialog-close{color:#fff;border-color:#c8d2dd77}.content-view{width:min(1160px,calc(100% - 60px));max-width:min(1160px,calc(100% - 60px));background:#101c2d}.content-view .wrap{width:calc(100% - 68px)}.view-body{overflow:visible}.content-view section{padding-top:40px;padding-bottom:40px}.content-view .world,.content-view .characters{background:#f3f0e8;color:var(--ink)}.content-view .section-index,.content-view .section-top{font-family:var(--font)}.content-view .section-top{margin-bottom:26px}.content-view .world-main{gap:50px}.content-view .world-main .section-title{font-size:33px}.content-view .world-copy{font-size:12px}.content-view .experience-heading{align-items:flex-start}.content-view .experience-heading .section-title{font-size:35px}.content-view .characters-intro .section-title{font-size:31px}.content-view .character-card{display:block;min-height:0}.content-view .character-image{height:345px}.content-view .character-image img{object-position:50% 14%;transform:none}.content-view .character-card.ritsu .character-image img{object-position:50% 17%}.content-view .character-text{padding:26px}.content-view .character-desc{font-size:12px}.content-view .character-quote{font-size:16px}.content-view .novel-inner{gap:55px}.content-view .book{aspect-ratio:2/3}.content-view .share-section{color:var(--ink)}.world-panorama{margin:30px 0 0;aspect-ratio:2.7;position:relative;overflow:hidden;background:#0e1f33}.world-panorama img{width:100%;height:100%;object-fit:cover}.world-panorama:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#06172bd4)}.world-panorama figcaption{position:absolute;left:23px;bottom:18px;color:white;z-index:1;font-size:14px}.world-panorama figcaption span{display:block;font:9px var(--mono);letter-spacing:.15em;margin-bottom:7px}.work-credits{margin-top:20px;font-size:10px;line-height:2}.work-credits p{font-size:inherit;margin:0!important}.work-credits .work-production{font-size:11px;margin-bottom:8px!important}.work-credits .work-rights{font:9px/1.8 var(--mono);margin-top:8px!important}.novel-copy .work-credits{color:#bac5d2;border-top:1px solid #dce4e822;padding-top:16px}.reader-end .work-credits{color:#424951}.quote-next{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.quote-next p{font-size:11px}.quote-next .button{min-height:48px;font-size:12px}.visual-dialog{width:min(1280px,calc(100% - 40px));max-width:min(1280px,calc(100% - 40px))}.visual-dialog img{width:100%;height:auto}.visual-dialog .work-credits{padding:20px;margin:0}
.intro-dialog{width:min(1050px,calc(100% - 40px));max-width:min(1050px,calc(100% - 40px));color:#fff;background:#091624}.intro-stage{height:min(63vh,590px);min-height:360px;position:relative;overflow:hidden}.intro-shot{position:absolute;inset:0;margin:0;opacity:0;pointer-events:none;transition:opacity .8s}.intro-shot.is-active{opacity:1;pointer-events:auto;z-index:1}.intro-shot img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;transform:scale(1.03);transition:transform 5s linear}.intro-shot.is-active img{transform:scale(1.09)}.intro-shot:after{position:absolute;content:"";inset:0;background:linear-gradient(90deg,#041024ee,transparent 90%),linear-gradient(0deg,#06111a77,transparent 50%);pointer-events:none}.intro-shot figcaption{position:absolute;left:7%;top:50%;transform:translateY(-50%);z-index:2;font-family:var(--stage-font);max-width:80%}.intro-shot small{font:10px Georgia,serif;letter-spacing:.15em}.intro-shot strong{display:block;font-size:40px;line-height:1.7;letter-spacing:.05em;font-weight:400;margin:25px 0 18px}.intro-shot p{font-size:14px;line-height:2.1}.intro-shot button{background:#ffffff0f;border:1px solid #f8fafdaa;color:white;font-size:13px;padding:13px 23px}.intro-controls{padding:15px 20px;display:flex;align-items:center;gap:13px;border-top:1px solid #8dacc444;background:#071320}.intro-controls button{min-width:38px;min-height:38px;border:1px solid #a1b5c566;background:none;color:white;font-size:12px}.intro-controls #intro-play{padding:7px 15px;margin-left:12px}.intro-controls #intro-count{font:11px Georgia,serif;min-width:56px;text-align:center}.intro-controls p{font:9px var(--font);color:#adb9c9;margin-left:auto;line-height:1.8}.noscript-notice{padding:18px;background:#f1d87a;color:#152130;text-align:center;font:12px var(--font)}.noscript-notice a{text-decoration:underline}
.motion-paused *,.motion-paused *:before,.motion-paused *:after,.page-inactive *,.page-inactive *:before{animation-play-state:paused!important}.motion-paused .stage-art{transform:none!important}.motion-paused .portal-cube{transition-duration:.05s}.motion-paused .intro-shot,.motion-paused .intro-shot img{transition:none!important}.effect-offscreen .stage-dust i,.effect-offscreen .portal-tilt,.effect-offscreen .portal-ring{animation-play-state:paused}.motion-paused .intro-shot.is-active img{transform:none!important}
@media(min-width:1500px){.reference-hero{height:min(1100px,100svh);min-height:900px}.stage-image{object-fit:contain;mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}.opening-copy{left:5.8%;top:19%}.vertical-catch{font-size:43px}.opening-prose{font-size:13px}.right-motto{right:3.4%}.hero-links{right:5.3%;bottom:50px;width:283px}.hero-link{height:86px}.hero-link:first-child{height:106px}.intro-tile{left:5.5%;bottom:50px;width:290px;height:185px}.portal{bottom:48px}.reference-brand{width:360px}.reference-header .header-inner{width:calc(100% - 110px)}.reference-header .main-nav{justify-content:center;gap:35px}.face-rail{right:3%}.hero-scroll{left:2.3%}.reference-updates{padding-inline:5.7%;min-height:156px}.news-area{max-width:830px}.news-rows{max-width:690px}.news-rows p{font-size:12px}.news-rows button{min-height:32px}.manifesto{width:390px;font-size:23px}.manifesto em{font-size:21px}.footer-credits .fiction{font-size:10px;max-width:580px}.footer-credits{font-size:10px}}
@media(max-width:1100px){.reference-header .header-inner{gap:14px;width:calc(100% - 40px)}.reference-brand{width:285px}.reference-header .main-nav{gap:13px}.reference-header .main-nav>a span{font-size:9px}.header-share{display:none}.reference-header .motion-toggle{top:70px}.opening-copy{top:18%}.vertical-catch{font-size:31px;gap:9px}.opening-prose{font-size:11px;margin-top:20px}.right-motto{font-size:12px;right:19px}.intro-tile{width:226px;height:157px}.hero-links{width:215px}.hero-link{height:70px;padding:10px 15px}.hero-link:first-child{height:87px}.hero-link strong{font-size:15px}.portal{width:250px;height:250px;bottom:29px}.portal-scene{top:27px;scale:.88}.portal{padding-bottom:39px}.portal-label{font-size:19px}.portal-jp{font-size:9px}.portal-down{bottom:12px}.face-rail{right:11px}.reference-updates{gap:25px;padding:23px 30px}.news-area{gap:24px}.manifesto{font-size:18px;width:290px}.manifesto em{font-size:16px}.footer-credits{gap:14px;flex-wrap:wrap}.footer-credits .fiction{order:3;text-align:center;max-width:none;flex-basis:100%;font-size:9px}.reference-footer{padding:18px 24px}.footer-credits .rights{font-size:9px}.intro-label strong{font-size:18px}.reference-header .main-nav.is-open{padding:28px}}
@media(max-width:850px){.reference-header .header-inner{width:calc(100% - 36px)}.reference-brand{width:272px}.reference-header .main-nav{display:none}.reference-header .main-nav.is-open{display:grid}.reference-header .menu-toggle{margin-left:auto}.reference-header .motion-toggle{top:71px;right:1px}.reference-hero{height:880px;min-height:0}.stage-image{width:110%;margin-left:-5%;object-fit:cover;object-position:52% 0%}.stage-shade{background:linear-gradient(0deg,#050e19 0%,#081320aa 15%,transparent 53%,#03091233),linear-gradient(90deg,#08101fa6,transparent 29%,transparent 90%,#040e21aa)}.opening-copy{top:169px;left:25px}.vertical-catch{font-size:29px;gap:10px}.opening-prose{font-size:10px;line-height:2.2;margin-top:27px}.right-motto{font-size:11px;top:132px;right:18px}.face-rail{top:410px;right:8px}.intro-tile{width:199px;left:25px;height:143px}.intro-label{left:11px;bottom:10px}.intro-label strong{font-size:16px}.intro-label em{font-size:7px}.intro-label small{font-size:7px}.play-ring{width:40px;height:40px;font-size:12px;top:22%;left:44%}.hero-links{right:23px;width:193px;gap:6px}.hero-link{height:60px}.hero-link:first-child{height:76px}.hero-link strong{font-size:13px}.hero-link small{font-size:7px}.portal{width:228px;height:228px;bottom:41px}.portal-scene{top:14px;scale:.77}.portal-label{font-size:17px}.portal-jp{font-size:8px;margin-top:8px}.portal{padding-bottom:37px}.reference-updates{display:block;padding:26px 28px}.news-area{width:100%;gap:27px}.news-rows{max-width:none}.manifesto{margin:24px 0 5px auto;font-size:17px;line-height:1.7;width:280px}.manifesto em{font-size:16px}.footer-credits .fiction{font-size:9px;line-height:2}.content-view{width:calc(100% - 30px);max-width:calc(100% - 30px)}.content-view .wrap{width:calc(100% - 40px)}.content-view .world-main{gap:20px}.content-view .world-main .section-title{font-size:28px}.content-view .character-image{height:300px}.content-view .character-text{padding:23px}.content-view .character-quote{font-size:13px}.intro-shot strong{font-size:32px}.intro-controls p{max-width:140px}}
@media(max-width:640px){html{scroll-padding-top:0}.reference-header{height:90px}.reference-header .header-inner{width:calc(100% - 30px);padding-top:18px}.reference-brand{width:228px}.reference-brand>span{font-size:6px;letter-spacing:.56em;margin-top:0}.reference-brand em{font-size:14px;margin:5px 11px 0 0}.reference-header .menu-toggle{height:35px;width:33px;flex-basis:33px;margin-left:auto;padding:0}.reference-header .menu-toggle span{width:23px}.reference-header .menu-toggle small{font-size:6px}.reference-header .motion-toggle{top:58px;padding:8px 0 8px 8px;font-size:6px;gap:5px}.motion-bars{height:10px;gap:2px}.motion-bars i{height:10px}.reference-header .main-nav.is-open{inset:63px 13px auto auto;width:calc(100% - 26px);padding:24px;gap:21px}.reference-header .main-nav.is-open>a span{font-size:12px}.reference-header .main-nav.is-open>a small{font-size:9px}.reference-hero{height:900px;height:max(815px,112svh);max-height:1000px;min-height:0}.stage-art{inset:0 -18% auto;height:calc(100% - 124px);transform:none!important}.stage-image{width:100%;height:100%;object-fit:cover;object-position:46% 0%;margin:0;mask-image:linear-gradient(0deg,transparent,#000 17%,#000 100%)}.stage-ambient{background-position:48% center;filter:brightness(.67)}.stage-shade{background:linear-gradient(0deg,#071221,#07122166 28%,transparent 52%,#040b161a),linear-gradient(90deg,#07112088,transparent 35%,transparent 95%,#09162688)}.opening-copy{top:142px;left:15px;z-index:2}.vertical-catch{font-size:25px;gap:4px;line-height:1.4;letter-spacing:.16em}.opening-prose{font-size:9px;line-height:2;letter-spacing:.04em;margin-top:19px;max-width:122px}.opening-prose .dash{display:none}.right-motto{right:8px;top:124px;font-size:9px;line-height:1.9;letter-spacing:.18em}.face-rail{right:5px;top:360px;gap:0}.face-rail .rail-quote{width:31px;height:30px;font-size:8px;gap:5px;padding:0 3px}.rail-line{height:23px;margin-top:6px}.portal{left:45%;bottom:128px;width:202px;height:202px;padding-bottom:31px;background:radial-gradient(circle,#08162699,transparent 70%)}.ring-one{inset:4px}.ring-two{inset:11px}.ring-three{inset:0}.portal-scene{top:6px;scale:.66}.portal-label{font-size:17px;line-height:1.1;letter-spacing:.15em}.portal-jp{font-size:8px;margin-top:7px;letter-spacing:.10em}.portal-down{height:11px;width:11px;bottom:11px}.portal-arrow{width:13px;height:13px;border-width:1px;top:46%}.intro-tile{left:auto;right:15px;bottom:158px;width:97px;height:113px}.intro-tile img{object-position:51% center;filter:brightness(.65)}.play-ring{left:calc(50% - 17px);top:11px;width:34px;height:34px;font-size:10px}.intro-label{bottom:10px;left:8px;right:7px;gap:3px}.intro-label small{font-size:6px;letter-spacing:.10em}.intro-label strong{font-size:11px;letter-spacing:.05em}.intro-label em{display:none}.hero-links{left:15px;right:15px;bottom:31px;width:auto;flex-direction:row;gap:6px}.hero-link{flex:1;min-width:0;height:83px;padding:11px 9px}.hero-link:first-child{height:83px}.hero-link>img{width:100%;filter:brightness(.6)}.hero-link:after{background:linear-gradient(90deg,#050e1af0,#050e1a44)}.hero-link strong{font-size:12px;letter-spacing:.025em}.hero-link small{font-size:6px;letter-spacing:.12em;margin-top:5px}.hero-link>b{font-size:13px;right:7px;bottom:5px}.hero-link:hover{translate:0 -3px}.hero-scroll{display:none}.reference-updates{padding:24px 19px 26px}.news-area{display:block}.news-area h2{font-size:11px;margin-bottom:16px;padding-top:0}.news-rows button{grid-template-columns:56px 1fr 10px;gap:9px;padding:8px 0;border-top:1px solid #aac1d31d;min-height:43px}.news-rows button span{font-size:7px}.news-rows p{font-size:10px;line-height:1.85}.manifesto{font-size:18px;width:290px;margin:29px 1px 0 auto;line-height:1.9;transform:rotate(-3deg)}.manifesto em{font-size:16px;letter-spacing:0}.reference-footer{display:block;padding:23px 21px}.footer-credits{display:block;text-align:center;font-size:10px}.footer-credits .production{margin-bottom:12px;font-size:11px}.footer-credits .fiction{font-size:9px;line-height:2.2;text-align:center;max-width:380px;margin:auto}.footer-credits .rights{font-size:9px;margin-top:13px;letter-spacing:.025em}.footer-about{display:block;margin:13px auto 0;font-size:8px;padding:5px 15px;min-height:30px}.content-view{width:calc(100% - 20px);max-width:calc(100% - 20px);max-height:calc(100svh - 22px)}dialog{max-height:calc(100svh - 22px)}.dialog-head{padding:12px 15px}.dialog-head .eyebrow strong{font-size:11px}.dialog-head .eyebrow{font-size:8px}.content-view .wrap{width:calc(100% - 32px)}.content-view section{padding-top:29px;padding-bottom:30px}.content-view .world-main .section-title{font-size:25px;line-height:1.8}.content-view .world-copy{font-size:11px}.content-view .experience-heading .section-title{font-size:26px;line-height:1.6}.content-view .game-board,.content-view .game-roll{padding-inline:14px}.content-view .future-name{font-size:11px}.content-view .future-prep{font-size:9px}.content-view .future{padding-inline:9px;gap:8px;grid-template-columns:25px 1fr 43px}.content-view .characters-intro .section-title{font-size:24px}.content-view .character-grid{gap:22px}.content-view .character-image{height:345px}.content-view .character-text{padding:23px}.content-view .character-desc{font-size:12px}.content-view .character-quote{font-size:15px}.content-view .character-text h3{font-size:29px}.world-panorama{aspect-ratio:1.5}.world-panorama figcaption{left:14px;bottom:15px;font-size:11px}.world-panorama figcaption span{font-size:7px}.content-view .novel-inner{gap:20px}.content-view .novel .book{width:190px}.content-view .share-title h2{font-size:25px}.content-view .share-tools .button{font-size:10px;padding:11px 14px}.intro-dialog{width:calc(100% - 20px);max-width:calc(100% - 20px)}.intro-stage{height:64svh;min-height:330px}.intro-shot figcaption{left:7%;max-width:87%;top:54%}.intro-shot:after{background:linear-gradient(0deg,#041022ed,transparent),linear-gradient(90deg,#081423cc,transparent)}.intro-shot img{object-position:52% top}.intro-shot strong{font-size:26px;line-height:1.8;margin:23px 0 18px}.intro-shot p{font-size:12px}.intro-shot small{font-size:8px}.intro-controls{padding:12px 14px;gap:7px;flex-wrap:wrap}.intro-controls button{min-height:34px;min-width:34px;font-size:10px}.intro-controls #intro-count{font-size:10px;min-width:53px}.intro-controls #intro-play{margin-left:auto;padding-inline:11px}.intro-controls p{font-size:8px;max-width:none;flex-basis:100%;margin:3px 0 0}.quote-next .button{font-size:11px;width:100%;padding-inline:14px}.quote-next p{font-size:10px}}
@media(max-width:359px){.reference-brand{width:197px}.reference-header .motion-toggle{font-size:5px}.reference-hero{height:840px;max-height:none}.stage-art{inset-inline:-22%;height:680px}.opening-copy{top:134px;left:12px}.vertical-catch{font-size:23px;gap:2px}.opening-prose{font-size:8px}.right-motto{font-size:8px;right:7px}.face-rail{top:350px}.portal{left:41%;bottom:134px;width:185px;height:185px;padding-bottom:26px}.portal-scene{scale:.58;top:-1px}.portal-label{font-size:15px}.portal-jp{font-size:7px}.intro-tile{right:11px;bottom:167px;width:84px;height:106px}.hero-links{left:11px;right:11px;gap:5px}.hero-link{padding-inline:8px}.hero-link strong{font-size:10px}.hero-link small{font-size:6px}.manifesto{width:265px;font-size:17px}.manifesto em{font-size:15px}.content-view .future-name{font-size:10px}.content-view .future-prep{font-size:8px}.content-view .collection-heading p{font-size:8px}.content-view .character-image{height:300px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.stage-art{transform:none!important}.portal-cube{transition:transform .01s!important}.intro-shot.is-active img{transform:none}}
@media print{.reference-header,.reference-hero,.reference-updates,.reference-footer,.intro-dialog{display:none!important}dialog[open]{position:static;max-height:none;overflow:visible;border:0;color:#000}.dialog-head,.dialog-close{display:none}.reader-content{padding:0}}
/* Mobile art direction: retain both faces rather than using a narrow cover crop. */
@media(max-width:640px){
 .reference-hero{height:max(815px,100svh);max-height:940px}
 .stage-art{inset:74px -20% auto;height:auto;aspect-ratio:1213/1074}
 .stage-art picture{position:absolute;inset:0;width:100%;height:100%}
 .stage-image{width:100%;height:100%;object-fit:contain;object-position:center top}
 .stage-shade{background:linear-gradient(0deg,#071221 0%,#07122155 25%,transparent 56%,#040b1611),linear-gradient(90deg,#07112044,transparent 29%,transparent 98%)}
 .opening-copy{top:142px}.opening-prose{margin-top:21px}
 .face-rail{top:358px;background:linear-gradient(90deg,transparent,#07132488);border-radius:20px 0 0 20px}
}
@media(max-width:359px){.reference-hero{height:815px;max-height:none}.stage-art{inset:72px -21% auto;aspect-ratio:1213/1074;height:auto}.opening-copy{top:132px}.portal{left:41%}}
@media(min-width:1101px){.footer-credits .fiction{font-size:9px;line-height:2}.footer-credits{font-size:10px}.footer-credits .rights{font-size:9px}}
