.lp{background:radial-gradient(120% 90% at 50% 110%, #22375c 0%, var(--navy) 38%, var(--night) 100%);font-family:var(--font-lora), serif;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.lp .stars{pointer-events:none;z-index:0;position:fixed;inset:0}.lp .star{background:var(--ember);opacity:.35;border-radius:50%;animation:4s ease-in-out infinite lp-twinkle;position:absolute}@keyframes lp-twinkle{0%,to{opacity:.15;transform:scale(.8)}50%{opacity:.6;transform:scale(1)}}.lp .scene{z-index:2;opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;padding:24px;transition:opacity .7s;display:flex;position:fixed;inset:0}.lp .scene.active{opacity:1;pointer-events:auto}.lp .eyebrow{letter-spacing:.14em;color:var(--mist);text-align:center;margin-bottom:22px;font-size:14px;font-style:italic}.lp .card{aspect-ratio:5/7;background:var(--card-bg,linear-gradient(178deg, #faf5e9 0%, var(--ivory) 55%, var(--ivory-dim) 100%));cursor:pointer;transform-origin:50% 80%;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;width:min(340px,86vw);padding:34px 28px;transition:transform .5s cubic-bezier(.2,.8,.3,1.1);display:flex;position:relative;box-shadow:0 24px 60px -18px #000000a6,inset 0 2px #ffffff0f}.lp .card:hover{transform:translateY(-6px)rotate(-.4deg)}.lp .card:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.lp .card .rule{background:var(--card-accent,var(--gold));width:38px;height:2px;margin:20px 0}.lp .hook{white-space:pre-line;font-family:var(--font-fraunces), serif;font-variation-settings:"opsz" 100, "wght" 640, "WONK" 1;color:var(--card-ink,var(--ink));text-align:center;letter-spacing:.005em;font-size:clamp(26px,7.4vw,34px);line-height:1.14}.lp .hook em{font-variation-settings:"opsz" 100, "wght" 560, "WONK" 1;font-style:italic}.lp .card .open-cue{letter-spacing:.2em;color:var(--card-cue,#9a8d6e);font-size:13px;font-style:italic;animation:2.6s ease-in-out infinite lp-cuePulse;position:absolute;bottom:26px}@keyframes lp-cuePulse{0%,to{opacity:.55}50%{opacity:1}}.lp .card.opening{opacity:0;transition:transform .8s,opacity .7s;transform:rotateX(78deg)translateY(-30px)}.lp .punch-wrap{text-align:center;max-width:520px}.lp .punch-line{font-family:var(--font-fraunces), serif;font-variation-settings:"opsz" 120, "wght" 460, "WONK" 1;color:var(--ivory);opacity:0;font-size:clamp(28px,7.6vw,42px);line-height:1.22;transform:translateY(16px)}.lp .punch-line.two{font-variation-settings:"opsz" 120, "wght" 660, "WONK" 1;color:var(--ember);margin-top:14px}.lp .punch-line.in{animation:.9s forwards lp-riseIn}@keyframes lp-riseIn{to{opacity:1;transform:translateY(0)}}.lp .personal{font-family:var(--font-caveat), cursive;color:var(--ivory);opacity:0;margin-top:24px;font-size:clamp(20px,5.4vw,25px);transform:rotate(-.8deg)}.lp .personal.in{animation:.9s forwards lp-riseIn}.lp .whisper{color:var(--mist);opacity:0;margin-top:34px;font-size:16px;font-style:italic}.lp .whisper.in{animation:.9s forwards lp-riseIn}.lp .lantern-stage{opacity:0;flex-direction:column;align-items:center;margin-top:26px;display:flex;transform:translateY(18px)scale(.94)}.lp .lantern-stage.in{animation:1.1s cubic-bezier(.2,.8,.3,1.05) forwards lp-lanternArrive}@keyframes lp-lanternArrive{to{opacity:1;transform:translateY(0)scale(1)}}.lp .lantern-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;padding:18px;position:relative}.lp .lantern-btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:24px}.lp .lantern-glow{pointer-events:none;background:radial-gradient(circle,#ffd98a61 0%,#ffd98a1f 45%,#0000 70%);border-radius:50%;animation:3s ease-in-out infinite lp-breathe;position:absolute;inset:-30px}@keyframes lp-breathe{0%,to{opacity:.75;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}.lp .lantern-svg{filter:drop-shadow(0 6px 22px #e8b65359);width:118px;height:auto;display:block}.lp .tap-cue{letter-spacing:.12em;color:var(--gold);margin-top:10px;font-size:14px;font-style:italic;animation:2.4s ease-in-out infinite lp-cuePulse}.lp .scan-cue{color:var(--mist);letter-spacing:.06em;margin-top:4px;font-size:11.5px}.lp .flood{z-index:8;pointer-events:none;opacity:0;background:radial-gradient(circle,#ffebb8 0%,#f3ce7e 34%,#e8b653d9 55%,#0000 72%);border-radius:50%;width:200vmax;height:200vmax;margin-top:-100vmax;margin-left:-100vmax;position:fixed;inset:55% 0 0 50%;transform:scale(0)}.lp .flood.go{animation:1.15s cubic-bezier(.3,.6,.3,1) forwards lp-flood}@keyframes lp-flood{0%{opacity:1;transform:scale(0)}70%{opacity:1}to{opacity:0;transform:scale(1)}}.lp .reveal-wrap{text-align:center;width:100%;max-width:430px}.lp .verified{letter-spacing:.12em;color:var(--gold);background:#e8b65314;border:1px solid #e8b65373;border-radius:100px;align-items:center;gap:8px;padding:7px 16px;font-size:12.5px;display:inline-flex}.lp .verified .dot{background:var(--gold);width:7px;height:7px;box-shadow:0 0 10px var(--ember);border-radius:50%}.lp .reveal-title{font-family:var(--font-fraunces), serif;font-variation-settings:"opsz" 120, "wght" 620, "WONK" 1;color:var(--ivory);margin:22px 0 6px;font-size:clamp(24px,6.4vw,32px)}.lp .reveal-sub{color:var(--mist);font-size:15px;font-style:italic}.lp .payload{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f5efe20f;border:1px solid #f5efe224;border-radius:16px;margin:26px auto 0;padding:20px}.lp .payload .provider{justify-content:center;align-items:center;gap:12px;display:flex}.lp .music-mark{color:#fff;background:linear-gradient(145deg,#fa5a76,#c13584);border-radius:12px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.lp .payload .meta{text-align:left}.lp .payload .track{font-family:var(--font-fraunces), serif;font-variation-settings:"wght" 600;color:var(--ivory);font-size:17px}.lp .payload .src{color:var(--mist);letter-spacing:.05em;margin-top:2px;font-size:12.5px}.lp .open-btn{background:linear-gradient(180deg, #f3ce7e, var(--gold));color:#3a2c0e;width:100%;font-family:var(--font-fraunces), serif;font-variation-settings:"wght" 640;cursor:pointer;border:none;border-radius:100px;margin-top:18px;padding:15px 22px;font-size:16px;transition:transform .18s,box-shadow .18s;display:inline-block;box-shadow:0 10px 26px -8px #e8b6538c}.lp .open-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px -8px #e8b653b3}.lp .open-btn:focus-visible{outline:3px solid var(--ivory);outline-offset:3px}.lp .why{border-top:1px dashed #f5efe233;margin-top:26px;padding-top:22px}.lp .why .label{letter-spacing:.2em;color:var(--mist);font-size:12px;font-style:italic}.lp .why .note{font-family:var(--font-caveat), cursive;color:var(--ember);margin-top:8px;font-size:clamp(22px,6vw,27px);line-height:1.3;transform:rotate(-1.1deg)}.lp .actions{gap:12px;margin-top:30px;display:flex}.lp .actions button{color:var(--ivory);cursor:pointer;font-family:var(--font-lora), serif;background:#f5efe212;border:1px solid #f5efe233;border-radius:100px;flex:1;padding:13px 10px;font-size:14px;transition:background .2s,border-color .2s}.lp .actions button:hover{border-color:var(--gold);background:#e8b65324}.lp .actions button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.lp .pass-tag{color:var(--mist);margin-top:18px;font-size:13.5px;font-style:italic}.lp .toast{background:var(--ivory);color:var(--ink);opacity:0;pointer-events:none;z-index:20;border-radius:100px;padding:11px 22px;font-size:14px;transition:all .4s;position:fixed;bottom:34px;left:50%;transform:translate(-50%)translateY(20px);box-shadow:0 12px 30px -10px #00000080}.lp .toast.show{opacity:1;transform:translate(-50%)translateY(0)}.lp .restart{z-index:15;color:var(--mist);font-family:var(--font-lora), serif;cursor:pointer;opacity:.75;background:0 0;border:1px solid #f5efe240;border-radius:100px;padding:8px 16px;font-size:12.5px;position:fixed;top:18px;right:18px}.lp .restart:hover{color:var(--ivory);border-color:var(--ivory)}@media (prefers-reduced-motion:reduce){.lp *{transition-duration:.15s!important;animation-duration:1ms!important}.lp .lantern-glow,.lp .open-cue,.lp .tap-cue{opacity:.9;animation:none!important}.lp .star{animation:none}}
