.landing{position:relative;display:flex;flex-direction:column;height:100%;background:var(--bg);overflow:hidden}.grid-bg{position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:80px 80px;pointer-events:none;z-index:0}.noise{position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");opacity:.5;pointer-events:none;z-index:0}.top-bar{position:relative;z-index:10;display:flex;align-items:center;gap:8px;padding:28px 40px;animation:fade-down .8s ease both}.logo-mark{font-family:Inter,sans-serif;font-size:11px;font-weight:600;letter-spacing:.25em;color:var(--text-secondary);text-transform:uppercase}.top-bar-dot{width:4px;height:4px;border-radius:50%;background:var(--text-secondary);opacity:.5}.hero{position:relative;z-index:10;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px 80px;text-align:center}.hero-inner{display:flex;flex-direction:column;align-items:center;gap:20px}.eyebrow{font-size:11px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--text-secondary);animation:fade-up .9s ease .1s both}.headline{font-family:Playfair Display,Georgia,serif;font-size:clamp(64px,14vw,160px);font-weight:900;line-height:.95;letter-spacing:-.02em;color:var(--text-primary);animation:fade-up 1s ease .25s both}.headline em{font-style:italic;color:var(--accent);transition:color .5s ease;cursor:default}.pie-group{cursor:default}.period{color:var(--accent);opacity:.7;transition:color .5s ease,opacity .5s ease}.period[style]{opacity:1}.enter-btn{position:relative;background:none;border:none;padding:0;font-family:Inter,sans-serif;font-size:11px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--text-secondary);cursor:pointer;animation:fade-up 1s ease .45s both;transition:color .3s ease}.enter-btn:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:1px;background:var(--text-secondary);transform:scaleX(0);transform-origin:left center;transition:transform .35s ease,background .3s ease}.enter-btn:hover{color:var(--text-primary)}.enter-btn:hover:after{transform:scaleX(1);background:var(--text-primary)}.bottom-rule{position:absolute;bottom:40px;left:50%;transform:translate(-50%);width:1px;height:60px;background:linear-gradient(to bottom,rgba(255,255,255,.15),transparent);animation:fade-up 1s ease .7s both}.footer{position:relative;z-index:10;display:flex;align-items:center;justify-content:center;gap:10px;padding:24px 40px;font-size:11px;font-weight:400;color:var(--text-secondary);letter-spacing:.04em;border-top:1px solid var(--border);animation:fade-up .9s ease .6s both}.footer-dot{opacity:.4}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-down{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.top-bar,.footer{padding-left:24px;padding-right:24px}}.game{--g-bg: #f8f7f2;--g-text: #111111;--g-muted: #888888;--g-border: rgba(0, 0, 0, .07);--g-panel: transparent;--g-radius: 0px;--g-shadow: none;--g-transition: none;--g-bar-height: 2px;--g-bar-color: rgba(0, 0, 0, .35);--g-gap: 20px}.game.stage-place{--g-gap: 24px}.game.stage-choice{--g-gap: 26px}.game.stage-structure{--g-gap: 28px;--g-border: rgba(0, 0, 0, .09);--g-panel: rgba(0, 0, 0, .022)}.game.stage-style{--g-gap: 32px;--g-border: rgba(0, 0, 0, .1);--g-panel: rgba(0, 0, 0, .022);--g-radius: 4px;--g-shadow: 0 1px 3px rgba(0, 0, 0, .05);--g-bar-height: 3px;--g-bar-color: rgba(0, 0, 0, .5)}.game.stage-memory{--g-bg: #f5f3ed;--g-gap: 32px;--g-border: rgba(0, 0, 0, .1);--g-panel: rgba(0, 0, 0, .022);--g-radius: 4px;--g-shadow: 0 1px 3px rgba(0, 0, 0, .05);--g-bar-height: 3px;--g-bar-color: rgba(0, 0, 0, .5)}.game.stage-noise{--g-bg: #f3f1ea;--g-gap: 32px;--g-border: rgba(0, 0, 0, .12);--g-panel: rgba(0, 0, 0, .03);--g-radius: 4px;--g-shadow: 0 1px 5px rgba(0, 0, 0, .07);--g-bar-height: 4px;--g-bar-color: rgba(0, 0, 0, .6)}.game{position:relative;width:100%;height:100%;background:var(--g-bg);color:var(--g-text);overflow-y:auto;overflow-x:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.game-back{position:fixed;top:24px;left:24px;z-index:100;display:flex;align-items:center;background:none;border:none;padding:8px 0;font-family:inherit;font-size:10px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:#1113;cursor:pointer;min-height:44px;min-width:44px;transition:color .3s ease}.game-back:hover{color:#1111118c}.game-back:focus-visible{outline:1px solid var(--g-text);outline-offset:4px;border-radius:1px;color:#1111118c}.game-inner{display:flex;flex-direction:column;min-height:100%;max-width:520px;margin:0 auto;padding:88px 28px 80px;gap:var(--g-gap)}.game.intro-active .game-inner{justify-content:center;min-height:unset;padding-top:max(80px,28vh);gap:16px}.presence-text{display:flex;flex-direction:column;gap:10px}.presence-line{margin:0;font-size:clamp(22px,5.5vw,34px);font-weight:300;letter-spacing:-.02em;line-height:1.3;color:var(--g-text);opacity:0;animation:line-appear 1.1s ease forwards}@keyframes line-appear{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.pie-header{display:flex;flex-direction:column;gap:3px}.pie-header-name{font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--g-muted)}.pie-header-rule{font-size:10px;font-weight:300;letter-spacing:.03em;color:var(--g-muted);opacity:.7}.game.stage-style .pie-header-name,.game.stage-memory .pie-header-name{letter-spacing:.24em}.game.stage-noise .pie-header-name{color:var(--g-text);letter-spacing:.26em;opacity:.85}.game.stage-noise .pie-header-rule{opacity:.6}.resource-hero{display:flex;flex-direction:column;gap:6px}.resource-hero-value{font-size:clamp(60px,16vw,96px);font-weight:200;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums;color:var(--g-text)}.resource-hero-label{font-size:10px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--g-muted)}.resource-full{display:flex;flex-direction:column;gap:8px}.game.stage-structure .resource-full,.game.stage-style .resource-full,.game.stage-memory .resource-full,.game.stage-noise .resource-full{background:var(--g-panel);border:1px solid var(--g-border);border-radius:var(--g-radius);padding:14px 16px;box-shadow:var(--g-shadow)}.resource-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.resource-label{font-size:10px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--g-muted)}.resource-value{font-size:15px;font-weight:400;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--g-text)}.resource-rate{font-size:10px;font-weight:300;font-variant-numeric:normal;letter-spacing:.04em;color:var(--g-muted)}.pie-message{margin:0;font-size:12px;font-weight:300;font-style:italic;letter-spacing:.02em;line-height:1.7;color:var(--g-muted)}.game.stage-style .pie-message,.game.stage-memory .pie-message,.game.stage-noise .pie-message{font-size:13px}.progress-bar{width:100%;height:var(--g-bar-height);background:#0000000f;border-radius:99px;overflow:hidden;margin-top:4px}.progress-bar-fill{height:100%;background:var(--g-bar-color);border-radius:99px;transition:width var(--g-transition, none)}.game.soft-response .progress-bar-fill{transition:width .35s ease}.upgrade-list{display:flex;flex-direction:column;gap:0}.upgrade-list.expanded{gap:0}.game.stage-structure .upgrade-list,.game.stage-style .upgrade-list,.game.stage-memory .upgrade-list,.game.stage-noise .upgrade-list{gap:8px}.upgrade-card{padding:14px 0;border-top:1px solid var(--g-border)}.upgrade-card:first-child{border-top:none;padding-top:0}.game.stage-structure .upgrade-card,.game.stage-style .upgrade-card,.game.stage-memory .upgrade-card,.game.stage-noise .upgrade-card{border:1px solid var(--g-border);border-radius:var(--g-radius);padding:14px 16px;background:var(--g-panel);box-shadow:var(--g-shadow)}.game.stage-structure .upgrade-card:first-child,.game.stage-style .upgrade-card:first-child,.game.stage-memory .upgrade-card:first-child,.game.stage-noise .upgrade-card:first-child{padding-top:14px}.game.stage-style .upgrade-card.affordable,.game.stage-memory .upgrade-card.affordable,.game.stage-noise .upgrade-card.affordable{border-color:#0000002e}.game.stage-noise .upgrade-card.affordable{border-color:#00000040;box-shadow:0 2px 8px #00000012}.game.soft-response .upgrade-card{transition:border-color .2s ease,box-shadow .2s ease}.upgrade-card.teaser{opacity:.35;cursor:default}.game.stage-noise .upgrade-card.teaser{opacity:.5}.upgrade-card-header{margin-bottom:4px}.upgrade-card-title{font-size:13px;font-weight:500;letter-spacing:0;color:var(--g-text)}.upgrade-card-locked{font-size:10px;font-weight:300;letter-spacing:.08em;color:var(--g-muted);margin-left:8px}.upgrade-card-description{font-size:12px;font-weight:300;color:var(--g-muted);line-height:1.6;margin:0 0 10px;letter-spacing:.01em}.upgrade-card-pieline{font-size:11px;font-style:italic;color:var(--g-muted);margin:6px 0 0;opacity:.6;line-height:1.5}.upgrade-card-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.upgrade-card-costs{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}.upgrade-card-cost-item{display:flex;flex-direction:column}.cost-text{font-size:11px;font-weight:300;color:var(--g-muted);letter-spacing:.03em}.upgrade-btn{flex-shrink:0;background:none;border:none;padding:4px 0;font-family:inherit;font-size:11px;font-weight:400;letter-spacing:.08em;color:var(--g-muted);cursor:pointer;min-height:44px;min-width:44px;text-align:right;transition:color .15s ease,transform .1s ease}.upgrade-btn:focus-visible{outline:1px solid var(--g-text);outline-offset:3px}.upgrade-btn:disabled{cursor:default}.upgrade-card.affordable .upgrade-btn{color:var(--g-text);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:#1111114d}.upgrade-card.affordable .upgrade-btn:hover{text-decoration-color:var(--g-text)}.upgrade-card.affordable .upgrade-btn:active{transform:scale(.96)}.game.stage-noise .upgrade-card.affordable .upgrade-btn{font-weight:500;text-decoration-color:#11111180}.game.soft-response .upgrade-btn{transition:color .2s ease,text-decoration-color .2s ease,transform .1s ease}.game-action{display:flex;align-items:center;gap:14px}.attention-btn{background:none;border:1px solid var(--g-border);border-radius:var(--g-radius);padding:0 18px;font-family:inherit;font-size:11px;font-weight:400;letter-spacing:.09em;text-transform:lowercase;color:var(--g-text);cursor:pointer;height:40px;transition:transform .1s ease}.attention-btn:focus-visible{outline:1px solid var(--g-text);outline-offset:3px}.attention-btn:hover{background:var(--g-text);color:var(--g-bg)}.attention-btn:active{transform:scale(.97)}.game.soft-response .attention-btn{transition:color .2s ease,border-color .2s ease,background .2s ease,transform .1s ease}.game-action-note{font-size:10px;font-weight:300;color:var(--g-muted);letter-spacing:.04em}.conversion-panel{display:flex;flex-direction:column;gap:12px}.game.stage-structure .conversion-panel,.game.stage-style .conversion-panel,.game.stage-memory .conversion-panel,.game.stage-noise .conversion-panel{background:var(--g-panel);border:1px solid var(--g-border);border-radius:var(--g-radius);padding:14px 16px;box-shadow:var(--g-shadow);gap:14px}.conversion-item{display:flex;align-items:center;gap:14px}.conversion-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.conversion-title{font-size:12px;font-weight:500;letter-spacing:0;color:var(--g-text)}.conversion-rate{font-size:10px;font-weight:300;color:var(--g-muted);letter-spacing:.02em}.conversion-subtext{font-size:10px;font-style:italic;color:var(--g-muted);opacity:.75}.conversion-btn{flex-shrink:0;background:none;border:1px solid var(--g-border);border-radius:var(--g-radius);padding:0 14px;font-family:inherit;font-size:10px;font-weight:400;letter-spacing:.1em;text-transform:lowercase;color:var(--g-muted);cursor:pointer;height:36px;min-width:72px;transition:transform .1s ease}.conversion-btn:focus-visible{outline:1px solid var(--g-text);outline-offset:3px}.conversion-btn:disabled{cursor:default;opacity:.35}.conversion-btn:not(:disabled):hover{color:var(--g-text);border-color:#0000004d}.conversion-btn:not(:disabled):active{transform:scale(.97)}.game.soft-response .conversion-btn{transition:color .2s ease,border-color .2s ease,background .2s ease,transform .1s ease}.debug-reset{padding-top:48px;display:flex;justify-content:center}.debug-reset button{background:none;border:none;padding:10px 16px;font-family:inherit;font-size:10px;letter-spacing:.08em;color:#0000001f;cursor:pointer}.debug-reset button:hover{color:#00000059}@media (max-width: 540px){.game-back{top:16px;left:16px}.game-inner{padding-left:22px;padding-right:22px;padding-top:72px}.game.intro-active .game-inner{padding-top:max(64px,26vh)}.upgrade-card-meta{flex-direction:column;align-items:stretch;gap:10px}.upgrade-btn{min-width:unset;text-align:left;min-height:40px}.conversion-item{flex-direction:column;align-items:stretch;gap:8px}.conversion-btn{min-width:unset;width:100%;text-align:center;height:44px}.game-action{flex-direction:column;align-items:flex-start;gap:8px}.attention-btn{width:100%;text-align:center;height:44px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
