@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Space+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@500;700;800&family=Noto+Sans+JP:wght@700;900&display=swap";
:root{--paper-bg:#f4f4f0;--panel-bg:#fff;--ink:#09090b;--ink-light:#52525b;--border-ink:#000;--shadow-ink:#000;--accent:#a855f7;--accent-glow:#a855f733;--halftone:#00000014;--selection-bg:#000;--font-display:"Bebas Neue", sans-serif;--font-body:"Space Grotesk", sans-serif;--font-mono:"JetBrains Mono", monospace;--font-jp:"Noto Sans JP", sans-serif;--max-w:1100px;--border-w:3px;--shadow-solid:6px 6px 0px var(--shadow-ink);--shadow-hover:10px 10px 0px var(--shadow-ink);--shadow-active:0px 0px 0px var(--shadow-ink);--ease-brutal:cubic-bezier(.16, 1, .3, 1)}[data-theme=dark]{--paper-bg:#09090b;--panel-bg:#121214;--ink:#fff;--ink-light:#a1a1aa;--border-ink:#fff;--shadow-ink:#a855f7;--accent:#c084fc;--accent-glow:#c084fc26;--halftone:#ffffff0d;--selection-bg:#a855f7}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--paper-bg);scroll-padding-top:90px}body{font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased;background-color:#0000;line-height:1.6;transition:background-color .3s,color .3s;overflow-x:hidden}a{color:inherit;text-decoration:none}::selection{background:var(--selection-bg);color:var(--paper-bg)}.manga-paper{z-index:-3;background-color:var(--paper-bg);background-image:radial-gradient(var(--halftone) 1.5px, transparent 1.5px), repeating-linear-gradient(0deg, transparent 0px, transparent 3px, #00000003 3px, #00000003 4px);background-size:16px 16px,100% 4px;transition:background-color .3s;position:fixed;inset:0}.jp-watermark{font-family:var(--font-jp);color:#0000;-webkit-text-stroke:1px var(--border-ink);opacity:.05;z-index:-2;pointer-events:none;white-space:nowrap;font-size:20vw;font-weight:900;line-height:1;position:fixed;transform:translateZ(0)}[data-theme=dark] .jp-watermark{opacity:.1;-webkit-text-stroke:1px var(--accent)}.brutal-panel{background:var(--panel-bg);border:var(--border-w) solid var(--border-ink);box-shadow:var(--shadow-solid);transition:transform .2s var(--ease-brutal), box-shadow .2s var(--ease-brutal), background-color .3s, border-color .3s;position:relative}.brutal-panel:hover{box-shadow:var(--shadow-hover);transform:translate(-4px,-4px)}.brutal-panel-static{background:var(--panel-bg);border:var(--border-w) solid var(--border-ink);box-shadow:var(--shadow-solid);position:relative}.app-icon{object-fit:cover;background:var(--paper-bg);width:36px;height:36px;box-shadow:3px 3px 0 var(--shadow-ink);transition:transform .2s var(--ease-brutal), box-shadow .2s var(--ease-brutal);flex-shrink:0;display:block}[data-theme=dark] .app-icon{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--accent)}.app-icon:hover{box-shadow:5px 5px 0 var(--shadow-ink);transform:translate(-2px,-2px)}.footer-brand .app-icon{width:28px;height:28px}.action-lines{z-index:0;pointer-events:none;background:repeating-conic-gradient(from 0deg at 50% 50%, transparent 0deg 12deg, var(--halftone) 12deg 12.5deg);opacity:.6;animation:60s linear infinite actionSpin;position:absolute;inset:-10%}[data-theme=dark] .action-lines{opacity:.4}@keyframes actionSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.manga-sfx{font-family:var(--font-jp);color:var(--ink);opacity:.14;pointer-events:none;z-index:0;transform-origin:50%;font-weight:900;line-height:1;animation:6s ease-in-out infinite sfxFloat;position:absolute}[data-theme=dark] .manga-sfx{opacity:.12;color:var(--accent)}@keyframes sfxFloat{0%,to{transform:translate(0)rotate(-6deg)}50%{transform:translate(10px,-14px)rotate(4deg)}}.sound-ticker{border-top:var(--border-w) solid var(--border-ink);border-bottom:var(--border-w) solid var(--border-ink);background:var(--panel-bg);z-index:10;padding:20px 0;position:relative;overflow:hidden}.ticker-track{gap:48px;width:max-content;animation:32s linear infinite tickerScroll;display:flex}.ticker-track:hover{animation-play-state:paused}@keyframes tickerScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.ticker-item{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;color:var(--ink);align-items:center;gap:12px;font-size:18px;font-weight:800;display:flex}.ticker-item .jp{font-family:var(--font-jp);color:var(--accent);font-weight:900}.reveal{opacity:0;transition:opacity .6s var(--ease-brutal), transform .6s var(--ease-brutal);will-change:transform, opacity;transition-delay:calc(var(--reveal-i,0) * 70ms);transform:translateY(40px)}.reveal[data-reveal=left]{opacity:0;transform:translate(-60px)}.reveal[data-reveal=right]{opacity:0;transform:translate(60px)}.reveal[data-reveal=scale]{opacity:0;transform:scale(.92)}.reveal.active{opacity:1;transform:translateY(0)}.reveal.active[data-reveal=left],.reveal.active[data-reveal=right]{transform:translate(0)}.reveal.active[data-reveal=scale]{transform:scale(1)}.sound-item{cursor:pointer;overflow:hidden}.sound-item .s-jp-large{transition:transform .3s var(--ease-brutal)}.sound-item:hover .s-jp-large{animation:mangaPop .4s var(--ease-brutal)}@keyframes mangaPop{0%{transform:scale(1)}35%{transform:scale(1.35)rotate(-4deg)}60%{transform:scale(.9)rotate(2deg)}to{transform:scale(1)}}.section-title{position:relative}.section-title em{color:var(--accent);font-style:normal;display:inline-block;position:relative}.section-title em:after{content:"";background:var(--accent);opacity:.25;transform-origin:0;height:4px;transition:transform .45s var(--ease-brutal);position:absolute;top:50%;left:-6px;right:-6px;transform:scaleX(0)}.reveal.active .section-title em:after{transform:scaleX(1)}.scroll-progress{background:var(--accent);z-index:200;width:0%;height:6px;box-shadow:0 0 12px var(--accent-glow);position:fixed;top:0;left:0}header{z-index:100;background:var(--paper-bg);border-bottom:var(--border-w) solid var(--border-ink);justify-content:space-between;align-items:center;padding:16px 5vw;transition:background-color .3s,border-color .3s;display:flex;position:fixed;top:0;left:0;right:0}.logo{font-family:var(--font-display);letter-spacing:.05em;color:var(--ink);align-items:center;gap:12px;font-size:32px;display:flex}.logo-mark{background:var(--ink);color:var(--paper-bg);width:36px;height:36px;font-family:var(--font-jp);justify-content:center;align-items:center;padding-bottom:2px;font-size:20px;line-height:1;display:flex}nav{align-items:center;gap:40px;margin-left:auto;display:flex}nav a{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-light);transition:color .2s, background-color .2s, border-color .2s, box-shadow .2s, transform .15s var(--ease-brutal);background:0 0;border:2px solid #0000;padding:10px 16px;font-size:14px;font-weight:700;position:relative}nav a .nav-jp{font-family:var(--font-jp);color:var(--accent);margin-right:8px;font-size:15px;font-weight:900}nav a:hover{color:var(--paper-bg);background:var(--ink);border-color:var(--border-ink);box-shadow:4px 4px 0 var(--shadow-ink);transform:translate(-2px,-2px)}nav a:hover .nav-jp{color:var(--accent)}.header-actions{align-items:center;gap:24px;margin-left:48px;display:flex}.theme-toggle{background:var(--panel-bg);border:var(--border-w) solid var(--border-ink);cursor:pointer;width:48px;height:28px;box-shadow:3px 3px 0 var(--shadow-ink);transition:all .2s var(--ease-brutal);position:relative}.theme-toggle:hover{box-shadow:5px 5px 0 var(--shadow-ink);transform:translate(-2px,-2px)}.theme-toggle:active{box-shadow:0 0 0 var(--shadow-ink);transform:translate(2px,2px)}.theme-thumb{background:var(--accent);border:2px solid var(--border-ink);color:#fff;justify-content:center;align-items:center;width:28px;height:28px;transition:transform .4s cubic-bezier(.68,-.55,.265,1.55);display:flex;position:absolute;top:-3px;left:-3px}.theme-thumb svg{width:14px;height:14px}.icon-moon{display:none}[data-theme=dark] .theme-thumb{background:var(--accent);color:var(--paper-bg);transform:translate(20px)}[data-theme=dark] .icon-sun{display:none}[data-theme=dark] .icon-moon{display:block}section{z-index:10;padding:100px 5vw;position:relative}.container{max-width:var(--max-w);margin:0 auto}.section-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.02em;margin-bottom:16px;font-size:clamp(48px,6vw,80px);line-height:1}.section-desc{color:var(--ink-light);max-width:600px;margin-bottom:48px;font-size:18px;font-weight:500}#hero{align-items:center;min-height:90vh;padding-top:140px;display:flex}.hero-grid{z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:60px;display:grid;position:relative}.hero-headline{font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;margin:24px 0;font-size:clamp(64px,8vw,120px);line-height:.9}.hero-headline em{color:var(--accent);font-style:normal}.hero-lead{color:var(--ink-light);max-width:500px;margin-bottom:40px;font-size:20px;font-weight:500}.hero-actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.btn-mega{background:var(--ink);color:var(--paper-bg);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;border:var(--border-w) solid var(--border-ink);box-shadow:var(--shadow-solid);transition:all .2s var(--ease-brutal);justify-content:center;align-items:center;gap:12px;padding:16px 32px;font-size:14px;font-weight:800;display:inline-flex}.btn-mega:hover{box-shadow:var(--shadow-hover);background:var(--accent);color:var(--paper-bg);transform:translate(-4px,-4px)}.btn-mega:active{box-shadow:var(--shadow-active);transform:translate(6px,6px)}.btn-outline{background:var(--panel-bg);color:var(--ink);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;border:var(--border-w) solid var(--border-ink);box-shadow:var(--shadow-solid);transition:all .2s var(--ease-brutal);justify-content:center;align-items:center;gap:12px;padding:16px 32px;font-size:14px;font-weight:800;display:inline-flex}.btn-outline:hover{box-shadow:var(--shadow-hover);transform:translate(-4px,-4px)}.btn-outline:active{box-shadow:var(--shadow-active);transform:translate(6px,6px)}.hero-visual{perspective:1000px}.console-card{background:var(--panel-bg);border:var(--border-w) solid var(--border-ink);box-shadow:12px 12px 0 var(--shadow-ink);padding:32px}.port-row{border:2px solid var(--border-ink);background:var(--paper-bg);justify-content:space-between;align-items:center;margin-bottom:16px;padding:20px;display:flex}.port-row:last-child{margin-bottom:0}.port-left{align-items:center;gap:16px;display:flex}.port-icon{width:32px;height:32px;color:var(--ink);justify-content:center;align-items:center;display:flex}.port-row h3{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;font-size:16px;font-weight:800}.sfx-tag{font-family:var(--font-jp);color:var(--accent);letter-spacing:.05em;font-size:14px;font-weight:900}#features{border-top:var(--border-w) solid var(--border-ink);background:var(--panel-bg)}.features-grid{grid-template-columns:repeat(12,1fr);gap:24px;display:grid}.feat-card{flex-direction:column;padding:40px;display:flex}.feat-card.large{grid-column:span 8}.feat-card.small{grid-column:span 4}.feat-icon{width:48px;height:48px;color:var(--ink);margin-bottom:24px}.feat-card h3{font-family:var(--font-display);letter-spacing:.02em;text-transform:uppercase;margin-bottom:12px;font-size:32px}.feat-card p{color:var(--ink-light);font-size:16px;font-weight:500}.sound-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;display:grid}.sound-item{text-align:center;flex-direction:column;align-items:center;padding:32px 24px;display:flex}.sound-item:hover{background:var(--ink);border-color:var(--border-ink)}.sound-item:hover .s-jp-large{color:var(--paper-bg);text-shadow:4px 4px 0 var(--accent)}.sound-item:hover .s-name{color:var(--paper-bg)}.sound-item:hover .s-desc{color:var(--paper-bg);opacity:.7}.s-jp-large{font-family:var(--font-jp);color:var(--ink);margin-bottom:16px;font-size:64px;font-weight:900;line-height:1;transition:color .2s,text-shadow .2s}.s-name{font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink);margin-bottom:4px;font-size:16px;font-weight:800;transition:color .2s;display:block}.s-desc{font-family:var(--font-body);color:var(--ink-light);font-size:14px;font-weight:500;transition:color .2s}#download{border-top:var(--border-w) solid var(--border-ink)}.giant-cta{background:var(--accent);text-align:center;flex-direction:column;align-items:center;padding:80px 48px;display:flex}[data-theme=dark] .giant-cta{background:var(--panel-bg);border-color:var(--accent);box-shadow:var(--shadow-solid)}.giant-cta h2{font-family:var(--font-display);color:var(--paper-bg);text-shadow:6px 6px 0 var(--shadow-ink);margin-bottom:32px;font-size:clamp(48px,8vw,100px);line-height:.9}[data-theme=dark] .giant-cta h2{color:var(--ink);text-shadow:6px 6px 0 var(--accent)}.cta-meta{font-family:var(--font-mono);color:var(--paper-bg);font-size:14px;font-weight:700}[data-theme=dark] .cta-meta{color:var(--ink-light)}footer{border-top:var(--border-w) solid var(--border-ink);background:var(--panel-bg);padding:64px 5vw 40px;position:relative;overflow:hidden}footer:before{content:"";background:repeating-linear-gradient(0deg, transparent 0 14px, var(--halftone) 14px 15px), repeating-linear-gradient(90deg, transparent 0 14px, var(--halftone) 14px 15px);opacity:.5;pointer-events:none;position:absolute;inset:0}footer:after{content:"";border-top:4px solid var(--accent);border-left:4px solid var(--accent);pointer-events:none;width:48px;height:48px;position:absolute;top:16px;left:16px}.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:64px;display:grid;position:relative}.footer-brand .logo{margin-bottom:16px;font-size:24px}.footer-brand .logo-mark{width:28px;height:28px;font-size:16px}.footer-brand p{color:var(--ink-light);background:var(--paper-bg);border:var(--border-w) solid var(--border-ink);max-width:320px;box-shadow:4px 4px 0 var(--shadow-ink);padding:12px 14px;font-size:15px;font-weight:500}.footer-brand .logo .app-icon{margin-right:10px}.footer-brand .footer-jp{font-family:var(--font-jp);color:var(--accent);border:2px solid var(--accent);margin-top:12px;padding:2px 8px;font-size:13px;font-weight:900;display:inline-block}.footer-col{position:relative}.footer-col h4{font-family:var(--font-mono);text-transform:uppercase;color:var(--ink);align-items:center;gap:8px;margin-bottom:20px;font-size:14px;font-weight:800;display:flex}.footer-col h4:before{content:attr(data-jp);font-family:var(--font-jp);color:var(--accent);font-size:16px;font-weight:900}.footer-col a{color:var(--ink-light);border:2px solid #0000;margin-bottom:12px;padding:6px 10px;font-size:14px;font-weight:600;transition:color .2s,transform .2s,border-color .2s,box-shadow .2s;display:block}.footer-col a:hover{color:var(--paper-bg);background:var(--ink);border-color:var(--border-ink);box-shadow:3px 3px 0 var(--shadow-ink);transform:translate(-2px,-2px)}.footer-col a.footer-jp{font-family:var(--font-jp);color:var(--accent);border:none;padding:2px 8px;font-weight:900;display:inline-block}.footer-col a.footer-jp:hover{color:var(--ink);box-shadow:none;background:0 0}[data-theme=dark] .footer-col a.footer-jp:hover{color:var(--ink)}.footer-bottom{border-top:2px dashed var(--border-ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:48px;padding-top:20px;display:flex;position:relative}.footer-bottom .footer-tagline{font-family:var(--font-jp);color:var(--ink-light);font-size:15px;font-weight:900}.footer-bottom .footer-stamp{font-family:var(--font-mono);letter-spacing:.15em;color:var(--accent);border:3px solid var(--accent);padding:4px 12px;font-size:12px;font-weight:800;transform:rotate(-4deg)}@media (max-width:1024px){.hero-grid{grid-template-columns:1fr;gap:64px}.feat-card.large,.feat-card.small{grid-column:span 12}.footer-grid{grid-template-columns:1fr;gap:48px}}@media (max-width:768px){header{padding:16px 5vw}nav{display:none}.header-actions{margin-left:auto}section{padding:80px 5vw}.hero-actions{flex-direction:column;width:100%}.btn-mega,.btn-outline{width:100%}.jp-watermark{display:none}.giant-cta{padding:64px 24px}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}html{scroll-behavior:auto}.brutal-panel:hover,.brutal-panel-static:hover,.btn-mega:hover,.btn-outline:hover{transform:none}}
