@font-face{font-family:PTSerif;src:url('assets/pt-serif.ttf') format('truetype');font-display:swap}*{box-sizing:border-box} :root{color-scheme:dark;--text:#c8c5bd;--muted:#96948e;--gold:#f0dcb3;--line:#d9bd85}body{margin:0;background:#080b0d;color:var(--text);font-family:PTSerif,Georgia,serif;font-size:17px;min-height:100svh}button,a,input{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}button:hover,a:hover{color:var(--gold)}button:focus-visible,a:focus-visible,input:focus-visible{outline:1px solid var(--gold);outline-offset:7px}button,a{transition:color .12s} [hidden]{display:none!important}.forest,.shade,.mist,.dust{position:fixed;inset:0;pointer-events:none}.forest{background:url('assets/forest.png') center/cover no-repeat;z-index:-4}.shade{background:linear-gradient(90deg,rgba(0,0,0,.58),transparent 72%),linear-gradient(0deg,#050809 0%,transparent 28%,transparent 80%,#05080988);z-index:-3}.mist{inset:-10%;background:url('assets/mist.png') center/cover;opacity:.22;z-index:-2;animation:drift 45s ease-in-out infinite alternate}.dust{background-image:radial-gradient(1px 1px at 14% 21%,#dfd2b388 70%,transparent),radial-gradient(1px 1px at 73% 43%,#dfd2b366 70%,transparent),radial-gradient(1px 1px at 39% 78%,#dfd2b388 70%,transparent);background-size:390px 330px;opacity:.5;z-index:-1;animation:drift 60s linear infinite alternate}@keyframes drift{to{transform:translate(4%,1%)}}body.still .mist,body.still .dust{animation:none}header{height:90px;margin:0 4.5%;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:2.4px}.project span{margin-left:15px;color:var(--muted);font-size:9px}.status{display:flex;align-items:center;gap:10px;letter-spacing:1.2px}.status i{width:5px;height:5px;background:var(--line);box-shadow:0 0 12px #d9bd8566;transform:rotate(45deg)}.layout{display:grid;grid-template-columns:40% 60%;max-width:1700px;margin:auto;min-height:calc(100svh - 166px)}.sidebar{padding:12px 8% 25px 10%}.logo{width:min(100%,430px);height:auto;display:block;filter:drop-shadow(0 4px 18px #000);margin-bottom:28px}.tagline{color:#b5afa3;letter-spacing:6px;font-size:13px;white-space:nowrap;margin:0 0 64px 27px}nav{display:grid;gap:14px;margin-left:35px;max-width:335px}nav a{position:relative;color:var(--muted);text-transform:uppercase;letter-spacing:1.8px;font-size:clamp(21px,2.25vw,32px);padding:9px 0 10px;line-height:1.3;text-shadow:1px 2px #0009}nav a:after{content:'';position:absolute;left:-33px;right:-16px;bottom:-3px;height:34px;background:url('assets/selection.png') center/100% auto no-repeat;opacity:0;transition:opacity .12s;pointer-events:none}nav a:hover,nav a.active{color:var(--gold)}nav a:hover:after,nav a.active:after{opacity:1}.side-note{margin:44px 0 0 35px;font-size:13px;line-height:1.8;color:#aaa69b}#content{min-width:0;outline:none}.page{animation:appear .5s ease-out}@keyframes appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.home{height:100%;min-height:620px;position:relative;display:flex;align-items:center;padding:80px 9% 80px 13%}.home-text{margin-top:130px;text-shadow:0 2px 18px #000,0 2px 4px #000}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--line);margin:24px 0}.home h1{font-size:clamp(32px,3.2vw,52px);font-weight:400;line-height:1.25;color:#e4dfd2;margin:20px 0}.home p:not(.eyebrow){line-height:1.9;color:#b6b9b5;font-size:16px}.text-link{display:inline-block;font-size:15px;color:var(--gold);padding:12px 0;border-bottom:1px solid #d9bd8555;letter-spacing:.5px}.text-link span{margin-left:35px}.scene-caption{position:absolute;bottom:25px;right:8%;font-size:10px;color:#919893}.panel{margin:26px 8% 45px 0;padding:34px 40px;background:linear-gradient(110deg,#070b0eef,#0b1013d9);border:1px solid #d9bd8526;box-shadow:0 15px 70px #0005;max-height:calc(100svh - 185px);overflow:auto;scrollbar-width:thin;scrollbar-color:#d9bd8566 transparent}.section-head{display:flex;align-items:baseline;gap:21px;border-bottom:1px solid #d9bd8555;padding-bottom:22px;margin-bottom:25px}.section-head span{color:#918573;font-size:12px}.section-head h1{text-transform:uppercase;letter-spacing:3px;font-size:30px;font-weight:400;color:var(--gold);margin:0}h2{font-weight:400;font-size:32px;line-height:1.3;color:var(--gold)}.panel p{line-height:1.8}.panel .intro{font-size:14px;color:#aaa99f}.feature{margin:30px 0}.feature img{width:100%;display:block;border:1px solid #d9bd8522}.feature figcaption{font-size:11px;color:var(--muted);margin-top:9px}.story-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:25px 0}.story-points span{color:#d9bd8577;font-size:14px}.story-points h3{font-size:17px;color:var(--gold);font-weight:400}.story-points p{font-size:12px;color:#a6a69e}.filters{display:flex;gap:22px;padding:10px 0 22px;flex-wrap:wrap}.filters button{font-size:14px;padding:6px 0;color:var(--muted);border-bottom:1px solid transparent}.filters button[aria-pressed=true]{color:var(--gold);border-color:var(--gold)}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 16px}.shot{display:block;text-align:left;padding:0;min-width:0}.shot img{width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid #d9bd8530;display:block;transition:filter .2s,border .2s}.shot:hover img{filter:brightness(1.25);border-color:var(--line)}.shot span{display:block;font-size:12px;margin:9px 0;color:#c1bbad}.shot small{color:#817c72;font-size:9px;letter-spacing:1px}.panel .fine{font-size:12px;color:#9a9a92;margin-top:28px}.dev-row,.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid #d9bd8526;font-size:14px}.dev-row strong{font-weight:400;color:var(--gold);text-align:right}.setting-row button[role=switch]{min-width:90px;border:1px solid #d9bd8555;padding:8px 14px;color:var(--gold)}input[type=range]{accent-color:#d9bd85;max-width:44%;height:3px}.languages{display:flex;gap:13px;align-items:center;font-size:14px}.languages span{color:#67665f}.languages button{padding:6px}.languages button[aria-pressed=true]{color:var(--gold)}footer{min-height:76px;margin:0 4.5%;display:flex;align-items:center;justify-content:space-between;color:#96948e;font-size:11px}footer>a{font-size:12px}.footer-dot{padding:0 10px;color:#64665e}.skip{position:fixed;top:-100px;background:#111;padding:12px;z-index:20}.skip:focus{top:10px}dialog{width:min(1200px,94vw);max-height:95svh;border:1px solid #d9bd8555;background:#080b0df5;color:var(--text);padding:18px}dialog::backdrop{background:#000d;backdrop-filter:blur(6px)}.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px}.viewer-top{padding-bottom:12px;color:var(--muted)}dialog button{font-size:24px;padding:5px 12px}#viewer-image{display:block;width:100%;max-height:72svh;object-fit:contain}#viewer-caption{text-align:center;font-size:13px}body:has(dialog[open]){overflow:hidden}@media(min-width:1700px){.layout{padding-top:3vh}.sidebar{padding-top:25px}.tagline{margin-bottom:80px}}@media(max-width:1000px){.layout{grid-template-columns:36% 64%}.sidebar{padding-left:9%;padding-right:5%}.tagline{font-size:10px;letter-spacing:3px;margin-left:10px;margin-bottom:45px}nav{margin-left:15px}nav a{font-size:21px}.panel{padding:25px;margin-right:6%}.story-points{grid-template-columns:1fr}.story-points p{margin-top:0}.story-points h3{margin:8px 0}.home{padding-left:8%;min-height:560px}.logo{margin-top:20px}.section-head h1{font-size:25px}.side-note{margin-left:15px}}@media(max-width:680px){header{height:65px;font-size:9px;letter-spacing:1.5px}.project span{display:none}.status{font-size:10px}.layout{display:block;min-height:calc(100svh - 150px)}.sidebar{padding:0 7% 24px}.logo{width:230px;margin:18px auto 20px}.tagline{text-align:center;font-size:10px;margin:0 0 25px;letter-spacing:4px}nav{display:flex;justify-content:center;flex-wrap:wrap;max-width:none;margin:0;gap:8px 21px}nav a{font-size:14px;letter-spacing:.6px;padding:8px 0}nav a:after{left:-8px;right:-8px;height:13px;bottom:0}.side-note{display:none}.home{min-height:380px;padding:30px 9% 70px}.home-text{margin:0}.home h1{font-size:36px}.home p:not(.eyebrow){font-size:14px}.scene-caption{font-size:9px;bottom:15px;left:9%}.forest{background-position:65% center}.shade{background:linear-gradient(90deg,#030607b0,#03060744),linear-gradient(0deg,#050809,transparent 60%)}.panel{max-height:none;margin:0 5% 25px;padding:24px 20px}.section-head h1{font-size:23px;letter-spacing:2px}.section-head{gap:15px}.panel p{font-size:14px}.gallery-grid{gap:20px 12px}.shot span{font-size:11px}.filters{gap:17px}.filters button{font-size:12px}.dev-row,.setting-row{font-size:12px}h2{font-size:27px}footer{flex-wrap:wrap;gap:15px;padding:15px 0;font-size:9px}footer>a{font-size:11px}.viewer-bottom{gap:3px}#viewer-caption{font-size:11px}.home .eyebrow{margin-top:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* Reviews use the same serif, ivory colors and fine borders as the UE menu. */
.review-summary{display:flex;align-items:baseline;gap:16px;padding:12px 0 25px;border-bottom:1px solid #d9bd8544}.review-summary strong{font-size:40px;font-weight:400;color:var(--gold)}.review-summary span{font-size:13px;color:var(--muted)}.review-card{padding:22px 0;border-bottom:1px solid #d9bd8533}.review-head{display:flex;gap:15px;justify-content:space-between;align-items:baseline}.review-head strong{font-weight:400;overflow-wrap:anywhere;color:var(--gold)}.review-stars{white-space:nowrap;letter-spacing:2px;color:var(--line);font-size:16px}.review-date{font-size:11px;color:var(--muted)}.review-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.review-button{display:inline-block;border:1px solid #d9bd8577;color:var(--gold);padding:10px 16px;font-size:14px;margin:8px 0}.review-button:hover{background:#d9bd8510}.review-button:disabled{opacity:.45;cursor:wait}.review-compose{margin-top:32px}.review-compose h2{font-size:25px}.review-form{display:grid;gap:12px}.review-form label,.review-form legend{font-size:14px;color:var(--text)}.review-form input:not([type=radio]),.review-form textarea{width:100%;border:1px solid #d9bd8555;background:#060b0d;color:var(--text);font:inherit;padding:12px;border-radius:0}.review-form textarea{resize:vertical}.review-form .fine{margin:0}.review-rating{border:0;padding:5px 0;display:flex;gap:10px;margin:5px 0}.review-rating legend{margin-bottom:8px}.review-rating label{position:relative;cursor:pointer}.review-rating input{position:absolute;opacity:0;width:1px;height:1px}.review-rating span{display:block;padding:8px 10px;border:1px solid #d9bd8544;color:var(--muted)}.review-rating input:checked+span{border-color:var(--gold);color:var(--gold);background:#d9bd8515}.review-rating input:focus-visible+span{outline:2px solid var(--gold);outline-offset:3px}.review-state,.review-message{font-size:13px;color:var(--gold)}.review-message:empty{display:none}.review-pagination,.review-actions{display:flex;gap:12px;justify-content:space-between}.review-admin{margin-top:32px;border-top:1px solid #d9bd8555;padding-top:22px}.review-admin summary{color:var(--gold);cursor:pointer}.review-admin .filters{margin-top:15px}@media(max-width:680px){.review-rating{gap:7px}.review-rating span{padding:8px}.review-head{flex-wrap:wrap;gap:6px}.review-actions{flex-wrap:wrap}.review-stars{font-size:14px}}nav{gap:10px}.side-note{margin-top:28px}
.captcha-box{display:grid;grid-template-columns:auto 90px auto;align-items:center;gap:12px;padding:16px 0;border-top:1px solid #d9bd8533;border-bottom:1px solid #d9bd8533}.captcha-box>label{grid-column:1/-1}.captcha-question{color:var(--gold);font-size:19px}.captcha-box input{max-width:90px;text-align:center}.captcha-refresh{font-size:12px;text-decoration:underline;text-underline-offset:4px;color:var(--muted)}.captcha-refresh:disabled{opacity:.4}@media(max-width:680px){.captcha-box{grid-template-columns:1fr 80px}.captcha-refresh{grid-column:1/-1;justify-self:start}.captcha-question{font-size:17px}}
/* Keep the menu and backdrop in a stable viewport; scroll only section content. */
html{height:100%;overflow:hidden}body{height:100svh;min-height:0;overflow:hidden;display:grid;grid-template-rows:clamp(44px,9svh,90px) minmax(0,1fr) clamp(40px,7svh,76px)}header{height:100%;min-height:0}.layout{width:100%;height:100%;min-height:0;padding-top:0;overflow:hidden}.sidebar{height:100%;min-height:0;display:flex;flex-direction:column;padding-top:12px;padding-bottom:12px}.sidebar>a{display:block;min-height:40px;max-height:230px;flex:1 1 auto}.logo{height:100%;width:100%;max-width:430px;object-fit:contain;object-position:left center;margin:0}.tagline{flex:none;margin-top:16px;margin-bottom:clamp(12px,3svh,32px)}nav{flex:none;gap:8px}nav a{font-size:clamp(18px,min(2.25vw,3.4svh),32px);padding:6px 0 8px}.side-note{flex:none;margin-top:20px;margin-bottom:0}#content{height:100%;min-height:0;overflow:hidden}.panel{height:calc(100% - 40px);max-height:none;margin-top:20px;margin-bottom:20px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;overflow-anchor:none}.home{height:100%;min-height:0;overflow:auto;padding-top:30px;padding-bottom:55px;overscroll-behavior:contain}.home-text{margin-top:clamp(0px,8svh,100px)}footer{height:100%;min-height:0;padding-top:0;padding-bottom:0}.forest{width:100vw;height:100svh}.page{animation:section-fade .25s ease-out}@keyframes section-fade{from{opacity:0}to{opacity:1}}@media(max-height:750px) and (min-width:681px){.side-note{display:none}.tagline{margin-top:12px;margin-bottom:18px}}@media(max-height:520px) and (min-width:681px){.sidebar{padding-top:4px;padding-bottom:4px}.tagline{margin-top:6px;margin-bottom:8px;font-size:10px;letter-spacing:3px}nav{gap:2px}nav a{padding:3px 0;font-size:18px}.panel{margin-top:8px;margin-bottom:8px;height:calc(100% - 16px)}}@media(max-width:680px){body{grid-template-rows:45px minmax(0,1fr) 48px}.layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.sidebar{height:auto;display:block;padding:5px 5% 12px}.sidebar>a{height:80px;min-height:0;max-height:none}.logo{height:80px;width:160px;margin:0 auto;object-position:center}.tagline{margin:8px 0 10px;font-size:9px;letter-spacing:3px}nav{gap:2px 18px}nav a{font-size:13px;padding:6px 0;letter-spacing:.5px}.panel{height:calc(100% - 12px);margin:0 5% 12px;padding:20px}.home{min-height:0;padding:20px 9% 50px}.home-text{margin-top:0}.home h1{font-size:30px}.scene-caption{position:static;display:block;margin-top:20px}.home{display:block}footer{gap:4px 12px;flex-wrap:nowrap;font-size:8px}.footer-dot{padding:0 3px}footer>a{font-size:10px}.languages{gap:7px;font-size:12px}}@media(max-height:600px) and (max-width:680px){.sidebar>a,.logo{height:48px}.tagline{margin:4px 0 6px}.sidebar{padding-bottom:6px}body{grid-template-rows:35px minmax(0,1fr) 36px}}

/* Alpha download uses the existing menu palette and panel scrolling. */
.alpha-download{display:inline-block;text-decoration:none;margin-top:8px}.alpha-release{margin:24px 0;padding:20px;border:1px solid #d9bd8538;background:#080b0d66}.alpha-release h3{margin:0}.home-text>.fine{margin:10px 0 18px}.home{overflow-y:auto;overscroll-behavior:contain}

/* Background plate follows the game menu camera. Eyes share its coordinates. */
.forest{inset:auto;left:50%;top:50%;width:max(100vw,177.69svh);height:max(100svh,56.28vw);transform:translate(-50%,-50%);background:url('assets/menu-scene-clean.png') center/100% 100% no-repeat}
.shade{background:linear-gradient(90deg,#03060770,transparent 48%),linear-gradient(0deg,#05080999,transparent 26%,transparent 85%,#05080933)}
.distant-eyes{position:absolute;left:47%;top:64%;display:flex;gap:8px;transform:translate(-50%,-50%);filter:drop-shadow(0 0 5px #e41208);opacity:.9}
.distant-eyes i{display:block;width:3px;height:2px;border-radius:60%;background:#ff6250;box-shadow:0 0 3px 1px #ff291d,0 0 10px 4px #b5090955}
/* Three independent soft banks cross the lower forest; no layout movement. */
.mist{inset:0;background:none;opacity:1;animation:none;overflow:hidden;contain:strict}
.mist span{position:absolute;left:-30%;width:160%;height:65%;bottom:-12%;will-change:transform;filter:blur(22px);background:radial-gradient(ellipse at 16% 60%,#a3bec94d,transparent 30%),radial-gradient(ellipse at 52% 48%,#b0c6ce59,transparent 27%),radial-gradient(ellipse at 85% 68%,#8eabb54d,transparent 32%);animation:fog-near 28s ease-in-out infinite alternate;animation-delay:-9s}
.mist span:nth-child(2){bottom:10%;height:49%;opacity:.65;filter:blur(16px);background:radial-gradient(ellipse at 25% 65%,#9ab5bf66,transparent 28%),radial-gradient(ellipse at 72% 48%,#93b0bd55,transparent 32%);animation:fog-far 39s ease-in-out infinite alternate;animation-delay:-18s}
.mist span:nth-child(3){bottom:-26%;height:65%;opacity:.65;filter:blur(30px);animation-duration:22s;animation-delay:-17s;animation-direction:alternate-reverse}
@keyframes fog-near{from{transform:translate3d(-13%,2%,0) scaleY(.9)}to{transform:translate3d(13%,-5%,0) scaleY(1.1)}}
@keyframes fog-far{from{transform:translate3d(10%,3%,0)}to{transform:translate3d(-12%,-4%,0)}}
body.still .mist span,body.still .dust{animation-play-state:paused}
@media(max-width:680px){.mist span{filter:blur(16px)}.distant-eyes{gap:7px}}
@media(prefers-reduced-motion:reduce){.mist span{animation:none!important}}

.admin-panel{width:min(900px,90vw);margin:12px auto;height:calc(100% - 24px)}.admin-page h1{color:var(--gold);font-size:clamp(24px,4vw,34px);font-weight:400}

.remake-progress{margin:38px 0}.remake-progress>h2{font-size:clamp(26px,3vw,36px);margin:12px 0}.remake-timeline{margin:32px 0}.remake-step{display:grid;grid-template-columns:40px minmax(0,1fr);gap:20px;position:relative;padding:0 0 30px}.remake-step:not(:last-child):before{content:'';position:absolute;left:18px;top:35px;bottom:8px;width:1px;background:linear-gradient(#d9bd8566,#d9bd851a)}.step-number{border:1px solid #d9bd8566;width:36px;height:36px;display:grid;place-items:center;color:var(--gold);font-size:12px;background:#101515}.remake-step h3,.remake-legacy h3{font-size:22px;font-weight:400;color:var(--gold);margin:2px 0 12px;line-height:1.35}.remake-step p{font-size:15px;margin:0;color:#b8b9b1}.remake-legacy{padding:24px;border-top:1px solid #d9bd8555;border-bottom:1px solid #d9bd8526;background:#d9bd8506}.remake-legacy p{font-size:14px;margin-bottom:0}@media(max-width:680px){.remake-step{grid-template-columns:30px minmax(0,1fr);gap:13px}.step-number{width:28px;height:28px;font-size:10px}.remake-step:not(:last-child):before{left:13px;top:32px}.remake-step h3{font-size:21px}.remake-legacy{padding:18px}}

.release-update{margin:28px 0}.release-update ul{padding-left:20px;font-size:14px;line-height:1.8}.release-update li+li{margin-top:12px}.alpha-release h3{overflow-wrap:anywhere}

/* Download choices */
.download-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:440px;margin:22px 0 12px}
.download-option{display:flex;flex-direction:column;gap:7px;padding:15px 17px;border:1px solid #d9bd8555;background:#080b0d88;text-decoration:none;transition:background .2s,border-color .2s}
.download-option:hover{background:#d9bd8518;border-color:var(--gold)}
.download-option:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.download-name{display:flex;justify-content:space-between;color:var(--gold);font-size:16px;line-height:1.4}
.download-detail{color:var(--muted);font-size:11px;line-height:1.5}
@media(max-width:420px){.download-actions{grid-template-columns:1fr}.download-option{padding:12px 14px;gap:4px}}
