:root{--bg:#f5f5f3;--fg:#101010;--soft:#1010106b;--line:#10101024;--faint:#1010100b;--panel:#101010;--panel-fg:#f5f5f3;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=night]{--bg:#080808;--fg:#efefec;--soft:#efefec6b;--line:#efefec24;--faint:#efefec0b;--panel:#efefec;--panel-fg:#080808;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);width:100%;height:100%;margin:0;overflow:hidden}body{color:var(--fg);font-family:var(--font-geist-sans), Arial, sans-serif}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}.screen{isolation:isolate;background:radial-gradient(circle at 50% 47%, var(--faint), transparent 32%), var(--bg);width:100%;height:100svh;min-height:480px;animation:.75s cubic-bezier(.2,.8,.2,1) both page-in;position:relative;overflow:hidden}.space{z-index:-1;opacity:.62;pointer-events:none;position:absolute;inset:0}.star{background:var(--fg);opacity:.36;border-radius:50%;width:2px;height:2px;animation:4.8s ease-in-out infinite star-pulse;position:absolute}.star--1{top:24%;left:11%}.star--2{animation-delay:-1.4s;top:72%;left:26%}.star--3{animation-delay:-2.8s;top:16%;left:42%}.star--4{animation-delay:-.8s;top:82%;left:58%}.star--5{animation-delay:-3.2s;top:28%;left:72%}.star--6{animation-delay:-1.9s;top:64%;left:88%}.star--7{animation-delay:-.3s;top:12%;left:82%}.star--8{animation-delay:-3.8s;top:88%;left:16%}.site-header{z-index:10;justify-content:space-between;align-items:center;width:100%;padding:clamp(28px,3.4vw,52px) clamp(30px,4.5vw,78px);display:flex;position:absolute;top:0;left:0}.brand{letter-spacing:.1em;font-size:clamp(2.2rem,2.65vw,3.15rem);font-weight:650}.header-actions,.nav{align-items:center;display:flex}.header-actions{gap:clamp(18px,2vw,32px)}.nav{gap:12px}.nav-link{color:var(--soft);letter-spacing:.12em;border:1px solid #0000;border-radius:999px;padding:17px 23px;font-size:clamp(.88rem,.92vw,1.08rem);font-weight:560;transition:color .22s,border-color .22s,background .22s;position:relative}.nav-link:hover,.nav-link:focus-visible{color:var(--fg);border-color:var(--line)}.nav-link.is-active{color:var(--bg);background:var(--fg)}.github-link{color:var(--soft);letter-spacing:.14em;align-items:center;gap:10px;padding:13px 4px;font-size:clamp(.82rem,.86vw,1rem);font-weight:580;transition:color .22s;display:flex}.github-link i{font-size:1rem;font-style:normal;transition:transform .22s}.github-link:hover,.github-link:focus-visible{color:var(--fg)}.github-link:hover i,.github-link:focus-visible i{transform:translate(2px,-2px)}.github-mark{background:currentColor;width:27px;height:27px;display:block;-webkit-mask:url(/github-mark.svg) 50%/contain no-repeat;mask:url(/github-mark.svg) 50%/contain no-repeat}.theme-toggle{cursor:pointer;background:0 0;border:0;width:154px;height:54px;padding:0;display:block}.theme-track{border:1px solid var(--line);background:var(--faint);border-radius:999px;grid-template-columns:1fr 1fr;align-items:center;width:100%;height:100%;transition:border-color .22s;display:grid;position:relative}.theme-knob{z-index:0;background:var(--fg);border-radius:999px;width:71px;height:46px;transition:left .34s cubic-bezier(.22,1,.36,1),background .22s;position:absolute;top:3px;left:3px}:root[data-theme=night] .theme-knob{left:79px}.theme-day,.theme-night{z-index:1;letter-spacing:.1em;font-size:.72rem;font-weight:620;transition:color .22s;position:relative}.theme-day{color:var(--bg)}.theme-night,:root[data-theme=night] .theme-day{color:var(--soft)}:root[data-theme=night] .theme-night{color:var(--bg)}.theme-toggle:hover .theme-track,.theme-toggle:focus-visible .theme-track{border-color:var(--fg)}.home-stage,.section-stage{place-items:center;display:grid;position:absolute;inset:0}.home-greeting{z-index:2;letter-spacing:-.075em;text-shadow:0 2px 24px color-mix(in srgb, var(--bg) 70%, transparent);margin:0;font-size:clamp(6.4rem,12vw,12rem);font-weight:430;line-height:.8;position:absolute;top:50%;left:clamp(24px,8vw,132px);transform:translateY(-50%)}.cinematic-solar-system{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.cinematic-solar-system:after{z-index:1;content:"";background:linear-gradient(90deg, color-mix(in srgb, var(--bg) 94%, transparent) 0%, color-mix(in srgb, var(--bg) 62%, transparent) 18%, color-mix(in srgb, var(--bg) 12%, transparent) 39%, transparent 56%), linear-gradient(180deg, color-mix(in srgb, var(--bg) 68%, transparent) 0%, transparent 26%);position:absolute;inset:0}.screen--home .space{opacity:0}.cinematic-solar-canvas{z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.screen--home .header-actions{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:999px;padding:5px}.section-stage{padding:92px clamp(24px,8vw,132px) 44px}.section-stage h1{letter-spacing:-.075em;margin:0;font-size:clamp(3.4rem,10vw,10rem);font-weight:430;line-height:.78;position:absolute;bottom:clamp(42px,7vh,80px);left:clamp(24px,8vw,132px)}.games-stage h1{font-size:clamp(3rem,7.1vw,7.4rem);line-height:.82}.games-stage h1 span{display:block}.games-stage h1 span:last-child{color:var(--soft)}.section-index{color:var(--soft);font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;font-size:.6rem;position:absolute;top:50%;left:clamp(24px,8vw,132px)}.research-visual{aspect-ratio:1;width:min(42vw,520px);animation:1.1s cubic-bezier(.16,1,.3,1) .15s both visual-arrive;position:absolute;top:50%;right:clamp(26px,10vw,170px);transform:translateY(-50%)}.research-ring,.research-axis,.research-point{position:absolute}.research-ring{border:1px solid var(--line);border-radius:50%}.research-ring--one{inset:5%}.research-ring--two{inset:29%}.research-axis--x{background:var(--line);width:100%;height:1px;top:50%;left:0}.research-axis--y{background:var(--line);width:1px;height:100%;top:0;left:50%}.research-point{background:var(--fg);border-radius:50%;width:5px;height:5px}.research-point--one{top:4.5%;left:49.5%}.research-point--two{top:49.5%;right:4.5%}.research-point--three{bottom:27.5%;left:27.5%}.game-visual{aspect-ratio:1;border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,1fr);width:min(34vw,410px);animation:1.1s cubic-bezier(.16,1,.3,1) .15s both visual-arrive;display:grid;position:absolute;top:50%;right:clamp(26px,11vw,184px);transform:translateY(-50%)rotate(8deg)}.game-visual span{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;transition:background .4s}.game-visual span.is-lit{background:var(--fg);opacity:.84;animation:3s ease-in-out infinite alternate cell-pulse}.game-cursor{border:1px solid var(--fg);border-radius:50%;width:9px;height:9px;animation:4.8s ease-in-out infinite cursor-move;position:absolute;top:39%;left:65%}.mod-showcase{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 84%, transparent);width:min(52vw,720px);box-shadow:0 28px 80px color-mix(in srgb, var(--fg) 7%, transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-radius:28px;transition:border-color .28s,box-shadow .28s;animation:1s cubic-bezier(.16,1,.3,1) .12s both mod-arrive;position:absolute;top:50%;right:clamp(26px,8vw,132px);overflow:hidden;transform:translateY(-50%)}.mod-showcase:hover,.mod-showcase:focus-within{border-color:color-mix(in srgb, var(--fg) 42%, transparent);box-shadow:0 36px 100px color-mix(in srgb, var(--fg) 11%, transparent)}.mod-trigger{width:100%;min-height:236px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:clamp(132px,13vw,184px) 1fr 54px;align-items:center;gap:clamp(18px,2.3vw,34px);padding:clamp(20px,2.4vw,34px);display:grid}.mod-logo-frame{aspect-ratio:1;border:1px solid var(--line);border-radius:50%;place-items:center;width:100%;display:grid;position:relative}.mod-logo-frame:before,.mod-logo-frame:after{border:1px solid var(--line);content:"";pointer-events:none;border-radius:50%;position:absolute}.mod-logo-frame:before{inset:-9px}.mod-logo-frame:after{border-color:#ffffff2e;inset:11px}.mod-logo{object-fit:cover;border-radius:50%;width:calc(100% - 12px);height:calc(100% - 12px);transition:transform .5s cubic-bezier(.16,1,.3,1);display:block}.mod-showcase:hover .mod-logo{transform:rotate(-4deg)scale(1.035)}.mod-copy{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.mod-kicker,.mod-copy>span:last-child,.mod-destination-index,.mod-destination small{font-family:var(--font-geist-mono), monospace;letter-spacing:.14em}.mod-kicker{color:var(--soft);margin-bottom:15px;font-size:.63rem}.mod-copy strong{letter-spacing:-.07em;white-space:nowrap;font-size:clamp(2.5rem,4.8vw,5rem);font-weight:430;line-height:.78}.mod-copy>span:last-child{color:var(--soft);margin-top:18px;font-size:clamp(.62rem,.74vw,.78rem)}.mod-toggle-mark{border:1px solid var(--line);border-radius:50%;width:52px;height:52px;transition:color .26s,background .26s,transform .4s cubic-bezier(.16,1,.3,1);display:block;position:relative}.mod-toggle-mark i{background:currentColor;width:16px;height:1px;transition:transform .32s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mod-toggle-mark i:last-child{transform:translate(-50%,-50%)rotate(90deg)}.mod-showcase.is-open .mod-toggle-mark{color:var(--bg);background:var(--fg);transform:rotate(180deg)}.mod-showcase.is-open .mod-toggle-mark i:last-child{transform:translate(-50%,-50%)rotate(0)}.mod-destinations{opacity:0;border-top:1px solid #0000;grid-template-columns:repeat(2,1fr);max-height:0;transition:max-height .52s cubic-bezier(.16,1,.3,1),opacity .22s,border-color .26s;display:grid;overflow:hidden}.mod-showcase.is-open .mod-destinations{border-color:var(--line);opacity:1;max-height:124px}.mod-destination{min-height:112px;color:inherit;grid-template-columns:24px 40px 1fr auto;align-items:center;gap:14px;padding:24px;transition:color .24s,background .24s;display:grid;position:relative}.mod-destination+.mod-destination{border-left:1px solid var(--line)}.mod-destination-index{color:var(--soft);font-size:.58rem}.mod-platform-logo{place-items:center;width:40px;height:40px;display:grid;overflow:hidden}.mod-platform-logo img{object-fit:contain;width:100%;height:100%;display:block}.mod-platform-logo--github{background:#fff;border-radius:50%;padding:7px}.mod-platform-logo--steam{border-radius:50%}.mod-destination-copy{flex-direction:column;gap:5px;min-width:0;display:flex}.mod-destination-copy strong{letter-spacing:.08em;font-size:clamp(.84rem,1.08vw,1.05rem);font-weight:560}.mod-destination-copy small{color:var(--soft);font-size:.54rem}.mod-destination>i{grid-column:4;align-self:center;font-style:normal;transition:transform .24s}.mod-destination:hover,.mod-destination:focus-visible{color:var(--bg);background:var(--fg);outline:none}.mod-destination:hover>span,.mod-destination:hover small,.mod-destination:focus-visible>span,.mod-destination:focus-visible small{color:color-mix(in srgb, var(--bg) 62%, transparent)}.mod-destination:hover>i,.mod-destination:focus-visible>i{transform:translate(3px,-3px)}.transition-panel{z-index:100;color:var(--panel-fg);background:var(--panel);clip-path:inset(0 0 0 100%);pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.transition-panel span{letter-spacing:.2em;opacity:0;font-size:.72rem;font-weight:650}.is-leaving .transition-panel{animation:.48s cubic-bezier(.77,0,.18,1) forwards cover}.is-leaving .transition-panel span{animation:.25s .2s forwards mark-in}@keyframes page-in{0%{opacity:0;transform:scale(1.012)}to{opacity:1;transform:scale(1)}}@keyframes cover{0%{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}@keyframes mark-in{to{opacity:1}}@keyframes visual-arrive{0%{opacity:0;transform:translateY(-50%)scale(.82)rotate(-4deg)}to{opacity:1}}@keyframes mod-arrive{0%{opacity:0;transform:translateY(-44%)scale(.94)}to{opacity:1;transform:translateY(-50%)scale(1)}}@keyframes star-pulse{0%,to{opacity:.14;transform:scale(.8)}50%{opacity:.56;transform:scale(1.35)}}@keyframes cell-pulse{0%{opacity:.22}to{opacity:.88}}@keyframes cursor-move{0%,to{transform:translate(0)}35%{transform:translate(-52px,22px)}68%{transform:translate(18px,54px)}}@media (width<=720px){.site-header{align-items:flex-start}.header-actions{gap:9px}.nav{gap:4px}.github-link .github-label{display:none}.github-link{padding:8px 2px;font-size:.76rem}.nav-link{padding:11px 12px;font-size:.68rem}.theme-toggle{width:112px;height:42px}.theme-knob{width:51px;height:34px}:root[data-theme=night] .theme-knob{left:57px}.theme-day,.theme-night{font-size:.54rem}.home-greeting{font-size:clamp(5rem,22vw,8rem);top:47%;left:24px}.section-index{top:32%}.research-visual,.game-visual{width:min(66vw,360px);top:45%;right:50%;transform:translate(50%,-50%)}.mod-showcase{border-radius:22px;width:min(88vw,560px);top:47%;right:50%;transform:translate(50%,-50%)}.mod-trigger{grid-template-columns:108px 1fr 42px;gap:18px;min-height:154px;padding:20px}.mod-copy strong{font-size:clamp(2.25rem,10vw,3.6rem)}.mod-kicker{margin-bottom:10px}.mod-copy>span:last-child{margin-top:12px}.mod-toggle-mark{width:42px;height:42px}.mod-destination{grid-template-columns:18px 34px 1fr auto;gap:9px;min-height:92px;padding:18px 14px}.mod-platform-logo{width:34px;height:34px}.mod-showcase.is-open .mod-destinations{max-height:104px}.section-stage h1{bottom:clamp(44px,9vh,76px)}@keyframes visual-arrive{0%{opacity:0;transform:translate(50%,-50%)scale(.82)rotate(-4deg)}to{opacity:1}}@keyframes mod-arrive{0%{opacity:0;transform:translate(50%,-44%)scale(.94)}to{opacity:1;transform:translate(50%,-50%)scale(1)}}}@media (width<=470px){.nav-link:first-child{display:none}.site-header{padding:24px 20px}.header-actions{gap:10px}.theme-toggle{width:94px}:root[data-theme=night] .theme-knob{left:47px}.theme-knob{width:43px}.github-link{display:flex}.brand{font-size:1.5rem}.home-greeting{top:43%}.section-stage h1{left:20px}.mod-showcase{width:calc(100vw - 32px);top:46%}.mod-trigger{grid-template-columns:82px 1fr 36px;gap:13px;min-height:132px;padding:16px}.mod-toggle-mark{width:36px;height:36px}.mod-kicker{font-size:.52rem}.mod-copy strong{font-size:clamp(1.85rem,9.5vw,2.6rem)}.mod-copy>span:last-child{font-size:.52rem}.mod-destination{grid-template-columns:16px 30px 1fr auto;gap:3px 8px;min-height:82px;padding:14px 12px}.mod-platform-logo{width:30px;height:30px}.mod-platform-logo--github{padding:5px}.mod-destination-copy strong{font-size:.68rem}.mod-destination-copy small{display:none}.mod-showcase.is-open .mod-destinations{max-height:84px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
