/* Hallmark · pre-emit critique: P5 H4 E5 S5 R4 V5 */
/* Hallmark · genre: atmospheric · macrostructure: Narrative Workflow · theme: Midnight · enrichment: first-party game artwork · nav: N5 · footer: Ft5
 * audience: visual-novel players · use: safely reach the download entry · tone: cinematic atmospheric
 * contrast: pass · responsive: verified at 320 / 375 / 414 / 768 */
@import url("../../tokens.css");
*{box-sizing:border-box}html,body{margin:0;min-width:0;overflow-x:clip;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body)}html{scroll-behavior:smooth}body{line-height:1.7;padding-bottom:4.8rem;background-image:radial-gradient(circle at 8% 14%,var(--color-accent-soft),transparent 27rem),radial-gradient(circle at 91% 58%,rgba(111,95,176,.15),transparent 24rem)}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.wrap{width:min(100% - 2rem,74rem);margin-inline:auto}.topbar{position:fixed;z-index:20;top:max(var(--space-md),env(safe-area-inset-top));left:50%;transform:translateX(-50%);width:min(calc(100% - 2rem),45rem)}.nav-pill{display:flex;align-items:center;gap:var(--space-sm);padding:.45rem .5rem .45rem .75rem;background:rgba(17,18,28,.88);border:var(--rule-thin) solid var(--color-rule);border-radius:999px;backdrop-filter:blur(14px) saturate(120%);box-shadow:0 8px 24px -12px rgba(0,0,0,.55)}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{width:2.3rem;height:2.3rem;object-fit:cover;border-radius:50%}.nav-links{display:flex;justify-content:center;gap:clamp(.5rem,1.5vw,1rem);flex:1;min-width:0}.nav-links a{color:var(--color-muted);font-size:var(--text-sm);white-space:nowrap}.nav-links a:hover{color:var(--color-ink)}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.75rem 1.1rem;border:0;border-radius:999px;background:var(--color-accent);color:var(--color-ink);font-weight:800;white-space:nowrap;overflow:hidden;transition:transform var(--dur-short) var(--ease-out),background var(--dur-short) var(--ease-out),box-shadow var(--dur-short) var(--ease-out)}.button:hover{transform:translateY(-2px);background:var(--color-accent-strong);box-shadow:0 0 2rem var(--color-accent-soft)}.button:active{transform:translateY(1px)}.button-small{min-height:2.45rem;padding:.5rem .85rem;font-size:var(--text-sm)}.button-glow:after{content:"";position:absolute;inset:-140% -30%;background:linear-gradient(110deg,transparent 42%,rgba(255,255,255,.58) 50%,transparent 58%);animation:shine 3.8s var(--ease-out) infinite}.button-quiet{background:transparent;border:var(--rule-thin) solid var(--color-rule)}.button-quiet:hover{background:var(--color-paper-3)}.menu-button{display:none;margin-left:auto;border:0;background:transparent;color:var(--color-ink);min-height:2.4rem}.hero{position:relative;min-height:min(48rem,100dvh);display:grid;align-items:end;isolation:isolate;overflow:clip}.hero-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;image-rendering:auto;filter:saturate(.95) contrast(1.05) scale(1.07)}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--color-overlay),rgba(4,4,9,.5) 58%,rgba(4,4,9,.32)),linear-gradient(0deg,var(--color-paper),transparent 50%)}.hero-content{padding:clamp(8rem,18vh,12rem) 0 var(--space-3xl)}.eyebrow,.kicker{margin:0 0 var(--space-sm);color:var(--color-accent-strong);font-size:var(--text-sm);font-weight:800;letter-spacing:.1em}.hero h1,.page-head h1{max-width:12ch;margin:0;font-size:var(--text-display);line-height:1.02;letter-spacing:-.06em;font-weight:900;overflow-wrap:anywhere}.hero h1 span{display:block;margin-top:var(--space-sm);font-size:clamp(1.1rem,2.4vw,1.8rem);letter-spacing:.08em}.lead{max-width:42rem;margin:var(--space-lg) 0;font-size:var(--text-lg);color:var(--color-ink)}.actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.fine{max-width:43rem;margin:var(--space-lg) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.signal{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--color-rule)}.signal div{padding:var(--space-lg);background:var(--color-paper-2)}.signal strong,.signal span{display:block}.signal strong{font-size:var(--text-xl)}.signal span{color:var(--color-muted);font-size:var(--text-sm)}.section{padding-block:var(--space-3xl)}.section h2,.download-band h2,.guide-copy h2{max-width:19ch;margin:0;font-size:var(--text-2xl);line-height:1.1;letter-spacing:-.04em}.intro{max-width:46rem;color:var(--color-muted)}.info{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--space-3xl);align-items:start}.info p{font-size:var(--text-lg)}.fact-list{margin:0;background:var(--color-paper-2);border-radius:var(--radius-md);padding:var(--space-lg)}.fact-list div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-sm);padding:var(--space-md) 0;border-bottom:var(--rule-thin) solid var(--color-rule)}.fact-list div:last-child{border:0}.fact-list dt{color:var(--color-muted)}.fact-list dd{margin:0;font-weight:700}.workflow{display:grid;gap:0;margin:var(--space-2xl) 0 0;padding:0;list-style:none}.workflow li{display:grid;grid-template-columns:5rem minmax(0,1fr);gap:var(--space-lg);padding:var(--space-xl) 0;border-top:2px solid var(--color-rule)}.workflow span{color:var(--color-accent-strong);font-size:var(--text-xl);font-weight:900}.workflow h3{margin:0;font-size:var(--text-xl)}.workflow p{margin:var(--space-xs) 0 0;color:var(--color-muted)}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm);margin-top:var(--space-2xl)}.feature-grid article,.guide-cards article,.requirements article{padding:var(--space-lg);border-radius:var(--radius-md);background:var(--color-paper-2);border:var(--rule-thin) solid transparent;transition:transform var(--dur-short) var(--ease-out),border-color var(--dur-short) var(--ease-out),box-shadow var(--dur-short) var(--ease-out)}.feature-grid article:hover,.guide-cards article:hover{transform:translateY(-4px);border-color:var(--color-accent);box-shadow:0 1rem 2.5rem rgba(0,0,0,.23)}.feature-grid b{font-size:var(--text-lg)}.feature-grid p,.guide-cards p{margin:var(--space-sm) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm);margin-top:var(--space-2xl)}.shot{min-width:0;padding:0;border:0;border-radius:var(--radius-sm);overflow:clip;background:var(--color-paper-3);cursor:zoom-in}.shot img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:transform var(--dur-medium) var(--ease-out),filter var(--dur-medium) var(--ease-out)}.shot:hover img{transform:scale(1.045);filter:brightness(1.12)}.text-link{display:inline-flex;min-height:2.75rem;align-items:center;margin-top:var(--space-lg);color:var(--color-accent-strong);font-weight:800;white-space:nowrap}.download-band{padding:var(--space-3xl) 1rem;background:var(--color-paper-3)}.download-band>.wrap{display:flex;justify-content:space-between;align-items:center;gap:var(--space-xl)}.download-band p{color:var(--color-muted)}.timeline{display:grid;gap:var(--space-sm);margin-top:var(--space-xl)}.timeline article{padding:var(--space-lg);background:var(--color-paper-2);border-left:3px solid var(--color-accent)}.timeline time{color:var(--color-accent-strong);font-weight:800}.timeline h3{margin:var(--space-xs) 0}.timeline p{margin:0;color:var(--color-muted)}.faq{margin-top:var(--space-xl);border-top:var(--rule-thin) solid var(--color-rule)}.faq details{border-bottom:var(--rule-thin) solid var(--color-rule)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:3.9rem;cursor:pointer;font-weight:800;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--color-accent-strong);font-size:1.4rem}.faq details[open] summary span{transform:rotate(45deg)}.faq p{max-width:55rem;margin:0 0 var(--space-lg);color:var(--color-muted)}.final{text-align:left}.final p{color:var(--color-muted)}.footer{padding:var(--space-3xl) 0 var(--space-xl);background:#05060b}.footer-line{max-width:29ch;margin:0 0 var(--space-xl);font-size:clamp(1.8rem,4vw,3.3rem);font-weight:900;line-height:1.1;letter-spacing:-.045em}.footer-meta{display:flex;align-items:flex-start;gap:var(--space-lg);padding-top:var(--space-lg);border-top:var(--rule-thin) solid var(--color-rule)}.footer-meta>img{width:3.3rem;height:3.3rem;object-fit:cover;border-radius:50%}.footer-meta p{color:var(--color-muted);font-size:var(--text-sm)}.footer-links{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-lg);font-size:var(--text-sm)}.footer-links a:hover{color:var(--color-accent-strong)}.sticky-cta{position:fixed;z-index:19;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:var(--space-md);padding:.55rem max(var(--space-md),calc((100% - 74rem)/2));background:rgba(8,9,15,.94);border-top:var(--rule-thin) solid var(--color-rule);backdrop-filter:blur(12px)}.sticky-cta span{font-size:var(--text-sm);color:var(--color-muted)}.page-main{padding-top:9rem;min-height:80vh}.page-head{max-width:50rem}.page-head h1{max-width:14ch;font-size:var(--text-2xl)}.page-head p{color:var(--color-muted);font-size:var(--text-lg)}.compact{padding-top:var(--space-xl)}.tabs{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.tabs button{min-height:2.5rem;padding:.4rem .9rem;background:transparent;border:var(--rule-thin) solid var(--color-rule);border-radius:999px;color:var(--color-muted);cursor:pointer}.tabs button.active{background:var(--color-accent);color:var(--color-ink);border-color:var(--color-accent)}.full{grid-template-columns:repeat(4,minmax(0,1fr))}.download-band.mini{margin:var(--space-3xl) 0}.platform-card,.requirements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);margin-top:var(--space-2xl)}.platform-card article{padding:var(--space-xl);background:var(--color-paper-2);border-radius:var(--radius-md)}.platform-card h2{font-size:var(--text-xl)}.badge{margin:0;color:var(--color-accent-strong);font-size:var(--text-sm);font-weight:800}.muted-card{opacity:.67}.articles-row,.article-links{display:flex;flex-wrap:wrap;gap:var(--space-sm);padding-block:var(--space-xl)}.articles-row a,.article-links a{padding:.55rem .85rem;border-radius:999px;background:var(--color-paper-2);color:var(--color-accent-strong);font-weight:800;font-size:var(--text-sm)}.guide-toc{position:sticky;z-index:2;top:5rem;display:flex;flex-wrap:wrap;gap:var(--space-sm);margin:var(--space-xl) 0;padding:var(--space-sm);background:rgba(17,18,28,.92);border-radius:var(--radius-sm);backdrop-filter:blur(12px)}.guide-toc a{font-size:var(--text-sm);font-weight:800;color:var(--color-muted)}.guide-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);margin:var(--space-2xl) 0}.guide-cards h3{margin:0;font-size:var(--text-xl)}.card-number{color:var(--color-accent-strong)!important;font-weight:900}.guide-copy{max-width:52rem;padding-block:var(--space-xl);border-top:2px solid var(--color-rule)}.guide-copy h2{font-size:var(--text-xl)}.guide-copy p,.guide-copy li{color:var(--color-muted)}.guide-copy strong{color:var(--color-ink)}.guide-copy table{width:100%;margin:var(--space-lg) 0;border-collapse:collapse}.guide-copy th,.guide-copy td{padding:var(--space-sm);border-bottom:var(--rule-thin) solid var(--color-rule);text-align:left}.answer{font-size:var(--text-lg)!important;color:var(--color-ink)!important}.lightbox{width:min(94vw,70rem);padding:var(--space-md);color:var(--color-ink);background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md)}.lightbox::backdrop{background:rgba(0,0,0,.84)}.lightbox img{width:100%;max-height:72dvh;object-fit:contain}.lightbox .close,.lightbox .prev,.lightbox .next{margin:.25rem;padding:.5rem .75rem;border:0;border-radius:999px;background:var(--color-paper-3);color:var(--color-ink);cursor:pointer}.lightbox p{margin:.5rem;color:var(--color-muted)}@keyframes shine{0%,72%{transform:translateX(-60%)}100%{transform:translateX(65%)}}@media(max-width:767px){.nav-links{display:none}.nav-pill.is-open .nav-links{position:absolute;top:calc(100% + .6rem);left:0;right:0;display:grid;gap:.15rem;padding:.6rem;background:var(--color-paper-2);border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-md)}.nav-pill.is-open .nav-links a{padding:.6rem}.menu-button{display:block}.hero{min-height:43rem}.hero-art{object-position:center}.info{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.feature-grid,.gallery-grid,.full{grid-template-columns:repeat(2,minmax(0,1fr))}.download-band>.wrap{display:grid}.footer-meta{display:grid}.sticky-cta span{display:none}.page-main{padding-top:7rem}.platform-card,.requirements,.guide-cards{grid-template-columns:minmax(0,1fr)}}@media(max-width:430px){.wrap{width:min(100% - 1.25rem,74rem)}.nav-pill{padding-left:.5rem}.nav-pill .button{padding:.5rem .65rem}.signal{grid-template-columns:minmax(0,1fr)}.feature-grid,.gallery-grid,.full{grid-template-columns:minmax(0,1fr)}.workflow li{grid-template-columns:3.6rem minmax(0,1fr);gap:var(--space-sm)}.section{padding-block:var(--space-2xl)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
