/* Shared glass surfaces and motion. Existing layouts and image ratios stay intact. */
:root{--glass-edge:rgba(231,255,233,.19);--glass-light:rgba(231,255,233,.08);--glass-shadow:0 18px 55px #0004,inset 0 1px 0 #ffffffe0;--glass-ease:cubic-bezier(.22,1,.36,1)}
html{scroll-padding-top:130px}
body{isolation:isolate;background-color:#0d1310}
body::before{content:"";position:fixed;inset:-15%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 8% 15%,#90bc5620,transparent 43%),radial-gradient(ellipse at 90% 55%,#24aaa21a,transparent 40%),radial-gradient(ellipse at 35% 90%,#657b4420,transparent 40%);animation:glass-atmosphere 28s ease-in-out infinite alternate}
body>header,body>.site-header{position:sticky;top:16px;z-index:40;width:calc(100% - 44px);max-width:1440px;height:auto;min-height:76px;margin:18px auto 0;padding:14px 26px;gap:22px;border:1px solid var(--glass-edge);border-radius:24px;background:linear-gradient(135deg,#ffffff0e,#ffffff03),#18231cda;box-shadow:0 12px 40px #0003,inset 0 1px 0 #ffffff21;transition:background .35s,border-color .35s,box-shadow .35s;-webkit-backdrop-filter:blur(22px) saturate(155%);backdrop-filter:blur(22px) saturate(155%)}
body.is-scrolled>header{background:linear-gradient(135deg,#ffffff12,#ffffff03),#152019de;border-color:#e7ffe93d;box-shadow:0 12px 45px #0006,inset 0 1px 0 #ffffff2b}
body>header nav{gap:24px}
body>header nav>a:not(.nav-download){position:relative;padding-block:8px}
body>header nav>a:not(.nav-download)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#c4f36b;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--glass-ease)}
body>header nav>a:hover::after,body>header nav>a:focus-visible::after{transform:scaleX(1)}
.reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#91be58,#d2ffa0,#62dfd3);transform:scaleX(0);transform-origin:left;z-index:70;pointer-events:none;box-shadow:0 0 12px #c4f36b55}
:is(.button,.account-trigger,.review-account-trigger,.language-switch,.nav-download,.round-link){position:relative;isolation:isolate;border-radius:999px;border:1px solid #e7ffe935;background:linear-gradient(135deg,#ffffff19,#ffffff05),#1f3024bf;box-shadow:inset 0 1px 0 #ffffff38,0 6px 20px #0002;overflow:hidden;transition:transform .35s var(--glass-ease),box-shadow .35s,border-color .35s,background .35s;-webkit-backdrop-filter:blur(14px) saturate(150%);backdrop-filter:blur(14px) saturate(150%)}
:is(.button-green,.button.primary,.button.secondary){background:radial-gradient(ellipse at 35% 0,#e9ffba2c,transparent 70%),linear-gradient(135deg,#b7ef6c30,#b7ef6c14),#1c2c1dd9;color:#e7ffca;border-color:#d1ff915c;box-shadow:inset 0 1px 0 #e8ffc46b,0 8px 30px #7fad2b0e}
:is(.button,.account-trigger,.review-account-trigger,.language-switch,.nav-download,.round-link):hover{transform:translateY(-3px);border-color:#d8ffae8f;background-color:#344c29;box-shadow:inset 0 1px 0 #ffffff70,0 12px 32px #0004,0 0 25px #c4f36b10}
:is(.button,.account-trigger,.review-account-trigger,.language-switch,.nav-download,.round-link):active{transform:translateY(0) scale(.975)}
:is(.button,.account-trigger,.review-account-trigger,.language-switch,.nav-download,.round-link):focus-visible{outline:2px solid #d1ffa6;outline-offset:5px}
.button:disabled{transform:none;box-shadow:none}
.glass-ripple{position:absolute;width:24px;height:24px;margin:-12px 0 0 -12px;border-radius:50%;background:#edffdc45;pointer-events:none;z-index:-1;animation:glass-ripple .65s ease-out forwards}
.hero-poster{border-radius:32px;border:1px solid var(--glass-edge);box-shadow:0 25px 65px #0005,inset 0 1px 0 #ffffff26;transition:box-shadow .5s,border-color .5s;overflow:hidden}
.hero-poster>img{transform:scale(1.035) translate3d(var(--hero-x,0px),var(--hero-y,0px),0);transition:transform .8s var(--glass-ease)}
.hero-poster:hover{border-color:#d4f5ae66;box-shadow:0 30px 70px #0006,0 0 55px #badf5e12}
.hero-poster .poster-title{padding:23px;border:1px solid #ffffff26;border-radius:22px;background:linear-gradient(135deg,#ffffff12,#ffffff02),#11201985;-webkit-backdrop-filter:blur(18px) saturate(125%);backdrop-filter:blur(18px) saturate(125%)}
.hero-poster .poster-caption{bottom:16px}
.hero-poster .pill,.art-arrow,.art-label{border:1px solid #f0ffe13b;background:#15241894;box-shadow:inset 0 1px 0 #ffffff26;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;color:#e3ffc4}
.art-arrow{border-radius:50%}.art-label{padding:5px 12px;bottom:16px;left:16px}
.released-game,.next-game,.release40-cards article,.release40-downloads article,.download-card,.release40-rules,.release40-validation{border:1px solid var(--glass-edge);border-radius:28px;background:radial-gradient(450px circle at var(--glass-x,50%) var(--glass-y,0%),#d2ffad0e,transparent 65%),linear-gradient(135deg,#ffffff09,#ffffff02),#182019bd;box-shadow:inset 0 1px 0 #ffffff17,0 15px 50px #0002;transition:border-color .4s,box-shadow .4s,translate .5s var(--glass-ease)}
.released-game{padding:14px}.released-game .game-details{padding:24px 13px 14px}.released-game .game-art{border-radius:18px}
.next-game{overflow:hidden}.next-art{border-radius:26px 26px 0 0}.next-details{background:#10201530}
.game-art>img,.image-button img{transition:transform .8s var(--glass-ease),filter .8s}
.game-art:hover>img,.image-button:hover img{transform:scale(1.045);filter:saturate(1.08)}
.gallery .image-button{border-radius:22px;border:1px solid var(--glass-edge)}
.gallery figcaption{padding:14px 4px 0}
.novel-hero,.release40-hero{margin:20px 22px 0;border-radius:30px;border:1px solid var(--glass-edge)}
.release40-hero>img{filter:brightness(.45) saturate(.9)}
.release-scene,.next-page-art{border-radius:24px;border:1px solid var(--glass-edge)}
.release-facts{border-radius:20px;border:1px solid var(--glass-edge);background:#c9ffb507;overflow:hidden}.release-facts>div{border-color:#ffffff12}
.game-tags>span,.tags>span,.quick-label,.version{border-radius:999px;background:#b7db9309;border-color:#d6ecbb26}
.game-tags{row-gap:8px}.game-actions{border-color:#e4ffd521}
.editorial-strip{background:linear-gradient(90deg,#bbf367cc,#d6ffa7f0,#8fcf91d9);border-block:1px solid #ebffd957;box-shadow:0 0 50px #b5e96a0b}
.about-section,.world{background:linear-gradient(135deg,#d5ffa008,#74cec006);border-color:#deffd01c}
.account-dialog,dialog#lightbox{border:1px solid #edffe14d;border-radius:28px;background:linear-gradient(135deg,#ffffff12,#ffffff04),#152019ef;box-shadow:inset 0 1px 0 #ffffff3b,0 32px 120px #0009;-webkit-backdrop-filter:blur(28px) saturate(145%);backdrop-filter:blur(28px) saturate(145%)}
.account-dialog::backdrop,dialog#lightbox::backdrop{background:#06100dd4;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}
.account-dialog[open],dialog#lightbox[open]{animation:glass-dialog .38s var(--glass-ease)}
.account-profile,.review-summary,.review-form,.review-item{border-radius:18px}
.review-form :is(textarea,input){border-radius:14px}.review-form textarea{background:#0c170ec9}
.orbital-art{animation:glass-orbit 50s linear infinite}
.motion-ready [data-glass-reveal]{opacity:0;transform:translate3d(0,26px,0);transition:opacity .8s var(--glass-ease),transform .8s var(--glass-ease),translate .5s var(--glass-ease),border-color .4s,box-shadow .4s;transition-delay:var(--reveal-delay,0ms)}
.motion-ready [data-glass-reveal].is-revealed{opacity:1;transform:translateZ(0)}
.glass-hero-enter{animation:glass-enter .95s var(--glass-ease) both;animation-delay:var(--hero-delay,0ms)}
@keyframes glass-enter{from{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:translateZ(0)}}
@keyframes glass-dialog{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes glass-ripple{from{opacity:.7;transform:scale(.3)}to{opacity:0;transform:scale(16)}}
@keyframes glass-atmosphere{to{transform:translate3d(3%,-3%,0) scale(1.05)}}
@keyframes glass-orbit{to{rotate:360deg}}
@media(hover:hover) and (pointer:fine){.released-game:hover,.next-game:hover,.release40-cards article:hover,.release40-downloads article:hover{border-color:#d3f4b449;box-shadow:inset 0 1px 0 #ffffff2c,0 24px 65px #0004;translate:0 -4px}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body>header,body>.site-header{background:#19251a}.hero-poster .poster-title{background:#132118f2}.account-dialog{background:#172219}}
@media(max-width:1100px){body>header nav{gap:16px}.hero-poster .poster-title{padding:18px}.poster-title strong{font-size:clamp(38px,5vw,68px)}}
@media(max-width:800px){body>header,body>.site-header{top:10px;width:calc(100% - 24px);margin-top:12px;padding:12px 18px;border-radius:22px;gap:12px;min-height:68px}.hero-poster{border-radius:26px}.hero-poster .poster-title{left:5%;right:5%}.poster-title strong{font-size:62px}.novel-hero,.release40-hero{margin:14px 12px 0;border-radius:24px}.released-game{padding:10px}.released-game .game-details{padding:20px 10px 12px}.released-game,.next-game{border-radius:24px}.next-art{border-radius:22px 0 0 22px}body::before,.orbital-art{animation:none}}
@media(max-width:520px){body>header,body>.site-header{gap:10px;padding:11px 13px;min-height:62px;top:8px;border-radius:19px}body>header nav{gap:8px}.account-trigger{padding:8px 10px}.brand-note{display:none}.language-switch{padding:7px 9px}.hero-poster .poster-title{padding:16px}.poster-title strong{font-size:clamp(37px,11.5vw,58px)}.hero-poster .poster-description{font-size:12px}.poster-kicker{font-size:7px}.hero-poster{min-height:430px}.next-art{border-radius:22px 22px 0 0}.button{gap:20px}.release40-cards article,.release40-downloads article,.release40-rules,.release40-validation{padding:23px}.account-dialog{border-radius:24px}.gallery .image-button{border-radius:17px}}
@media(max-width:520px){body>.site-header{flex-wrap:nowrap;gap:8px}.site-header .wordmark{font-size:16px;gap:7px}.site-header .wordmark .brand-logo-frame{width:60px;height:25px}.site-header .wordmark .brand-logo-frame>img{transform:translateY(-3.4px)}.site-header .wordmark small{font-size:6px;letter-spacing:.8px}.site-header .language-switch{margin-left:0}.site-header .account-trigger{font-size:10px}.site-header .person-icon{display:none}.site-header nav{margin-left:auto;flex-shrink:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body::before,.orbital-art,.glass-hero-enter,.account-dialog[open],dialog#lightbox[open]{animation:none!important}.motion-ready [data-glass-reveal]{opacity:1!important;transform:none!important;transition:none!important}*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}.hero-poster>img{transform:none}.glass-ripple{display:none}.reading-progress{display:none}}
@media(prefers-reduced-transparency:reduce){body>header,body>.site-header,.account-dialog,.hero-poster .poster-title{background:#172319;backdrop-filter:none;-webkit-backdrop-filter:none}.released-game,.next-game,.release40-cards article,.release40-downloads article{background:#19251b}}
@media(forced-colors:active){body::before,.reading-progress{display:none}:is(.button,.account-trigger,.review-account-trigger,.language-switch,.released-game,.next-game,header){border:1px solid CanvasText!important;box-shadow:none!important}}
