html{scroll-behavior:smooth;scroll-padding-top:84px}.lp{--night: #120e0a;--night-2: #1a1410;--night-3: #241c15;--line: rgba(243, 234, 219, .12);--line-strong: rgba(243, 234, 219, .22);--ink: #f6eedf;--ink-2: #d7cab3;--muted: #a8997f;--gold: #e0ae4a;--gold-deep: #c9962f;--red: #a52a24;--red-deep: #7c1d19;--paper: #f3eadb;--paper-ink: #2a2118;--font-display: "Cormorant Garamond", "Noto Serif", Georgia, serif;--font-body: "Be Vietnam Pro", system-ui, sans-serif;--wrap: 1240px;--gutter: clamp(20px, 5vw, 56px);--radius: 20px;--ease: cubic-bezier(.16, 1, .3, 1);min-height:100vh;background:var(--night);color:var(--ink);font-family:var(--font-body);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased}.lp *,.lp *:before,.lp *:after{box-sizing:border-box}.lp ::selection{background:#e0ae4a59;color:var(--ink)}.lp :focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}.lp :where(h1,h2,h3,p,ol,ul,dl,dd,figure,blockquote){margin:0;padding:0}.lp ol,.lp ul{list-style:none}.lp h1,.lp h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em;line-height:1.02;text-wrap:balance}.lp h2{font-size:clamp(2.25rem,3.4vw + 1rem,3.75rem)}.lp p{text-wrap:pretty}.lp img{display:block;max-width:100%;height:auto}.lp a{color:inherit}.lp-wrap{width:100%;max-width:calc(var(--wrap) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}.lp kbd{display:inline-flex;min-width:2.25rem;height:2.25rem;align-items:center;justify-content:center;padding:0 .6rem;border:1px solid var(--line-strong);border-bottom-width:3px;border-radius:9px;background:linear-gradient(180deg,#ffffff17,#ffffff05);color:var(--ink);font:600 .875rem / 1 var(--font-body)}.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;border:1px solid transparent;border-radius:999px;cursor:pointer;font:600 1rem / 1 var(--font-body);text-decoration:none;white-space:nowrap;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .25s var(--ease),border-color .25s var(--ease)}.lp-btn--lg{min-height:56px;padding:0 1.9rem;font-size:1.0625rem}.lp-btn--md{min-height:42px;padding:0 1.2rem;font-size:.9375rem}.lp-btn--primary{background:linear-gradient(180deg,#f0c466 0%,var(--gold-deep) 100%);color:#2a1b06;box-shadow:inset 0 1px #ffffff73,0 10px 30px -8px #e0ae4a8c}.lp-btn--primary svg{width:1.15em;height:1.15em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s var(--ease)}.lp-btn--primary:hover{transform:translateY(-2px);box-shadow:inset 0 1px #ffffff8c,0 16px 40px -8px #e0ae4ab3}.lp-btn--primary:hover svg{transform:translate(4px)}.lp-btn--primary:active{transform:translateY(0)}.lp-btn--ghost{border-color:var(--line-strong);background:#120e0a59;color:var(--ink);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lp-btn--ghost:hover{border-color:#f3eadb80;background:#f3eadb1a}.lp-nav{position:fixed;z-index:50;inset:0 0 auto;border-bottom:1px solid transparent;transition:background-color .35s var(--ease),border-color .35s var(--ease),backdrop-filter .35s var(--ease)}.lp-nav.is-scrolled{border-bottom-color:var(--line);background:#120e0ab8;backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3)}.lp-nav__inner{display:flex;min-height:72px;align-items:center;gap:2rem}.lp-brand{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none}.lp-logo{width:36px;height:36px;flex:none}.lp-logo__seal{fill:var(--red)}.lp-logo__ring{fill:none;stroke:#f6eedf8c;stroke-width:.8}.lp-logo__gate{fill:#f6eedf}.lp-wordmark{display:grid;line-height:1}.lp-wordmark__name{font:600 1.5rem / 1 var(--font-display)}.lp-wordmark__sub{margin-top:3px;color:var(--gold);font-size:.625rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase}.lp-nav nav{display:flex;margin-left:auto;gap:.25rem}.lp-nav nav a{padding:.55rem .95rem;border-radius:999px;color:var(--ink-2);font-size:.9375rem;font-weight:500;text-decoration:none;transition:color .2s,background-color .2s}.lp-nav nav a:hover{background:#f3eadb1a;color:var(--ink)}.lp-hero{position:relative;display:flex;min-height:max(100svh,680px);flex-direction:column;justify-content:flex-end;overflow:hidden;isolation:isolate}.lp-hero__bg{position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0}.lp-hero__bg img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;animation:lp-drift 28s var(--ease) both}.lp-hero:after{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#120e0a80,#120e0a00 20%),linear-gradient(90deg,#120e0ab3,#120e0a38 44%,#120e0a00 68%),linear-gradient(0deg,var(--night) 0%,rgba(18,14,10,.62) 20%,rgba(18,14,10,0) 52%);content:""}@keyframes lp-drift{0%{transform:scale(1.12) translate3d(1.5%,1%,0)}to{transform:scale(1.02) translateZ(0)}}.lp-hero__content{padding-top:140px;padding-bottom:clamp(28px,5vh,56px)}.lp-hero__content>*{animation:lp-rise .9s var(--ease) both}.lp-hero__content>:nth-child(2){animation-delay:.08s}.lp-hero__content>:nth-child(3){animation-delay:.16s}.lp-hero__content>:nth-child(4){animation-delay:.24s}@keyframes lp-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}.lp-eyebrow{display:inline-flex;align-items:center;gap:.6rem;padding:.45rem .95rem .45rem .75rem;border:1px solid var(--line-strong);border-radius:999px;background:#120e0a73;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--ink-2);font-size:.8125rem;font-weight:500;letter-spacing:.01em}.lp-eyebrow__dot{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px #e0ae4a38}.lp-hero h1{max-width:12ch;margin-top:1.4rem;font-size:clamp(3.25rem,7.2vw + .6rem,7.5rem);line-height:.95;text-shadow:0 2px 40px rgba(0,0,0,.45)}.lp-hero__lead{max-width:46ch;margin-top:1.5rem;color:var(--ink-2);font-size:clamp(1.0625rem,.5vw + 1rem,1.3125rem);line-height:1.5}.lp-hero__actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2.2rem}.lp-hero__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding-bottom:clamp(24px,4vh,44px)}.lp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,auto));gap:clamp(1.25rem,3.5vw,3.5rem);padding-top:1.5rem;border-top:1px solid var(--line)}.lp-stats dt{color:var(--gold);font:600 clamp(2rem,2.2vw + 1rem,3rem) / 1 var(--font-display)}.lp-stats dd{max-width:16ch;margin-top:.4rem;color:var(--muted);font-size:.8125rem;line-height:1.35}.lp-hero__credit{flex:none;color:var(--muted);font-size:.75rem;letter-spacing:.04em}.lp-section{padding-block:clamp(72px,11vw,150px)}.lp-head{max-width:44rem;margin-bottom:clamp(2rem,4.5vw,3.75rem)}.lp-head--center{margin-inline:auto;text-align:center}.lp-kicker{display:inline-flex;align-items:center;gap:.75rem;margin-bottom:1.1rem;color:var(--gold);font-size:.8125rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.lp-kicker:before{width:28px;height:1px;background:currentColor;content:""}.lp-head__body{max-width:56ch;margin-top:1.25rem;color:var(--ink-2);font-size:1.0625rem}.lp-head--center .lp-head__body{margin-inline:auto}.lp-reveal{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease) var(--delay, 0ms),transform .9s var(--ease) var(--delay, 0ms)}.lp-reveal.is-shown{opacity:1;transform:none}.lp-bento{display:grid;grid-auto-rows:clamp(210px,21vw,290px);grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}.lp-bento__cell--1{grid-column:span 4;grid-row:span 2}.lp-bento__cell--2,.lp-bento__cell--3{grid-column:span 2}.lp-bento__cell--4,.lp-bento__cell--5{grid-column:span 3}.lp-card{position:relative;height:100%;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--night-2);isolation:isolate}.lp-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}.lp-card:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,#120e0aeb,#120e0a40 46%,#120e0a00 70%);content:"";pointer-events:none}.lp-card:hover img{transform:scale(1.06)}.lp-card__text{position:absolute;z-index:1;inset:auto 0 0;padding:clamp(1rem,1.6vw,1.6rem)}.lp-card__num{display:inline-block;margin-bottom:.5rem;color:var(--gold);font-size:.75rem;font-weight:600;letter-spacing:.18em}.lp-card h3{font:600 clamp(1.5rem,1vw + 1.1rem,2.125rem) / 1.05 var(--font-display)}.lp-card p{max-width:34ch;margin-top:.35rem;color:var(--ink-2);font-size:.9375rem;line-height:1.4}.lp-era{background:radial-gradient(60% 50% at 50% 0%,rgba(165,42,36,.2),transparent 70%),var(--night-2);border-block:1px solid var(--line)}.lp-compare{position:relative;overflow:hidden;border:1px solid var(--line-strong);border-radius:calc(var(--radius) + 4px);aspect-ratio:16 / 9;box-shadow:0 40px 100px -40px #000000e6}.lp-compare img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.lp-compare__past{clip-path:inset(0 calc(100% - var(--pos)) 0 0);filter:sepia(.72) saturate(.7) contrast(1.05) brightness(.96)}.lp-compare__handle{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;background:var(--ink);transform:translate(-1px);pointer-events:none}.lp-compare__handle:after{position:absolute;top:50%;left:50%;width:52px;height:52px;border:2px solid var(--ink);border-radius:50%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f6eedf' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 7l-5 5 5 5M15 7l5 5-5 5'/%3E%3C/svg%3E") center / 24px no-repeat,#120e0ab3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);content:"";transform:translate(-50%,-50%);transition:transform .25s var(--ease)}.lp-compare:hover .lp-compare__handle:after,.lp-compare:has(input:focus-visible) .lp-compare__handle:after{transform:translate(-50%,-50%) scale(1.1)}.lp-compare:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:4px}.lp-compare input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}.lp-compare__tag{position:absolute;top:1rem;padding:.4rem .9rem;border:1px solid var(--line-strong);border-radius:999px;background:#120e0a99;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;pointer-events:none}.lp-compare__tag--past{left:1rem}.lp-compare__tag--now{right:1rem}.lp-era__foot{display:flex;max-width:46rem;align-items:center;gap:1rem;margin:1.75rem auto 0;color:var(--ink-2)}.lp-era__foot kbd{flex:none}.lp-album{background:radial-gradient(80% 60% at 85% 10%,rgba(201,150,47,.18),transparent 60%),var(--paper);color:var(--paper-ink)}.lp-album .lp-kicker{color:var(--red-deep)}.lp-album .lp-head__body{color:#5a4c3c}.lp-album__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,6vw,6rem)}.lp-quote{margin-top:2.25rem;padding-left:1.4rem;border-left:3px solid var(--red)}.lp-quote p{font:italic 500 clamp(1.375rem,1vw + 1.1rem,1.875rem) / 1.3 var(--font-display)}.lp-quote cite{display:block;margin-top:.75rem;color:#6e6152;font-size:.875rem;font-style:normal}.lp-postcard{padding:14px 14px 12px;border-radius:6px;background:#fffaf0;box-shadow:0 1px #fffc inset,0 30px 60px -24px #2a21188c,0 4px 10px #2a21181f;transform:rotate(2.2deg);transition:transform .6s var(--ease)}.lp-postcard:hover{transform:rotate(.4deg) translateY(-4px)}.lp-postcard img{width:100%;border-radius:2px;filter:sepia(.25) contrast(1.03)}.lp-postcard figcaption{margin-top:10px;color:#6e6152;font-size:.75rem;line-height:1.4}.lp-postcard a{text-decoration-color:#6e615280;text-underline-offset:.2em}.lp-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.2vw,16px)}.lp-key{display:flex;min-height:132px;flex-direction:column;justify-content:space-between;gap:1.25rem;padding:1.25rem;border:1px solid var(--line);border-radius:16px;background:linear-gradient(160deg,#f3eadb0f,#f3eadb04);transition:opacity .9s var(--ease) var(--delay, 0ms),transform .9s var(--ease) var(--delay, 0ms),border-color .25s,background-color .25s}.lp-key:hover{border-color:#e0ae4a73;background-color:#e0ae4a0d}.lp-key__caps{display:flex;flex-wrap:wrap;gap:6px}.lp-key__label{color:var(--ink-2);font-weight:500}.lp-final{position:relative;display:grid;min-height:min(78vh,640px);place-items:center;overflow:hidden;isolation:isolate;text-align:center}.lp-final__bg{position:absolute;z-index:-2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.lp-final:after{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--night) 0%,rgba(18,14,10,.3) 28%,rgba(18,14,10,.35) 72%,var(--night) 100%),radial-gradient(55% 55% at 50% 48%,#120e0a9e,#120e0a40);content:""}.lp-final__content{display:grid;justify-items:center;gap:1.25rem;padding-block:4rem}.lp-final h2{max-width:16ch;font-size:clamp(2.5rem,4.6vw + 1rem,5rem);text-shadow:0 2px 40px rgba(0,0,0,.5)}.lp-final p{max-width:44ch;margin-bottom:.75rem;color:var(--ink-2);font-size:1.125rem}.lp-footer{padding-block:2.75rem 3.25rem;border-top:1px solid var(--line);color:var(--muted);font-size:.875rem}.lp-footer__inner{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1.5rem 3rem}.lp-footer .lp-brand{color:var(--ink)}.lp-footer__notes{display:grid;max-width:44rem;gap:.4rem}.lp-footer .lp-footer__credits{margin:0;color:var(--muted);font-size:inherit}.lp-footer a{text-decoration-color:#a8997f80;text-underline-offset:.2em}.lp-footer a:hover{color:var(--ink)}@media(max-width:960px){.lp-nav nav{display:none}.lp-nav__inner{justify-content:space-between}.lp-bento{grid-auto-rows:clamp(200px,34vw,280px);grid-template-columns:repeat(2,minmax(0,1fr))}.lp-bento__cell--1{grid-column:span 2;grid-row:span 1}.lp-bento__cell--2,.lp-bento__cell--3,.lp-bento__cell--4{grid-column:span 1}.lp-bento__cell--5,.lp-bento__cell--4{grid-column:span 2}.lp-album__grid{grid-template-columns:1fr}.lp-keys{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-hero__credit{display:none}}@media(max-width:620px){.lp-nav__inner{min-height:64px}.lp-hero:after{background:linear-gradient(180deg,#120e0a99,#120e0a00 20%),linear-gradient(0deg,var(--night) 0%,rgba(18,14,10,.86) 40%,rgba(18,14,10,.2) 80%)}.lp-hero__actions .lp-btn{flex:1 1 100%}.lp-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1.5rem;width:100%}.lp-bento{grid-auto-rows:230px;grid-template-columns:1fr}.lp-bento__cell{grid-column:span 1!important}.lp-compare{aspect-ratio:4 / 3}.lp-compare__handle:after{width:44px;height:44px}.lp-era__foot{align-items:flex-start}.lp-postcard{transform:rotate(1.2deg)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lp *,.lp *:before,.lp *:after{animation:none!important;transition-duration:.01ms!important}.lp-reveal{opacity:1;transform:none}}:root{--ink: #2a2118;--paper: #f3eadb;--paper-2: #e9dcc5;--gold: #c9962f;--gold-ink: #6b4b10;--red: #8a2424;--muted: #6e6152;--panel-bg: rgba(243, 234, 219, .94);--shadow: 0 18px 50px rgba(30, 20, 10, .35);--radius: 14px;--font-sans: "Be Vietnam Pro", system-ui, sans-serif;--font-serif: "Noto Serif", Georgia, serif;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;height:100%}html,body{overflow-x:clip}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--ink);background:#1e1812;-webkit-font-smoothing:antialiased}h1,h2{font-family:var(--font-serif);font-weight:700;margin:0 0 .4em;line-height:1.15}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:600;color:var(--gold-ink);margin:0 0 .6rem}.muted{color:var(--muted)}.small{font-size:.8rem}.btn{font:inherit;font-weight:600;border:1px solid rgba(42,33,24,.25);background:transparent;color:var(--ink);padding:.7rem 1.2rem;border-radius:999px;cursor:pointer;transition:transform .12s ease,background .12s ease}.btn:hover{background:#2a21180f}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.btn--primary{background:var(--red);border-color:var(--red);color:#fff8ec}.btn--primary:hover{background:#a02c2c}.btn--ghost{border-color:transparent}.btn--lg{padding:.95rem 2rem;font-size:1.05rem;margin-bottom:1.2rem}.game-root{position:fixed;top:0;right:0;bottom:0;left:0;background:#e2cfae}.game-root canvas{display:block;touch-action:none}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:16px;background:#1e140a59;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.overlay--solid{background:linear-gradient(180deg,#e8c890,#b77a4a)}.overlay--side{place-items:center end;background:linear-gradient(90deg,transparent 40%,rgba(30,20,10,.35))}.panel,.album-card{width:min(420px,100%);background:var(--panel-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px}.panel{max-height:100%;overflow-y:auto}.panel .stack{display:grid;gap:10px;margin-top:20px}.panel--poi{width:min(440px,100%);max-height:calc(100vh - 32px);overflow:auto;margin-right:24px}.panel--poi .body{line-height:1.65}.photo-placeholder{aspect-ratio:4 / 3;border-radius:10px;background:repeating-linear-gradient(45deg,var(--paper-2) 0 12px,#e2d2b6 12px 24px);display:grid;place-items:center;color:var(--muted);font-size:.85rem;margin:12px 0}.badge{display:inline-block;font-size:.75rem;background:#f6e1b0;color:var(--gold-ink);padding:4px 10px;border-radius:999px}.sources{font-size:.82rem;color:var(--muted);margin:12px 0 20px}.sources ul{padding-left:1.1rem}.album-card{text-align:center;transform:rotate(-1.2deg);border:10px solid #fffaf0}.album-card .note{font-family:var(--font-serif);font-style:italic;color:var(--muted)}.loading-bar{height:4px;border-radius:4px;margin-top:20px;background:linear-gradient(90deg,var(--gold) 0 30%,var(--paper-2) 30%);background-size:200% 100%;animation:load 1.2s linear infinite}@keyframes load{0%{background-position:100% 0}to{background-position:-100% 0}}.field{display:grid;gap:8px;border:0;padding:0;margin:18px 0}.field legend,.field>span{font-weight:600;font-size:.9rem;margin-bottom:8px}.field--row{grid-auto-flow:column;justify-content:start;align-items:center}.field input[type=range]{accent-color:var(--red)}.segmented{display:grid;grid-template-columns:repeat(3,1fr);background:var(--paper-2);border-radius:999px;padding:4px}.segmented button{font:inherit;border:0;background:transparent;padding:8px;border-radius:999px;cursor:pointer}.segmented .is-active{background:#fffaf0;box-shadow:0 1px 4px #0000001f;font-weight:600}.hud{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hud__top{position:absolute;top:16px;left:16px}.chip{background:#1e140a8c;color:#fff3dc;padding:6px 12px;border-radius:999px;font-size:.82rem}.prompt{position:absolute;left:50%;bottom:18%;transform:translate(-50%);display:flex;gap:10px;align-items:center;background:#1e140aa6;color:#fff3dc;padding:10px 16px 10px 10px;border-radius:999px;font-weight:600;animation:pop .18s ease-out}.prompt kbd{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--gold);color:#2b1a10;font-family:var(--font-sans)}@keyframes pop{0%{opacity:0;transform:translate(-50%,6px)}}.hud__hint{position:absolute;right:16px;bottom:12px;margin:0;color:#fff3dcd9;font-size:.75rem;text-shadow:0 1px 2px rgba(0,0,0,.5)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:640px){.overlay--side{place-items:end center}.panel--poi{margin-right:0}}.hud__top{display:flex;flex-wrap:wrap;gap:8px;right:16px}.era-badge{display:contents}.chip kbd{font-family:var(--font-sans);font-weight:600;background:var(--gold);color:#2b1a10;border-radius:5px;padding:0 6px;margin-right:4px}.chip--past{background:#70481ed9}.game-root canvas{transition:filter .9s ease}.game-root[data-era=past] canvas{filter:sepia(.8) saturate(.8) contrast(1.05) brightness(1.04)}.era-grain{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;transition:opacity .9s ease;background:radial-gradient(ellipse at center,transparent 55%,rgba(40,24,8,.55) 100%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.35'/></svg>");mix-blend-mode:multiply}.game-root[data-era=past] .era-grain{opacity:1}.flash{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:#fff8e8;opacity:0}.flash--reveal{animation:flash-reveal 1.7s ease forwards}.flash--toggle{animation:flash-toggle .55s ease forwards}@keyframes flash-reveal{0%{opacity:0}26%{opacity:1}45%{opacity:.9}to{opacity:0}}@keyframes flash-toggle{0%{opacity:0}30%{opacity:.85}to{opacity:0}}.photo-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.photo-overlay__img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:sepia(.9) contrast(1.15) brightness(1.02);transition:opacity .2s linear}.photo-overlay__pending{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#fff3dc}.photo-overlay__frame{position:absolute;top:3%;right:3%;bottom:3%;left:3%;border:2px solid rgba(255,243,220,.7);border-radius:6px;box-shadow:0 0 0 100vmax #1e140a2e;transition:border-color .2s,box-shadow .2s}.photo-overlay.is-matched .photo-overlay__frame{border-color:var(--gold);box-shadow:0 0 0 100vmax #1e140a1a,inset 0 0 40px #f2c14e99}.photo-overlay__card{position:absolute;left:50%;bottom:6%;transform:translate(-50%);width:min(460px,calc(100% - 32px));background:var(--panel-bg);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 20px}.photo-overlay__hint{font-family:var(--font-serif);font-style:italic;margin:0 0 12px;line-height:1.5}.photo-overlay__guide{font-weight:600;margin:10px 0 4px}.meter{position:relative;height:8px;border-radius:8px;background:var(--paper-2);overflow:hidden}.meter__fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#b3874a,var(--gold));transition:width .12s linear}.meter__hold{position:absolute;inset:0 auto 0 0;background:var(--red)}.memory-card__photo{width:100%;border-radius:6px;border:8px solid #fffaf0;box-shadow:0 6px 20px #1e140a40;filter:sepia(.9) contrast(1.15);transform:rotate(-1deg);margin:8px 0 4px}.memory-card__caption{font-family:var(--font-serif);font-style:italic;color:var(--muted);font-size:.85rem;margin:4px 0 12px}.hud__lock{position:absolute;left:50%;top:56px;transform:translate(-50%);margin:0;background:#1e140a8c;color:#fff3dc;padding:6px 12px;border-radius:999px;font-size:.8rem}.field__note{margin:-4px 0 8px}.archive-photo{margin:12px 0}.archive-photo img{display:block;width:100%;border-radius:6px;background:var(--paper-2);aspect-ratio:3 / 2;object-fit:cover}.archive-photo figcaption{display:grid;gap:2px;margin-top:6px;font-size:.78rem;color:var(--muted);line-height:1.4}.archive-photo__caption{font-family:var(--font-serif);font-style:italic;color:var(--ink)}.archive-photo a,.sources a{color:var(--red)}.memory-card__archive img{aspect-ratio:auto}.credits{font-size:.72rem;color:var(--muted);margin:16px 0 0;line-height:1.5}.credits a{color:inherit}.landing__credits{color:#fff0d7bf}.overlay--album{background:#1e140a8c;overflow:auto}.album{width:min(880px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#efe3cc;background-image:radial-gradient(rgba(120,90,50,.08) 1px,transparent 1px);background-size:6px 6px;border-radius:var(--radius);box-shadow:var(--shadow);padding:28px}.album__head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;border-bottom:1px solid rgba(42,33,24,.15);padding-bottom:12px;margin-bottom:20px}.album__head h2{margin:0}.album__progress{margin:0;font-family:var(--font-serif)}.album__pages{list-style:none;padding:0;margin:0;display:grid;gap:22px}.album-page{display:grid;grid-template-columns:minmax(0,260px) 1fr;gap:20px;align-items:start}.album-page__photo{position:relative;aspect-ratio:4 / 3;background:#d8c8a8;border:8px solid #fffaf0;box-shadow:0 6px 18px #1e140a40;transform:rotate(-1.2deg);display:grid;place-items:center;color:var(--muted);font-size:.8rem}.album-page:nth-child(2n) .album-page__photo{transform:rotate(1deg)}.album-page__photo img{width:100%;height:100%;object-fit:cover;filter:sepia(.9) contrast(1.1)}.album-page:not(.is-found) .album-page__photo img{filter:sepia(.9) contrast(1.1) brightness(.92)}.album-page__no{position:absolute;top:-12px;left:-12px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff8ec;font-weight:600;font-size:.85rem}.album-page h3{font-family:var(--font-serif);margin:0 0 6px}.album-page__status{margin:0 0 8px;font-size:.85rem;font-weight:600;color:var(--muted)}.album-page.is-found .album-page__status{color:#3f6e3a}.album-page.is-current .album-page__status{color:var(--red)}.album-page__hint{font-family:var(--font-serif);font-style:italic;margin:0;line-height:1.5}.album-page__archive{margin:4px 0 0;max-width:320px}.album__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}@media(max-width:640px){.album-page{grid-template-columns:1fr}}.segmented--2{grid-template-columns:repeat(2,1fr)}.segmented--4{grid-template-columns:repeat(4,1fr)}.photo-mode{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.photo-mode__frame{position:absolute;top:28px;right:28px;bottom:28px;left:28px;--c: rgba(255, 243, 220, .75);background:linear-gradient(var(--c),var(--c)) top left / 28px 2px,linear-gradient(var(--c),var(--c)) top left / 2px 28px,linear-gradient(var(--c),var(--c)) top right / 28px 2px,linear-gradient(var(--c),var(--c)) top right / 2px 28px,linear-gradient(var(--c),var(--c)) bottom left / 28px 2px,linear-gradient(var(--c),var(--c)) bottom left / 2px 28px,linear-gradient(var(--c),var(--c)) bottom right / 28px 2px,linear-gradient(var(--c),var(--c)) bottom right / 2px 28px;background-repeat:no-repeat}.photo-mode__bar{position:absolute;left:50%;bottom:40px;transform:translate(-50%);display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;max-width:calc(100% - 32px);background:#1e140a99;color:#fff3dc;padding:8px 16px;border-radius:999px;font-size:.82rem;white-space:nowrap}.photo-mode__title{font-weight:700;color:var(--gold)}.photo-mode__times{display:flex;gap:10px}.photo-mode__times>span{opacity:.6}.photo-mode__times>.is-active{opacity:1;font-weight:700}.photo-mode kbd{display:inline-block;min-width:1.5em;padding:0 5px;border-radius:5px;background:#fff3dc2e;font-family:var(--font-sans);text-align:center}.photo-mode__flash{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;animation:photo-flash .35s ease-out forwards}@keyframes photo-flash{0%{opacity:.55}to{opacity:0}}@media(prefers-reduced-motion:reduce){.photo-mode__flash{animation-duration:.01s}}.ticket-speech{margin:0 0 16px;padding:10px 14px;border-left:3px solid var(--gold);background:#c9962f1a;font-family:var(--font-serif);font-style:italic;line-height:1.5}.ticket{position:relative;display:grid;grid-template-columns:1fr 76px;margin:0 0 12px;background:#fbf3e2;border:1px solid #d8c39a;border-radius:8px;box-shadow:0 6px 16px #1e140a2e;transform:rotate(-1.2deg);color:var(--ink)}.ticket__main{padding:14px 16px 12px;border-top:5px solid var(--red);border-radius:8px 0 0 8px}.ticket__kicker{margin:0;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink)}.ticket__title{margin:2px 0 0;font-family:var(--font-serif);font-size:1.35rem;font-weight:700;color:var(--red)}.ticket__sub{margin:0 0 10px;font-size:.82rem;color:var(--muted)}.ticket__meta{display:flex;gap:20px;margin:0}.ticket__meta dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.ticket__meta dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}.ticket__stub{display:grid;place-items:center;border-left:2px dashed #cdb488;border-top:5px solid var(--red);border-radius:0 8px 8px 0}.ticket__stamp{display:grid;place-items:center;width:58px;height:58px;border:2px solid rgba(138,36,36,.8);border-radius:50%;color:#8a2424d9;font-size:.62rem;font-weight:700;line-height:1.1;text-align:center;text-transform:uppercase;transform:rotate(-14deg)}.ticket__note{grid-column:1 / -1;padding:4px 16px 6px;border-top:1px solid #eadcbf;font-size:.68rem;color:var(--muted)}.ticket--compact{max-width:340px;margin:0}.ticket--compact .ticket__title{font-size:1.1rem}.album__ticket{margin:0 0 18px}.album__ticket-empty{margin:0;max-width:340px;padding:18px;border:2px dashed #cdb488;border-radius:8px;color:var(--muted);font-size:.86rem}@media(prefers-reduced-motion:reduce){.ticket{transform:none}}.coach{position:absolute;left:50%;top:96px;transform:translate(-50%);max-width:calc(100% - 32px);padding:10px 18px;border-radius:14px;background:#1e140a9e;color:#fff3dc;text-align:center;animation:coach-in .4s ease-out}.coach p{margin:0;font-weight:600}.coach .coach__sub{margin-top:4px;font-weight:400;font-size:.82rem;opacity:.85}.coach kbd{display:inline-grid;place-items:center;min-width:26px;height:26px;margin-right:3px;padding:0 6px;border-radius:7px;background:var(--gold);color:#2b1a10;font-family:var(--font-sans)}@keyframes coach-in{0%{opacity:0;transform:translate(-50%,-6px)}}@media(prefers-reduced-motion:reduce){.coach{animation:none}}.photo-overlay__beam{margin:4px 0 0;color:var(--gold-ink);font-size:.85rem;font-weight:600}.gate-speech{position:absolute;left:50%;bottom:26%;transform:translate(-50%);width:min(460px,calc(100% - 32px));margin:0;padding:10px 16px;border-radius:14px;background:#1e140ab3;color:#fff3dc;font-family:var(--font-serif);line-height:1.45;animation:coach-in .3s ease-out}.gate-speech--stop{border-left:4px solid var(--gold)}.gate-speech__who{display:block;font-family:var(--font-sans);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}@media(prefers-reduced-motion:reduce){.gate-speech{animation:none}}
