@import url("https://fonts.googleapis.com/css2?family=Libre+Franklin:wght@400;500;600;700&family=Great+Vibes&family=Noto+Sans+SC:wght@400;500;700&family=Noto+Serif+SC:wght@400;500;600&family=Playfair+Display:wght@500;600;700&display=swap");*,:after,:before{margin:0;padding:0;box-sizing:border-box}:root{--font-display:"Playfair Display","Noto Serif SC",serif;--font-script:"Great Vibes",cursive;--font-ui:"Libre Franklin","Noto Sans SC",sans-serif;--cream-0:#fffdf8;--cream-1:#f8f1e8;--cream-2:#f1e6d8;--cream-3:#e4d3bf;--rose-0:#edd0ca;--rose-1:#d79f95;--rose-2:#c97a73;--rose-3:#aa5f58;--gold-0:#edd7ad;--gold-1:#d8b57b;--gold-2:#bc9450;--ink-0:#2a1f1d;--ink-1:#44312e;--ink-2:#6f5a54;--ink-3:#95817a;--line-soft:rgba(164,128,94,.18);--line-strong:rgba(164,128,94,.34);--surface:rgba(255,252,247,.86);--surface-strong:rgba(255,249,241,.94);--surface-soft:hsla(0,0%,100%,.66);--surface-dark:rgba(44,31,29,.88);--surface-dark-soft:rgba(44,31,29,.66);--shadow-surface:0 28px 80px rgba(86,58,38,.11);--shadow-panel:0 18px 48px rgba(70,46,31,.08);--shadow-strong:0 24px 64px rgba(31,19,17,.18);--radius-xl:28px;--radius-lg:22px;--radius-md:16px;--radius-sm:12px;--focus-ring:0 0 0 4px hsla(5,44%,62%,.22);--content-max:1180px;--nav-max:1040px;--top-h:74px;--nav-h:92px}html{scroll-behavior:smooth;overscroll-behavior-x:none}body,html{overflow-x:hidden}body{font-family:var(--font-ui);min-height:100vh;color:var(--ink-1);background:radial-gradient(circle at 18% 14%,hsla(39,64%,80%,.32),transparent 34%),radial-gradient(circle at 86% 11%,hsla(9,45%,71%,.2),transparent 32%),linear-gradient(180deg,#fffdf8,#f7f0e6 44%,#f0e6d7);line-height:1.6;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(circle at 20% 20%,hsla(0,0%,100%,.2),transparent 25%),linear-gradient(120deg,hsla(0,0%,100%,.1),transparent 35%);mix-blend-mode:soft-light;opacity:.9;z-index:-1}button,input,select,textarea{font:inherit}img{max-width:100%}button{-webkit-tap-highlight-color:transparent}input,textarea{caret-color:var(--rose-3)}::selection{background:hsla(5,44%,62%,.18);color:var(--ink-0)}:focus-visible{outline:none;box-shadow:var(--focus-ring)}@keyframes fadeIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes floatSlow{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-12px,0)}}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.82)}}@keyframes danmaku{0%{transform:translateX(0)}to{transform:translateX(calc(-100vw - 360px))}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes comboPop{0%{transform:scale(1.45)}to{transform:scale(1)}}@keyframes matchPop{0%{transform:scale(1);opacity:1}50%{transform:scale(1.22)}to{transform:scale(.2);opacity:0}}@keyframes popFloat{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-28px)}}@keyframes geoPulse{0%{transform:scale(.42);opacity:.9}72%{transform:scale(1.35);opacity:.16}to{transform:scale(1.68);opacity:0}}@keyframes geoSweep{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes geoRouteFlow{0%{stroke-dashoffset:160}to{stroke-dashoffset:0}}.welcome-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(rgba(17,10,10,.38),rgba(17,10,10,.62)),url(/images/hero.jpg) center 35% /cover no-repeat}.welcome-overlay:after,.welcome-overlay:before{content:"";position:absolute;inset:0}.welcome-overlay:before{background:radial-gradient(circle at 50% 45%,rgba(255,240,211,.14),transparent 28%),linear-gradient(180deg,rgba(13,9,8,.16),rgba(13,9,8,.66))}.welcome-overlay:after{inset:4.5%;border:1px solid hsla(39,66%,80%,.16);border-radius:34px;opacity:.55}.welcome-content{position:relative;z-index:1;width:min(540px,calc(100vw - 2rem));text-align:center;color:#f7f2ed;padding:clamp(1.5rem,4vw,3rem);animation:fadeIn .9s ease}.welcome-logo-svg{margin:0 auto 1.15rem;display:block;filter:drop-shadow(0 16px 30px rgba(0,0,0,.3))}.welcome-sub{font-family:var(--font-script);font-size:clamp(1.35rem,3vw,2rem);color:#f1d09a;margin-bottom:.85rem}.welcome-names{font-family:var(--font-display);font-size:clamp(2.2rem,7vw,4rem);font-weight:600;letter-spacing:.08em;margin-bottom:.9rem;text-shadow:0 8px 24px rgba(0,0,0,.28)}.welcome-date{font-size:clamp(.9rem,2vw,1.05rem);letter-spacing:.35em;color:rgba(255,245,230,.72);margin-bottom:2.3rem}.addr-form button,.auth-code-row button,.auth-lang-btn,.auth-submit,.bl-close,.bl-send,.blessing-toggle,.buffer-primary-btn,.buffer-samples button,.buffer-secondary-btn,.capsule-btn,.cloud-upload-btn,.geo-btn-primary,.geo-btn-secondary,.gf-pill,.lang-btn,.logout-btn,.match3-restart,.nav-item,.nft-mint-another,.nft-mint-btn,.spin-go-btn,.sug-chip,.sug-refresh,.welcome-btn,.welcome-lang{font-family:var(--font-ui)}.welcome-btn{display:inline-flex;align-items:center;justify-content:center;min-width:210px;padding:.95rem 2.2rem;border:1px solid hsla(37,76%,77%,.9);border-radius:999px;background:rgba(29,19,18,.18);color:#f4d9aa;font-size:1rem;font-weight:600;letter-spacing:.16em;cursor:pointer;transition:background-color .2s ease,transform .2s ease,color .2s ease}.welcome-btn:hover{background:hsla(37,76%,77%,.92);color:var(--ink-0);transform:translateY(-1px)}.welcome-lang{display:block;margin:1.25rem auto 0;background:none;border:none;color:rgba(255,244,227,.7);font-size:.86rem;letter-spacing:.08em;cursor:pointer}.auth-overlay{position:fixed;inset:0;z-index:220;display:flex;align-items:center;justify-content:center;padding:1rem;background:radial-gradient(circle at 15% 20%,hsla(39,64%,80%,.16),transparent 28%),radial-gradient(circle at 85% 10%,hsla(5,44%,62%,.12),transparent 30%),linear-gradient(180deg,rgba(255,251,246,.95),hsla(34,49%,92%,.96));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.auth-card{width:min(430px,100%);padding:clamp(1.5rem,4vw,2.3rem);border-radius:26px;border:1px solid var(--line-strong);background:linear-gradient(180deg,rgba(255,252,247,.98),hsla(33,64%,95%,.92));box-shadow:var(--shadow-surface);text-align:center;animation:fadeIn .55s ease}.auth-logo{margin:0 auto 1.25rem;display:block}.auth-title{font-family:var(--font-display);font-size:clamp(1.7rem,4vw,2.1rem);color:var(--rose-3);margin-bottom:1.6rem}.auth-field{margin-bottom:.95rem}.addr-form input,.addr-form textarea,.auth-code-row input,.auth-field input,.buffer-input,.buffer-textarea,.capsule-input,.capsule-textarea,.cloud-caption,.geo-input,.nft-caption-input,.profile-setup-card input{width:100%;padding:.82rem .92rem;border:1px solid var(--line-soft);border-radius:14px;background:hsla(0,0%,100%,.82);color:var(--ink-1);font-size:.97rem;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.addr-form input:focus,.addr-form textarea:focus,.auth-code-row input:focus,.auth-field input:focus,.buffer-input:focus,.buffer-textarea:focus,.capsule-input:focus,.capsule-textarea:focus,.cloud-caption:focus,.geo-input:focus,.nft-caption-input:focus,.profile-setup-card input:focus{border-color:hsla(5,44%,62%,.72);box-shadow:var(--focus-ring);background:hsla(0,0%,100%,.96)}.auth-code-row{display:flex;gap:.6rem;margin-bottom:1.15rem}.auth-code-row input{flex:1 1}.auth-code-row button,.auth-submit,.lang-btn,.logout-btn{border-radius:999px;cursor:pointer}.auth-code-row button{min-width:120px;padding:.82rem 1rem;border:1px solid rgba(188,148,80,.52);background:rgba(255,252,247,.86);color:var(--gold-2);font-size:.84rem;font-weight:600;transition:background-color .18s ease,color .18s ease,transform .18s ease}.auth-code-row button:hover,.buffer-secondary-btn:hover,.geo-btn-secondary:hover,.gf-pill:hover,.match3-restart:hover,.nft-mint-another:hover{background:hsla(38,64%,90%,.95);color:var(--ink-0);transform:translateY(-1px)}.auth-code-row button:disabled,.auth-submit:disabled,.buffer-primary-btn:disabled,.buffer-secondary-btn:disabled,.capsule-btn:disabled,.cloud-upload-btn:disabled,.geo-btn-primary:disabled,.nft-mint-btn:disabled,.spin-go-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.addr-form button,.auth-submit,.buffer-primary-btn,.capsule-btn,.cloud-upload-btn,.geo-btn-primary,.nft-mint-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:.92rem 1.15rem;border:none;background:linear-gradient(135deg,var(--ink-0),var(--rose-3));color:#fffaf4;font-size:.95rem;font-weight:600;letter-spacing:.06em;transition:transform .18s ease,filter .18s ease}.addr-form button:hover,.auth-submit:hover,.buffer-primary-btn:hover,.capsule-btn:hover,.cloud-upload-btn:hover,.geo-btn-primary:hover,.nft-mint-btn:hover{transform:translateY(-1px);filter:brightness(1.04)}.auth-error,.buffer-status.error,.cloud-status.error,.nft-error{color:#8d3b36;background:rgba(189,98,88,.12);border:1px solid rgba(189,98,88,.14)}.auth-error{font-size:.84rem;margin-bottom:.85rem;padding:.62rem .75rem;border-radius:14px}.auth-dev-hint,.buffer-muted,.profile-label,.profile-setup-desc{color:var(--ink-3)}.auth-dev-hint{font-size:.74rem;margin-top:.85rem}.auth-lang-btn{display:block;margin:1rem auto 0;border:none;background:none;color:var(--ink-2);font-size:.84rem;cursor:pointer}.profile-setup-card{max-width:470px}.profile-setup-desc{font-size:.84rem;margin-bottom:1.1rem;line-height:1.65}.profile-label{display:block;text-align:left;font-size:.79rem;margin-bottom:.38rem;letter-spacing:.04em}.live-app{position:relative;min-height:100vh;min-height:100svh;padding-top:calc(var(--top-h) + 1rem);padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom, 0px) + 2rem);background:radial-gradient(circle at 12% 14%,hsla(39,64%,80%,.18),transparent 24%),radial-gradient(circle at 84% 10%,hsla(5,44%,62%,.14),transparent 26%),linear-gradient(180deg,rgba(255,252,247,.72),hsla(32,49%,93%,.48))}.live-app:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(36,24,23,.03),transparent 24%),radial-gradient(circle at 50% 0,hsla(0,0%,100%,.35),transparent 36%);z-index:0}.top-bar{position:fixed;top:0;left:0;right:0;z-index:120;padding:0 1rem}.top-bar-inner{width:min(var(--content-max),100%);height:var(--top-h);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1.15rem;border:1px solid rgba(146,118,88,.16);border-top:none;border-radius:0 0 28px 28px;background:linear-gradient(180deg,rgba(255,252,247,.95),hsla(34,57%,95%,.82));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 40px rgba(58,38,28,.08)}.top-bar-left,.top-bar-right{display:flex;align-items:center;min-width:0}.top-bar-left{gap:.7rem}.top-bar-right{gap:.55rem}.top-bar-title{font-family:var(--font-display);font-size:1.06rem;font-weight:600;color:var(--ink-1);letter-spacing:.05em}.top-bar-email,.top-bar-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-bar-email{font-size:.76rem;color:var(--ink-3);max-width:220px}.lang-btn,.logout-btn{height:2.15rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-soft);border-radius:999px;background:hsla(0,0%,100%,.8);color:var(--ink-2);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.72)}.lang-btn{padding:0 .98rem;font-size:.76rem}.logout-btn{width:2.15rem;font-size:.82rem}.content{position:relative;z-index:1;width:min(var(--content-max),calc(100% - 1.5rem));margin:0 auto;display:grid;grid-gap:1.35rem;gap:1.35rem;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom, 0px) + 1.35rem)}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:120;padding:0 1rem calc(env(safe-area-inset-bottom, 0px) + .8rem)}.bottom-nav-inner{width:min(var(--nav-max),100%);margin:0 auto;padding:.65rem .75rem;display:flex;align-items:stretch;justify-content:center;gap:.55rem;overflow-x:auto;border:1px solid rgba(146,118,88,.16);border-radius:30px;background:linear-gradient(180deg,rgba(255,252,247,.95),hsla(32,55%,94%,.86));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 -16px 34px rgba(58,38,28,.1);scroll-snap-type:x proximity;scroll-padding-inline:.95rem;overscroll-behavior-x:contain;-ms-overflow-style:none;scrollbar-width:none}.nav-item{position:relative;flex:0 0 auto;min-width:108px;padding:.8rem 1rem .76rem;border:1px solid transparent;border-radius:22px;background:transparent;color:var(--ink-3);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.22rem;cursor:pointer;transition:transform .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease;scroll-snap-align:center}.nav-item:hover{transform:translateY(-1px);color:var(--ink-1);background:hsla(0,0%,100%,.62)}.nav-item:after{content:"";position:absolute;left:50%;bottom:.38rem;width:28px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--gold-1),var(--rose-2));transform:translateX(-50%) scaleX(0);opacity:0;transition:transform .18s ease,opacity .18s ease}.nav-item.active{color:var(--rose-3);background:linear-gradient(180deg,hsla(0,0%,100%,.9),hsla(25,55%,94%,.92));border-color:hsla(5,44%,62%,.22);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.9),0 10px 20px rgba(99,62,48,.08)}.nav-item.active:after{transform:translateX(-50%) scaleX(1);opacity:1}.nav-icon{font-size:1.18rem;line-height:1}.nav-label{font-size:.75rem;font-weight:700;letter-spacing:.05em;white-space:nowrap}.section{animation:fadeIn .45s ease}.section-shell{position:relative;overflow:hidden;border:1px solid var(--line-soft);border-radius:var(--radius-xl);background:radial-gradient(circle at top right,hsla(39,64%,80%,.16),transparent 28%),linear-gradient(180deg,rgba(255,252,247,.92),hsla(34,64%,96%,.84));box-shadow:0 24px 56px rgba(70,46,31,.1);padding:clamp(1.2rem,2.2vw,1.85rem)}.section-shell:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(188,148,80,.45),transparent);opacity:.75}.section-head{max-width:46rem;margin:0 auto 1.35rem;text-align:center}.section-head .section-desc{margin-bottom:0}.buffer-card h2,.buffer-title,.lottery-cd-label,.match3-go-title,.mem-title,.prize-congrats,.section-title,.section-title-alt{font-family:var(--font-display)}.section-title{font-size:clamp(1.8rem,3.2vw,2.65rem)}.section-title,.section-title-alt{color:var(--rose-3);font-weight:600;letter-spacing:.08em;text-align:center;margin-bottom:.55rem}.section-title-alt{font-size:clamp(1.55rem,2.8vw,2.2rem)}.section-desc{max-width:42rem;margin:0 auto 1.35rem;text-align:center;color:var(--ink-2);font-size:.96rem;line-height:1.8}.sub-title{font-family:var(--font-display);font-size:1.08rem;color:var(--rose-3);text-align:center;margin-bottom:.75rem}.live-section{display:grid;grid-gap:1.2rem;gap:1.2rem}.live-frame{position:relative;overflow:hidden;border-radius:24px;background:linear-gradient(180deg,#261c1a,#1b1413);box-shadow:var(--shadow-strong)}.live-frame:after{content:"";position:absolute;inset:auto 0 0;height:44%;pointer-events:none;background:linear-gradient(180deg,rgba(18,11,10,0),rgba(18,11,10,.32))}.live-header-badge{position:absolute;top:1rem;left:1rem;z-index:6;display:inline-flex;align-items:center;gap:.4rem;padding:.38rem .8rem;border-radius:999px;background:rgba(0,0,0,.34);border:1px solid hsla(0,0%,100%,.12);color:#fff6ef;font-size:.72rem;font-weight:600;letter-spacing:.12em}.live-dot{width:8px;height:8px;border-radius:50%;background:#f25d59;animation:pulseDot 1.4s ease infinite}.live-player{position:relative;width:100%;aspect-ratio:16/9}.live-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:rgba(255,245,236,.72);text-align:center;padding:1.5rem}.live-placeholder-icon{font-size:2.5rem;margin-bottom:.65rem;opacity:.45}.live-placeholder p{font-size:.95rem}.danmaku-overlay{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:3}.danmaku-item{position:absolute;right:-360px;padding:.34rem .78rem;border-radius:999px;white-space:nowrap;background:rgba(20,13,13,.5);border:1px solid hsla(0,0%,100%,.08);color:rgba(255,247,240,.92);font-size:.78rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:danmaku 11s linear infinite}.danmaku-new{background:hsla(5,44%,62%,.66);animation:danmaku 9s linear 1!important}.danmaku-name{color:#f3d59f;font-weight:700;margin-right:.35rem}.blessing-bar{position:relative;z-index:4;padding:.7rem .9rem .95rem;background:linear-gradient(180deg,rgba(28,20,19,.08),rgba(28,20,19,.75));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bl-send,.blessing-toggle,.sug-chip,.sug-refresh{border-radius:999px}.blessing-toggle{padding:.55rem 1rem;border:1px solid hsla(0,0%,100%,.18);background:hsla(0,0%,100%,.09);color:rgba(255,249,244,.82);font-size:.82rem;cursor:pointer;transition:background-color .18s ease,transform .18s ease}.blessing-toggle:hover,.sug-chip:hover{background:hsla(0,0%,100%,.18);transform:translateY(-1px)}.blessing-expanded{display:flex;flex-direction:column;gap:.5rem}.blessing-suggestions{display:flex;gap:.35rem;overflow-x:auto;padding-bottom:.15rem;-webkit-overflow-scrolling:touch}.blessing-suggestions::-webkit-scrollbar,.bottom-nav-inner::-webkit-scrollbar{display:none}.sug-chip,.sug-refresh{flex-shrink:0;padding:.3rem .65rem;border:1px solid hsla(0,0%,100%,.18);background:hsla(0,0%,100%,.08);color:rgba(255,248,243,.76);font-size:.69rem;cursor:pointer;transition:background-color .18s ease,transform .18s ease}.sug-refresh{color:#f3d59f}.blessing-inputs{display:flex;gap:.35rem;align-items:center}.bl-msg,.bl-name{border:1px solid hsla(0,0%,100%,.14);border-radius:12px;background:hsla(0,0%,100%,.08);color:#fff7f1;padding:.55rem .7rem;font-size:.78rem}.bl-name{width:88px}.bl-msg{flex:1 1}.bl-msg::placeholder,.bl-name::placeholder{color:hsla(0,0%,100%,.42)}.bl-send{padding:.58rem .95rem;background:linear-gradient(135deg,var(--rose-2),var(--rose-3));color:#fff8f1;font-size:.78rem;font-weight:600}.bl-close,.bl-send{border:none;cursor:pointer}.bl-close{padding:.4rem;background:none;color:hsla(0,0%,100%,.48);font-size:.9rem}.section-divider{display:flex;align-items:center;justify-content:center;gap:.7rem}.dv-line{flex:1 1;height:1px;max-width:72px;background:linear-gradient(90deg,transparent,rgba(188,148,80,.85),transparent)}.dv-icon{font-size:.82rem;color:var(--gold-2);opacity:.9}.game-area{padding:1.1rem;border-radius:24px;border:1px solid var(--line-soft);background:linear-gradient(180deg,rgba(255,251,246,.78),hsla(32,59%,94%,.88))}.game-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--ink-1);letter-spacing:.1em;margin-bottom:.8rem;text-align:center}.match3-layout{display:flex;flex-direction:column;gap:.75rem;max-width:520px;margin:0 auto}.match3{width:100%;-moz-user-select:none;user-select:none;-webkit-user-select:none}.capsule-card,.capsule-list,.cloud-gallery-panel,.cloud-upload-card,.geo-card,.geo-map-wrap,.geo-stats,.lottery-prizes,.match3-lb,.nft-credit-bar{border-radius:var(--radius-lg);border:1px solid var(--line-soft);background:var(--surface-soft);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.45)}.match3-lb{padding:.7rem .8rem;display:flex;flex-wrap:wrap;gap:.28rem .55rem;align-items:center}.lb-head{font-family:var(--font-display);font-size:.77rem;font-weight:600;color:var(--ink-1);letter-spacing:.04em;margin-right:.35rem}.lb-head,.lb-row{white-space:nowrap}.lb-row{display:flex;align-items:center;gap:.2rem;padding:.18rem .38rem;border-radius:999px;font-size:.71rem;background:rgba(44,31,29,.04)}.lb-row.lb-me{background:hsla(5,44%,62%,.14);font-weight:700}.lb-rank{font-size:.68rem;flex-shrink:0}.lb-name{color:var(--ink-1);max-width:64px;overflow:hidden;text-overflow:ellipsis}.lb-pts{color:var(--gold-2);font-family:var(--font-display);font-size:.72rem;font-weight:700}.match3-hud{justify-content:space-between;padding:.6rem .8rem;border-radius:18px 18px 0 0;background:linear-gradient(135deg,rgba(36,25,24,.95),rgba(76,55,50,.92));color:#fff9f1}.match3-hud,.match3-stat{display:flex;align-items:center}.match3-stat{flex-direction:column}.match3-stat-label{font-size:.5rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,244,230,.46)}.match3-stat-num{font-family:var(--font-display);font-size:1.25rem;font-weight:600}.match3-combo{font-size:1rem;animation:comboPop .3s ease}.match3-board{display:grid;grid-template-columns:repeat(var(--cols),var(--cell));grid-gap:3px;gap:3px;padding:6px;justify-content:center;position:relative;border-radius:0 0 18px 18px;background:linear-gradient(145deg,hsla(30,41%,87%,.96),hsla(32,49%,93%,.95));touch-action:none;-webkit-touch-callout:none}.match3-cell{width:var(--cell);height:var(--cell);display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(255,253,248,.98);cursor:pointer;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.match3-cell.selected{background:hsla(9,45%,71%,.18);box-shadow:inset 0 0 0 2px rgba(170,95,88,.72)}.match3-cell.matched{background:hsla(39,64%,80%,.9);animation:matchPop .35s ease}.match3-emoji{font-size:clamp(1.1rem,calc(var(--cell) * .55),1.85rem);line-height:1;pointer-events:none}.match3-popup{position:absolute;color:var(--gold-2);font-family:var(--font-display);font-weight:700;font-size:.85rem;pointer-events:none;z-index:5;animation:popFloat .8s ease forwards}.match3-gameover{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:0 0 18px 18px;background:rgba(36,25,24,.88)}.match3-go-card{text-align:center;color:#fff7ee;padding:1.4rem;animation:fadeIn .45s ease}.match3-go-title{font-size:1.45rem;color:var(--gold-1);margin-bottom:.35rem}.match3-go-score{font-family:var(--font-display);font-size:2.2rem;font-weight:700;margin-bottom:.2rem}.match3-go-best{font-size:.76rem;color:rgba(255,245,230,.56);margin-bottom:1rem}.match3-restart{padding:.68rem 1.55rem;border:1px solid hsla(37,54%,66%,.62);border-radius:999px;background:rgba(255,249,241,.09);color:#f3d59f;font-size:.92rem;cursor:pointer;transition:background-color .18s ease,color .18s ease,transform .18s ease}.buffer-opened,.prize-warning{display:inline-flex;align-items:center;justify-content:center;padding:.42rem .95rem;border-radius:999px;background:hsla(5,44%,62%,.11);border:1px solid hsla(5,44%,62%,.18);color:var(--rose-3);font-size:.82rem}.prize-warning{margin:0 auto 1.35rem}.prize-result,.spin-area{text-align:center}.spin-container{display:flex;justify-content:center;margin-bottom:1.4rem}.spin-canvas{width:min(320px,82vw);height:min(320px,82vw);border-radius:50%;box-shadow:0 12px 34px rgba(41,27,20,.12),0 0 0 6px rgba(255,250,244,.86)}.spin-go-btn{display:inline-flex;align-items:center;justify-content:center;width:78px;height:78px;margin:0 auto;border:none;border-radius:50%;background:radial-gradient(circle at 30% 30%,#df9b91,var(--rose-3));color:#fff9f3;font-size:1.15rem;font-weight:700;cursor:pointer;box-shadow:0 14px 32px rgba(170,95,88,.22);transition:transform .18s ease}.spin-go-btn:hover{transform:scale(1.05)}.prize-congrats{font-size:1.75rem;color:var(--gold-2);margin-bottom:.45rem}.prize-won{font-size:1.06rem;color:var(--ink-1);margin-bottom:1.4rem}.prize-won strong{color:var(--rose-3);font-size:1.3rem}.prize-thanks{color:var(--ink-2);margin-top:.9rem}.addr-form{max-width:420px;margin:0 auto;text-align:left}.addr-title{font-family:var(--font-display);font-size:1rem;color:var(--ink-1);text-align:center;margin-bottom:.8rem}.addr-form textarea{min-height:92px;resize:vertical}.addr-form button{margin-top:.35rem}.addr-done{padding:1rem;border-radius:18px;background:hsla(5,44%,62%,.12);color:var(--rose-3)}.lottery-status-card{border-radius:var(--radius-lg);padding:2rem 1.5rem;text-align:center;margin-bottom:1.4rem;background:linear-gradient(135deg,rgba(35,24,22,.96),rgba(81,56,51,.92));color:#fff8f0;box-shadow:var(--shadow-strong)}.lottery-cd-label{font-size:1.35rem;color:var(--gold-1);margin-bottom:1rem}.lottery-cd{display:flex;justify-content:center;gap:clamp(1rem,3vw,2rem)}.cd-unit{display:flex;flex-direction:column;align-items:center}.cd-num{font-family:var(--font-display);font-size:clamp(1.9rem,5vw,2.65rem);font-weight:500;min-width:44px}.cd-txt{margin-top:.2rem;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,245,230,.48)}.lottery-entrant-info{margin-top:1.2rem;padding-top:1rem;border-top:1px solid hsla(0,0%,100%,.08)}.lottery-user-badge{font-size:.8rem;color:var(--gold-1);letter-spacing:.05em}.lottery-waiting{text-align:center;padding:2.2rem 1rem;color:var(--ink-2)}.lottery-waiting-icon{font-size:2.4rem;margin-bottom:.75rem;opacity:.4}.lottery-prizes{padding:.95rem 1rem;margin-bottom:1rem}.capsule-list-title,.geo-stats-title,.lottery-prizes-title,.nft-gallery-title{font-family:var(--font-display);font-size:.9rem;font-weight:600;color:var(--ink-1);letter-spacing:.08em;margin-bottom:.6rem}.geo-stat-row,.lottery-prize-row{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.46rem 0;border-bottom:1px solid rgba(164,128,94,.12)}.geo-stat-row:last-child,.lottery-prize-row:last-child{border-bottom:none}.lottery-prize-name{font-size:.88rem;color:var(--ink-1)}.lottery-prize-count{font-size:.84rem;color:var(--gold-2);font-weight:700}.nft-credit-bar{padding:1rem 1.1rem;margin-bottom:1.25rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem 1rem;font-size:.92rem}.nft-credit-bar strong{color:var(--gold-2);font-size:1.2rem}.nft-howto{flex-basis:100%;color:var(--ink-3);font-size:.76rem}.nft-no-credits{padding:2rem;text-align:center;color:var(--ink-2);border-radius:var(--radius-lg);border:1px dashed rgba(164,128,94,.32);background:rgba(255,251,246,.72)}.buffer-status,.cloud-status,.nft-error{margin-top:.7rem;padding:.55rem .75rem;border-radius:14px;font-size:.83rem}.nft-form{gap:.85rem;max-width:420px;margin:0 auto}.cloud-upload-area,.nft-form,.nft-upload-area{display:flex;flex-direction:column;align-items:center}.cloud-upload-area,.nft-upload-area{justify-content:center;gap:.3rem;width:100%;min-height:160px;border-radius:18px;border:1.5px dashed rgba(164,128,94,.3);background:linear-gradient(180deg,hsla(0,0%,100%,.88),hsla(34,57%,95%,.9));color:var(--ink-2);cursor:pointer;transition:border-color .18s ease,transform .18s ease,background-color .18s ease}.cloud-upload-area:hover,.nft-upload-area:hover{border-color:hsla(5,44%,62%,.58);transform:translateY(-1px)}.cloud-upload-icon,.nft-upload-icon{font-size:2rem}.cloud-preview,.nft-preview{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:18px}.cloud-item img,.cloud-preview img,.nft-card img,.nft-mini-card img,.nft-preview img{width:100%;height:100%;object-fit:cover;display:block}.cloud-preview-close,.lightbox-close,.lightbox-nav,.nft-change{display:inline-flex;align-items:center;justify-content:center;border-radius:50%}.cloud-preview-close,.nft-change{position:absolute;top:.6rem;right:.6rem;width:2rem;height:2rem;border:none;background:rgba(20,13,13,.48);color:#fff8f1;cursor:pointer}.nft-mint-btn{padding-inline:1.6rem;background:linear-gradient(135deg,var(--gold-2),var(--rose-3));box-shadow:0 14px 28px rgba(188,148,80,.18)}.nft-result{text-align:center}.nft-card{max-width:320px;margin:0 auto 1.1rem;border-radius:22px;overflow:hidden;border:1px solid hsla(37,54%,66%,.48);background:linear-gradient(180deg,rgba(36,25,24,.98),rgba(58,41,37,.94));box-shadow:var(--shadow-strong)}.nft-card-brand-top{padding:.65rem .8rem;text-align:center;color:var(--gold-1);font-size:.62rem;letter-spacing:.18em}.nft-card-info{padding:.95rem 1rem;text-align:center;color:#fff9f1}.nft-card-caption{font-size:.94rem;margin-bottom:.35rem}.nft-card-id,.nft-mini-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.nft-card-id{font-size:.72rem;color:var(--gold-1);margin-bottom:.45rem}.nft-card-badge{border-top:1px solid hsla(37,54%,66%,.22);padding-top:.5rem;font-size:.68rem;color:var(--gold-0);letter-spacing:.08em}.nft-done-text{font-family:var(--font-display);font-size:1.35rem;color:var(--gold-2)}.nft-mint-another{margin-top:1rem;padding:.65rem 1.5rem;border:1px solid rgba(188,148,80,.52);border-radius:999px;background:rgba(255,252,247,.8);color:var(--gold-2);cursor:pointer;transition:background-color .18s ease,transform .18s ease}.nft-gallery{margin-bottom:1.4rem}.nft-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:.75rem;gap:.75rem}.cloud-item,.nft-mini-card{overflow:hidden;border-radius:18px;border:1px solid rgba(164,128,94,.18);background:linear-gradient(180deg,rgba(36,25,24,.96),rgba(58,41,37,.92));box-shadow:0 12px 28px rgba(41,27,20,.08)}.nft-mini-card{transition:transform .18s ease,box-shadow .18s ease}.nft-mini-card:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(41,27,20,.12)}.cloud-meta,.nft-mini-info{padding:.55rem .65rem;color:#fff8f0}.cloud-caption-text,.nft-mini-caption{font-size:.74rem;line-height:1.45}.cloud-user,.nft-mini-id{margin-top:.22rem;font-size:.63rem;color:var(--gold-1)}.memories-section{animation:fadeIn .5s ease}.mem-header{text-align:center;margin-bottom:1.25rem}.mem-header-icon{font-size:.72rem;color:var(--gold-2);letter-spacing:.32em;margin-bottom:.45rem}.mem-title{font-size:clamp(1.8rem,3.2vw,2.4rem);color:var(--rose-3);margin-bottom:.45rem}.mem-subtitle{color:var(--ink-2);font-size:.9rem;line-height:1.7}.doc-player{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:24px;background:linear-gradient(135deg,#241918,#3a2925 60%,#241918);box-shadow:var(--shadow-strong);margin-bottom:1.2rem}.doc-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:rgba(255,244,229,.76);text-align:center}.doc-placeholder-play{width:58px;height:58px;margin-bottom:.8rem;border:1px solid hsla(37,54%,66%,.55);background:hsla(0,0%,100%,.08);font-size:1.2rem;color:var(--gold-1);cursor:default;padding-left:3px;transition:transform .18s ease,background-color .18s ease}.doc-placeholder-text{font-family:var(--font-display);font-size:1rem;letter-spacing:.08em;margin-bottom:.3rem}.doc-placeholder-hint{font-size:.74rem;color:rgba(255,244,229,.38);letter-spacing:.15em}.mem-divider{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:1rem 0 1.15rem;padding:0 .5rem}.mem-dv-line{flex:1 1;max-width:68px;height:1px;background:linear-gradient(90deg,transparent,rgba(188,148,80,.7),transparent)}.mem-dv-dot{width:5px;height:5px;border-radius:50%;background:var(--gold-2)}.mem-dv-label{font-family:var(--font-display);font-size:.82rem;font-weight:600;color:var(--ink-1);letter-spacing:.12em;white-space:nowrap}.gallery-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem;margin-bottom:1rem}.gf-pill{padding:.42rem .82rem;border:1px solid var(--line-soft);border-radius:999px;background:hsla(0,0%,100%,.75);color:var(--ink-2);font-size:.74rem;font-weight:600;cursor:pointer;transition:background-color .18s ease,color .18s ease,transform .18s ease}.gf-pill.active{background:linear-gradient(135deg,var(--ink-0),var(--rose-3));color:#fff8f1;border-color:transparent}.gallery-empty,.gallery-loading{text-align:center;padding:3rem 1rem;color:var(--ink-2)}.gallery-loading-spinner{width:26px;height:26px;border:2px solid rgba(164,128,94,.18);border-top:2px solid var(--rose-3);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto .8rem}.gallery-empty-frame{width:84px;height:68px;margin:0 auto .8rem;border:1.5px dashed rgba(164,128,94,.28);border-radius:18px;display:flex;align-items:center;justify-content:center}.gallery-empty-icon{font-size:1.5rem;opacity:.35}.gallery-empty-text{font-size:.88rem}.gallery-masonry{column-count:2;column-gap:.7rem}.gallery-item{page-break-inside:avoid;break-inside:avoid;width:100%;margin-bottom:.7rem;padding:0;border:none;border-radius:20px;overflow:hidden;background:none;cursor:pointer;position:relative;box-shadow:0 16px 32px rgba(41,27,20,.08);transition:transform .22s ease,box-shadow .22s ease}.gallery-item:hover{transform:translateY(-3px);box-shadow:0 22px 38px rgba(41,27,20,.12)}.gallery-item img{width:100%;display:block;transition:transform .35s ease}.gallery-item:hover img{transform:scale(1.03)}.gallery-item-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(44,31,29,0),rgba(44,31,29,.18));transition:background-color .22s ease}.gallery-item:hover .gallery-item-overlay{background:linear-gradient(180deg,rgba(44,31,29,.02),rgba(44,31,29,.24))}.gallery-item-zoom{width:36px;height:36px;border-radius:50%;background:hsla(0,0%,100%,.9);color:var(--ink-0);font-size:1.1rem;font-weight:300;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.74);transition:opacity .22s ease,transform .22s ease}.gallery-item:hover .gallery-item-zoom{opacity:1;transform:scale(1)}.gallery-item-caption{position:absolute;left:0;right:0;bottom:0;padding:.55rem .7rem;background:linear-gradient(transparent,rgba(17,11,11,.66));color:#fff7ef;font-size:.74rem;text-align:center}.gallery-count{margin-top:.85rem;text-align:center;color:var(--ink-3);font-size:.73rem;letter-spacing:.1em}.lightbox{position:fixed;inset:0;z-index:240;justify-content:center;padding:1rem;background:rgba(11,8,8,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lightbox,.lightbox-content{display:flex;align-items:center}.lightbox-content{position:relative;max-width:90vw;max-height:86vh;flex-direction:column}.lightbox-content img{max-width:100%;max-height:75vh;border-radius:22px;display:block;box-shadow:0 18px 48px rgba(0,0,0,.28)}.lightbox-caption{margin-top:.85rem;color:rgba(255,245,230,.78);font-size:.86rem}.lightbox-close{top:-1rem;right:-1rem;width:36px;height:36px;background:hsla(0,0%,100%,.14);font-size:1rem}.lightbox-close,.lightbox-nav{position:absolute;border:none;color:#fff8f1;cursor:pointer}.lightbox-nav{top:50%;width:42px;height:42px;background:hsla(0,0%,100%,.12);font-size:1.55rem;transform:translateY(-50%)}.lightbox-prev{left:-3.6rem}.lightbox-next{right:-3.6rem}.lightbox-counter{position:absolute;bottom:-1.9rem;color:rgba(255,245,230,.45);font-size:.72rem;letter-spacing:.15em}.module-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;margin-bottom:.8rem}.module-panel-copy{min-width:0}.module-panel-kicker{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .65rem;border-radius:999px;border:1px solid rgba(188,148,80,.22);background:hsla(0,0%,100%,.66);color:var(--gold-2);font-size:.68rem;font-weight:700;letter-spacing:.12em}.module-panel-title{margin-top:.45rem;font-family:var(--font-display);font-size:clamp(1.02rem,2vw,1.28rem);color:var(--ink-1);line-height:1.25}.module-panel-desc{margin-top:.32rem;color:var(--ink-2);font-size:.82rem;line-height:1.65;max-width:30rem}.module-panel-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.38rem .72rem;border-radius:999px;background:linear-gradient(180deg,hsla(0,0%,100%,.92),hsla(32,54%,93%,.88));border:1px solid rgba(188,148,80,.18);color:var(--ink-2);font-size:.72rem;font-weight:700;letter-spacing:.04em}.module-inline-note{margin-top:.72rem;color:var(--ink-3);font-size:.78rem;line-height:1.62}.capsule-layout,.cloud-layout,.geo-layout{display:grid;grid-gap:1rem;gap:1rem}.capsule-card,.capsule-list,.cloud-gallery-panel,.cloud-upload-card,.geo-card,.geo-map-wrap,.geo-stats{padding:1rem;background:linear-gradient(180deg,hsla(0,0%,100%,.84),hsla(32,60%,95%,.78))}.capsule-card,.cloud-upload-card,.geo-card{box-shadow:0 18px 36px rgba(76,49,33,.06)}.capsule-list,.cloud-gallery-panel,.geo-stats{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.52)}.geo-map-wrap{position:relative;overflow:hidden}.capsule-btn,.cloud-caption,.cloud-upload-btn,.geo-actions{margin-top:.75rem}.cloud-gallery-panel,.cloud-upload-card{min-height:100%}.buffer-status.ok,.cloud-status.ok{color:#356647;background:rgba(102,175,125,.12);border:1px solid rgba(102,175,125,.14)}.cloud-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:.8rem;gap:.8rem}.cloud-item img{aspect-ratio:4/3}.geo-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.6rem;gap:.6rem}.geo-actions{display:flex;gap:.6rem}.buffer-primary-btn,.buffer-secondary-btn,.geo-btn-primary,.geo-btn-secondary{border-radius:999px}.buffer-secondary-btn,.geo-btn-secondary,.nft-mint-another{display:inline-flex;align-items:center;justify-content:center;padding:.82rem 1rem;border:1px solid rgba(188,148,80,.32);background:hsla(0,0%,100%,.76);color:var(--ink-2);cursor:pointer;font-size:.9rem;font-weight:600;transition:background-color .18s ease,transform .18s ease,color .18s ease}.geo-map{position:relative;height:clamp(340px,36vw,412px);overflow:hidden;border-radius:24px;border:1px solid rgba(120,216,255,.24);background:radial-gradient(circle at 18% 18%,rgba(87,163,214,.16),transparent 26%),radial-gradient(circle at 82% 14%,rgba(103,243,208,.12),transparent 24%),radial-gradient(circle at 50% 110%,rgba(120,176,255,.24),transparent 44%),linear-gradient(180deg,#07121d,#081522 48%,#040b12);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.04),inset 0 -110px 140px rgba(2,8,15,.48),0 24px 48px rgba(8,15,24,.28);isolation:isolate}.geo-map:before{inset:-6% -2% 40%;z-index:1;background:radial-gradient(circle at 50% 120%,rgba(125,177,255,.32),transparent 46%),radial-gradient(circle at 50% 0,rgba(221,241,255,.09),transparent 62%);filter:blur(12px);opacity:.9}.geo-map:after,.geo-map:before{content:"";position:absolute;pointer-events:none}.geo-map:after{inset:0;z-index:8;background:linear-gradient(180deg,hsla(0,0%,100%,.08),transparent 14%,transparent 76%,rgba(2,7,12,.42)),radial-gradient(circle at 50% 52%,transparent 56%,rgba(3,7,13,.24) 88%);box-shadow:inset 0 0 80px rgba(3,7,13,.46)}.geo-legend{display:flex;flex-wrap:wrap;gap:.45rem .8rem;margin-bottom:.9rem}.geo-legend-item{display:inline-flex;align-items:center;gap:.42rem;padding:.34rem .68rem;border:1px solid rgba(127,187,223,.12);border-radius:999px;background:rgba(11,21,34,.04);color:var(--ink-2);font-size:.74rem;letter-spacing:.02em}.geo-legend-dot{width:10px;height:10px;border-radius:50%;background:#ff847e;box-shadow:0 0 0 4px hsla(3,100%,75%,.12),0 0 12px hsla(3,100%,75%,.28)}.geo-legend-dot.me{background:#5ef3b4;box-shadow:0 0 0 4px rgba(94,243,180,.15),0 0 12px rgba(94,243,180,.32)}.geo-legend-dot.venue{background:#f3d58a;box-shadow:0 0 0 4px hsla(43,81%,75%,.12),0 0 14px hsla(43,81%,75%,.36)}.geo-aurora,.geo-grid-overlay,.geo-routes,.geo-scan,.geo-world{position:absolute;inset:0;pointer-events:none}.geo-world{z-index:2;width:100%;height:100%;object-fit:cover;opacity:.95;mix-blend-mode:screen;filter:saturate(1.08) contrast(1.08) brightness(.95) drop-shadow(0 18px 28px rgba(0,0,0,.25));transform:scale(1.018)}.geo-routes{z-index:6;width:100%;height:100%;overflow:visible}.geo-route-glow,.geo-route-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.geo-route-glow{stroke:rgba(121,214,255,.14);stroke-width:.56;filter:blur(.18px)}.geo-route-line{stroke:rgba(152,228,255,.44);stroke-width:.24;stroke-dasharray:1.2 1.8 9 1.8;animation:geoRouteFlow 7.8s linear infinite;animation-delay:var(--route-delay,0s)}.geo-route.me .geo-route-glow{stroke:rgba(132,255,201,.22)}.geo-route.me .geo-route-line{stroke:rgba(165,255,221,.7)}.geo-aurora{z-index:3;inset:-24%;background:radial-gradient(circle at 14% 20%,rgba(121,221,255,.14),transparent 22%),radial-gradient(circle at 82% 22%,rgba(111,244,214,.14),transparent 24%),radial-gradient(circle at 50% 108%,rgba(107,154,255,.26),transparent 34%);filter:blur(26px);opacity:.88}.geo-scan{z-index:5;inset:-35%;background:conic-gradient(from 12deg,transparent 0deg,rgba(110,206,255,.22) 24deg,rgba(110,206,255,.04) 44deg,transparent 66deg,transparent 1turn);animation:geoSweep 18s linear infinite;opacity:.55;mix-blend-mode:screen}.geo-grid-overlay{z-index:4;background-image:linear-gradient(90deg,rgba(120,216,255,.08) 1px,transparent 0),linear-gradient(180deg,rgba(120,216,255,.08) 1px,transparent 0),linear-gradient(90deg,transparent 0,transparent calc(50% - 1px),rgba(207,237,255,.16) calc(50% - 1px),rgba(207,237,255,.16) calc(50% + 1px),transparent calc(50% + 1px));background-size:8.333% 11.11%,8.333% 11.11%,100% 100%;opacity:.3;-webkit-mask-image:radial-gradient(circle at 50% 52%,#000 58%,rgba(0,0,0,.65) 100%);mask-image:radial-gradient(circle at 50% 52%,#000 58%,rgba(0,0,0,.65) 100%)}.geo-marker{position:absolute;display:inline-flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);z-index:7;pointer-events:auto}.geo-marker.venue{z-index:8}.geo-dot{width:10px;height:10px;border-radius:50%;border:1px solid rgba(240,249,255,.75);background:linear-gradient(180deg,#ffb8ab,#ff7667);box-shadow:0 0 0 4px hsla(3,100%,75%,.12),0 0 18px hsla(3,100%,75%,.72),0 0 36px hsla(3,100%,75%,.24);transition:transform .18s ease,box-shadow .18s ease}.geo-dot,.geo-venue-beacon{position:relative;display:block}.geo-venue-beacon{width:14px;height:14px;border-radius:50%;border:1px solid rgba(255,251,233,.86);background:radial-gradient(circle at 35% 35%,#fff2c6,#f1c96a 60%,#c8912f 100%);box-shadow:0 0 0 6px hsla(42,83%,68%,.14),0 0 24px hsla(42,83%,68%,.75),0 0 54px hsla(42,83%,68%,.26);z-index:7}.geo-venue-beacon:before{content:"";position:absolute;inset:-12px;border-radius:50%;border:1px solid hsla(43,81%,75%,.52);animation:geoPulse 3.2s ease-out infinite}.geo-venue-beacon:after{content:none}.geo-dot:before{content:"";position:absolute;inset:-9px;border-radius:50%;border:1px solid hsla(9,100%,80%,.75);animation:geoPulse 2.4s ease-out infinite}.geo-marker-label{position:absolute;background:linear-gradient(180deg,rgba(6,12,20,.96),rgba(10,18,28,.92));border:1px solid rgba(120,216,255,.28);box-shadow:0 12px 28px rgba(1,6,12,.38);color:#e9f7ff;padding:.36rem .55rem;border-radius:10px;white-space:nowrap;font-size:.68rem;line-height:1.3;letter-spacing:.03em;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.geo-marker.dock-top .geo-marker-label{left:50%;bottom:calc(100% + 12px);transform:translateX(-50%) translateY(3px)}.geo-marker.dock-bottom .geo-marker-label{left:50%;top:calc(100% + 12px);transform:translateX(-50%) translateY(-3px)}.geo-marker.dock-left .geo-marker-label{right:calc(100% + 12px);top:50%;transform:translateY(-50%) translateX(3px);text-align:right}.geo-marker.dock-right .geo-marker-label{left:calc(100% + 12px);top:50%;transform:translateY(-50%) translateX(-3px)}.geo-marker:focus-visible .geo-dot,.geo-marker:hover .geo-dot{transform:scale(1.12)}.geo-marker.venue .geo-marker-label,.geo-marker:focus-visible .geo-marker-label,.geo-marker:hover .geo-marker-label{opacity:1}.geo-marker.dock-top.venue .geo-marker-label,.geo-marker.dock-top:focus-visible .geo-marker-label,.geo-marker.dock-top:hover .geo-marker-label{transform:translateX(-50%) translateY(0)}.geo-marker.dock-bottom.venue .geo-marker-label,.geo-marker.dock-bottom:focus-visible .geo-marker-label,.geo-marker.dock-bottom:hover .geo-marker-label{transform:translateX(-50%) translateY(0)}.geo-marker.dock-left.venue .geo-marker-label,.geo-marker.dock-left:focus-visible .geo-marker-label,.geo-marker.dock-left:hover .geo-marker-label{transform:translateY(-50%) translateX(0)}.geo-marker.dock-right.venue .geo-marker-label,.geo-marker.dock-right:focus-visible .geo-marker-label,.geo-marker.dock-right:hover .geo-marker-label{transform:translateY(-50%) translateX(0)}.geo-marker-label-static{border-color:hsla(43,81%,75%,.26);color:#f7dfaa;box-shadow:0 10px 24px rgba(1,6,12,.34)}.geo-dot.me{width:11px;height:11px;background:linear-gradient(180deg,#baffdc,#4bf1b0);box-shadow:0 0 0 4px rgba(94,243,180,.18),0 0 18px rgba(94,243,180,.68),0 0 40px rgba(94,243,180,.28)}.geo-dot.me:before{border-color:rgba(94,243,180,.8)}.geo-count{width:-moz-fit-content;width:fit-content;margin:.85rem auto 0;padding:.5rem .9rem;border:1px solid rgba(125,177,218,.18);border-radius:999px;background:rgba(10,18,28,.04);text-align:center;color:#5b7383;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.geo-empty{font-size:.84rem;color:var(--ink-2)}.capsule-label{display:block;font-size:.78rem;color:var(--ink-3);margin-bottom:.32rem;letter-spacing:.05em}.capsule-counter{margin-top:.2rem;text-align:right;color:var(--ink-3);font-size:.73rem}.capsule-item{padding:.65rem 0;border-bottom:1px solid rgba(164,128,94,.12)}.capsule-item:last-child{border-bottom:none}.capsule-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.45rem;color:var(--ink-3);font-size:.76rem;margin-bottom:.32rem}.capsule-item-meta{display:flex;align-items:center;gap:.42rem;flex-wrap:wrap;justify-content:flex-end}.capsule-state-pill{display:inline-flex;align-items:center;justify-content:center;min-height:1.5rem;padding:.22rem .52rem;border-radius:999px;font-size:.66rem;font-weight:700;letter-spacing:.05em}.capsule-state-pill.pending{background:hsla(37,54%,66%,.16);color:var(--gold-2)}.capsule-state-pill.ready{background:rgba(102,175,125,.14);color:#356647}.capsule-state-pill.invalid{background:hsla(5,44%,62%,.14);color:var(--rose-3)}.capsule-item p{color:var(--ink-1);font-size:.88rem;line-height:1.6;word-break:break-word}.buffer-page{min-height:100vh;position:relative;overflow:hidden;padding:clamp(1rem,2vw,1.8rem);background:radial-gradient(circle at 16% 10%,hsla(39,64%,80%,.3),transparent 34%),radial-gradient(circle at 82% 12%,hsla(5,44%,62%,.18),transparent 30%),linear-gradient(180deg,#fffdf8,#f8f0e6 38%,#efe0ce)}.buffer-page:before{background-image:linear-gradient(120deg,hsla(0,0%,100%,.26),hsla(0,0%,100%,0) 32%),radial-gradient(circle at 60% 100%,hsla(0,0%,100%,.3),transparent 55%)}.buffer-page:after,.buffer-page:before{content:"";position:absolute;inset:0;pointer-events:none}.buffer-page:after{background:linear-gradient(180deg,rgba(30,19,18,.04),transparent 18%),radial-gradient(circle at 50% 0,hsla(0,0%,100%,.26),transparent 34%)}.buffer-orb{position:absolute;border-radius:50%;filter:blur(2px);animation:floatSlow 11s ease-in-out infinite;pointer-events:none}.buffer-orb-left{width:220px;height:220px;left:-80px;top:14%;background:radial-gradient(circle,hsla(29,65%,88%,.82),hsla(29,65%,88%,0) 72%)}.buffer-orb-right{width:240px;height:240px;right:-92px;bottom:10%;background:radial-gradient(circle,hsla(17,53%,87%,.8),hsla(17,53%,87%,0) 72%);animation-delay:1.5s}.buffer-shell{position:relative;z-index:1;width:min(1160px,100%);margin:0 auto;display:grid;grid-gap:1.35rem;gap:1.35rem}.buffer-card,.buffer-hero-card{border-radius:var(--radius-xl);border:1px solid rgba(164,128,94,.2);background:linear-gradient(180deg,rgba(255,252,247,.9),hsla(33,69%,95%,.84));box-shadow:var(--shadow-surface)}.buffer-hero-card{position:relative;isolation:isolate;overflow:hidden;padding:clamp(1.4rem,3vw,2.15rem);border-color:hsla(37,54%,66%,.22);background:linear-gradient(110deg,rgba(26,18,17,.88),rgba(49,32,29,.76) 42%,rgba(255,248,241,.26)),url(/images/hero.jpg) center 34% /cover no-repeat;box-shadow:0 38px 88px rgba(50,32,24,.18)}.buffer-hero-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 30%,rgba(255,237,204,.16),transparent 28%),linear-gradient(180deg,rgba(14,9,8,.12),rgba(14,9,8,.42));z-index:-1}.buffer-hero-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.8rem}.buffer-logo{display:block;filter:drop-shadow(0 10px 24px rgba(0,0,0,.22))}.buffer-lang-toggle{border:1px solid rgba(255,232,197,.2);background:hsla(0,0%,100%,.08);color:rgba(255,248,240,.86);border-radius:999px;padding:.45rem .95rem;cursor:pointer;font-size:.8rem;font-weight:600;letter-spacing:.06em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.buffer-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);grid-gap:1.2rem;gap:1.2rem;align-items:end}.buffer-hero-copy{text-align:left}.buffer-card-kicker,.buffer-kicker,.buffer-panel-kicker{display:inline-flex;align-items:center;justify-content:center;padding:.34rem .8rem;border-radius:999px;border:1px solid rgba(188,148,80,.36);color:var(--gold-2);font-size:.73rem;font-weight:600;letter-spacing:.14em}.buffer-kicker{margin-bottom:.85rem;border-color:rgba(255,226,181,.28);background:hsla(0,0%,100%,.08);color:#f0d3a0}.buffer-title{font-size:clamp(2rem,4.1vw,3.6rem);color:#fff8f0;letter-spacing:.02em;line-height:1.15;margin-bottom:.85rem;text-shadow:0 12px 32px rgba(0,0,0,.18)}.buffer-desc{max-width:34rem;color:rgba(255,246,238,.84);font-size:clamp(.98rem,1.5vw,1.08rem);line-height:1.85;margin-bottom:1.4rem}.buffer-hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}.buffer-hero-btn{width:auto;min-width:190px}.buffer-hero-panel{padding:1.2rem;border-radius:24px;border:1px solid rgba(255,226,181,.16);background:linear-gradient(180deg,rgba(28,20,19,.52),rgba(28,20,19,.78)),linear-gradient(180deg,hsla(0,0%,100%,.08),hsla(34,57%,95%,.12));box-shadow:inset 0 1px 0 hsla(0,0%,100%,.12),0 24px 44px rgba(15,9,8,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.buffer-panel-kicker{margin-bottom:.9rem;border-color:rgba(255,226,181,.18);color:#f0d3a0;background:hsla(0,0%,100%,.08)}.buffer-countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.65rem;gap:.65rem;margin-bottom:1rem}.buffer-unit{padding:.88rem .6rem;border-radius:18px;border:1px solid rgba(255,226,181,.12);background:hsla(0,0%,100%,.08);text-align:center}.buffer-unit span{display:block;font-family:var(--font-display);color:#fff8f1;font-size:clamp(1.6rem,3.2vw,2.3rem);line-height:1;letter-spacing:.04em}.buffer-unit small{display:block;margin-top:.32rem;color:rgba(255,232,197,.78);font-size:.74rem;letter-spacing:.16em}.buffer-time-line{color:rgba(255,244,233,.82);font-size:.84rem;line-height:1.7}.buffer-time-line p+p{margin-top:.22rem}.buffer-opened{margin-top:1rem}.buffer-priority-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-gap:1rem;gap:1rem}.buffer-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.buffer-grid{display:grid;grid-template-columns:1fr}.buffer-card{padding:1.3rem;box-shadow:0 24px 56px rgba(64,42,29,.08)}.buffer-card-kicker{margin-bottom:.75rem}.buffer-card h2{font-size:clamp(1.45rem,2.3vw,2rem);color:var(--ink-1);margin-bottom:.5rem}.buffer-card-desc{color:var(--ink-2);font-size:.93rem;line-height:1.8;margin-bottom:.95rem}.buffer-register-card{border-color:hsla(5,44%,62%,.2);background:linear-gradient(140deg,rgba(255,252,247,.96),hsla(33,55%,92%,.92));box-shadow:0 26px 58px rgba(83,51,37,.1)}.buffer-feature-card,.buffer-tool-card,.buffer-wish-card{min-height:100%}.buffer-label{display:block;color:var(--ink-3);font-size:.8rem;letter-spacing:.06em;margin-bottom:.36rem}.buffer-top-space{margin-top:.8rem}.buffer-check-list,.buffer-entry-list,.buffer-reminder-row,.buffer-wish-form{display:grid;grid-gap:.55rem;gap:.55rem}.buffer-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.55rem;gap:.55rem;margin-top:.42rem;margin-bottom:.7rem}.buffer-primary-btn,.buffer-secondary-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.86rem 1rem;border-radius:999px;font-size:.92rem;font-weight:600}.buffer-primary-btn{border:1px solid hsla(5,44%,62%,.2);background:linear-gradient(135deg,#c97a73,#a85f59);color:#fff8f1;box-shadow:0 16px 30px rgba(169,92,84,.22)}.buffer-secondary-btn{background:hsla(0,0%,100%,.78);border:1px solid rgba(188,148,80,.32);color:var(--ink-2)}.buffer-hero-card .buffer-secondary-btn{background:hsla(0,0%,100%,.08);border-color:rgba(255,232,197,.18);color:rgba(255,245,235,.88)}.buffer-success-box{border-radius:20px;border:1px solid rgba(188,148,80,.18);background:hsla(0,0%,100%,.72);padding:1rem;text-align:left}.buffer-success-title{color:var(--ink-1);font-size:.96rem;font-weight:700;margin-bottom:.2rem}.buffer-samples{display:flex;flex-wrap:wrap;gap:.45rem;margin:.2rem 0 .45rem}.buffer-samples button{border:1px solid rgba(188,148,80,.24);background:hsla(0,0%,100%,.74);color:var(--ink-2);padding:.38rem .66rem;border-radius:999px;font-size:.77rem;cursor:pointer;transition:background-color .18s ease,color .18s ease,transform .18s ease}.buffer-wish-list{list-style:none;margin-top:1rem;display:grid;grid-gap:.6rem;gap:.6rem;max-height:340px;overflow:auto;padding-right:.2rem}.buffer-empty,.buffer-wish-item{border-radius:18px;border:1px solid rgba(164,128,94,.14);background:hsla(0,0%,100%,.76)}.buffer-wish-item{padding:.75rem .8rem}.buffer-empty{padding:1rem .9rem;color:var(--ink-3);font-size:.84rem;text-align:center}.buffer-wish-head{display:flex;justify-content:space-between;align-items:center;gap:.65rem;margin-bottom:.22rem}.buffer-wish-head strong{color:var(--ink-1);font-size:.92rem}.buffer-wish-head span{color:var(--ink-3);font-size:.72rem;white-space:nowrap}.buffer-wish-item p{color:var(--ink-2);font-size:.87rem;line-height:1.62;word-break:break-word}.prize-loading{padding:3rem;text-align:center;color:var(--ink-2);font-size:1rem}@media (min-width:1024px){.live-section{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);align-items:start}.section-divider{display:none}.game-area{position:-webkit-sticky;position:sticky;top:calc(var(--top-h) + 1.1rem)}.cloud-layout{grid-template-columns:minmax(320px,380px) minmax(0,1fr);align-items:start}.geo-layout{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:start}.capsule-layout{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:start}.gallery-masonry{column-count:3}}@media (max-width:900px){.buffer-hero-grid,.buffer-priority-grid,.buffer-tools-grid{grid-template-columns:1fr}.buffer-hero-copy{text-align:center}.buffer-hero-actions{justify-content:center}}@media (max-width:760px){:root{--top-h:70px;--nav-h:96px}.bottom-nav,.top-bar{padding-inline:.75rem}.top-bar-inner{padding-inline:.85rem;border-radius:0 0 18px 18px;gap:.7rem}.top-bar-right{gap:.42rem}.content{width:min(100%,calc(100% - 1rem))}.bottom-nav-inner{justify-content:flex-start;padding:.58rem}.nav-item{min-width:96px;padding:.76rem .85rem .72rem}.capsule-layout,.cloud-layout,.geo-layout{grid-template-columns:1fr}.gallery-masonry{column-count:2}.live-section{gap:1rem}.addr-form,.match3-layout,.nft-form{max-width:100%}.geo-map{height:304px}.geo-route-glow{stroke-width:.42}.geo-route-line{stroke-width:.18}.geo-marker:not(.venue) .geo-marker-label{display:none}.geo-marker-label-static{max-width:min(46vw,160px);white-space:normal;text-align:center}.lottery-cd{gap:.85rem}.lightbox-prev{left:.3rem}.lightbox-next{right:.3rem}.lightbox-nav{width:36px;height:36px;background:rgba(0,0,0,.42)}}@media (max-width:520px){.welcome-overlay:after{inset:1rem;border-radius:24px}.auth-card,.buffer-card,.buffer-hero-card,.section-shell,.welcome-content{border-radius:20px}.content{width:calc(100% - .8rem)}.top-bar-email{display:none}.buffer-page{padding:.8rem}.buffer-hero-topline{flex-wrap:wrap;align-items:center}.buffer-logo{width:76px;height:auto}.buffer-countdown{grid-template-columns:repeat(2,minmax(0,1fr))}.module-panel-head{flex-direction:column;gap:.55rem}.module-panel-badge{align-self:flex-start}.buffer-code-row{grid-template-columns:1fr}.buffer-hero-btn{width:100%;min-width:0}.buffer-primary-btn,.buffer-secondary-btn{width:100%}.buffer-time-line{font-size:.8rem}.buffer-hero-card{background-position:center 30%}.blessing-inputs{flex-wrap:wrap}.bl-name{width:100%}.bl-send{flex:1 1}.nav-item{min-width:84px}.nft-card{max-width:100%}.lottery-status-card{padding:1.45rem 1rem}.lottery-cd{gap:.6rem}.cd-num{min-width:0}}@media (max-width:420px){.top-bar-inner{padding-inline:.72rem}.top-bar-title{font-size:.92rem;letter-spacing:.04em}.lang-btn{padding-inline:.78rem;font-size:.72rem}.logout-btn{width:2rem;height:2rem}.welcome-names{font-size:clamp(1.8rem,8vw,2.8rem)}.nav-label{font-size:.69rem}.nav-icon{font-size:1.15rem}.geo-form-grid{grid-template-columns:1fr}.geo-actions{flex-direction:column}.geo-map{height:272px}.geo-legend-item{justify-content:center;width:100%}.geo-marker-label-static{max-width:132px;font-size:.62rem}.capsule-item-head{flex-direction:column}.capsule-item-meta{justify-content:flex-start}.gallery-masonry{column-count:1}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}