@import "https://fonts.googleapis.com/css2?family=Ma+Shan+Zheng&family=Noto+Serif+SC:wght@400;600;700;900&display=swap";:root{--ink:#0c0b09;--ink-2:#14120e;--gold:#c9a35c;--gold-hi:#ecd28f;--paper:#ece2cb;--muted:#ab9c7d;--seal:#a02c1a;--border:#c9a35c38;--card-bg:linear-gradient(160deg, #c9a35c12, #00000040);--font-brush:"Ma Shan Zheng", "Noto Serif SC", serif;--font-serif:"Noto Serif SC", serif}*{box-sizing:border-box}html,body{background:var(--ink);color:var(--paper);font-family:var(--font-serif);-webkit-font-smoothing:antialiased;margin:0;padding:0}html{height:100dvh}body{height:100%;overflow:hidden}#root{width:100%;height:100%}@keyframes yy-fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes yy-fade-in{0%{opacity:0}to{opacity:1}}@keyframes yy-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes yy-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes yy-seal-stamp{0%{opacity:0;transform:scale(1.6)rotate(-8deg)}60%{opacity:1;transform:scale(.94)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(-8deg)}}@keyframes yy-brush-sweep{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes yy-sheet-up{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.yy-anim-fade-up{animation:.55s cubic-bezier(.22,.9,.28,1) both yy-fade-up}.yy-anim-fade-in{animation:.4s both yy-fade-in}.yy-anim-scale-in{animation:.35s cubic-bezier(.22,.9,.28,1) both yy-scale-in}.yy-stagger>*{animation:.5s cubic-bezier(.22,.9,.28,1) both yy-fade-up;animation-delay:calc(var(--i,0) * 70ms)}.yy-modal-overlay{z-index:200;box-sizing:border-box;background:#000000b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.yy-modal-panel{box-sizing:border-box;background:#14120e;border:1px solid #c9a35c66;border-top:2px solid #c9a35c;border-radius:16px;width:100%;max-width:520px;max-height:85vh;padding:20px 20px 32px;position:relative;overflow-y:auto}@media (width<=640px){.yy-modal-overlay{align-items:flex-end;padding:0}.yy-modal-panel{border-bottom:none;border-radius:20px 20px 0 0}}.yy-push-page{z-index:200;box-sizing:border-box;background:#0c0b09;position:fixed;inset:0;overflow-y:auto}.yy-push-header{z-index:1;background:#0c0b09f0;border-bottom:1px solid #c9a35c40;align-items:center;gap:6px;padding:12px 16px;display:flex;position:sticky;top:0}.yy-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;transition:transform .25s cubic-bezier(.22,.9,.28,1),box-shadow .25s,border-color .25s}.yy-card-hover:hover{border-color:#c9a35c8c;transform:translateY(-3px);box-shadow:0 12px 32px #c9a35c24,0 2px 8px #0006}.yy-card-hover:active{transform:translateY(-1px)scale(.995)}.yy-btn{font-family:var(--font-serif);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-radius:10px;transition:transform .15s,box-shadow .2s,background .2s,color .2s}.yy-btn:active{transform:scale(.96)}.yy-btn-gold{color:#1a1814;background:linear-gradient(160deg,#d9b26a,#b98f45);border:1px solid #ecd28f80;font-weight:700}.yy-btn-gold:hover{box-shadow:0 6px 20px #c9a35c59}.yy-btn-ghost{color:var(--paper);border:1px solid var(--border);background:0 0}.yy-btn-ghost:hover{border-color:var(--gold);color:var(--gold-hi)}.yy-tabs{border:1px solid var(--border);background:#c9a35c0f;border-radius:999px;gap:4px;padding:4px;display:inline-flex;position:relative}.yy-tab{font-family:var(--font-serif);color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:999px;padding:9px 26px;font-size:16px;transition:color .25s,background .25s,box-shadow .25s;position:relative}.yy-tab:hover{color:var(--paper)}.yy-tab.active{color:var(--gold-hi);background:linear-gradient(160deg,#d9b26a4d,#b98f452e);font-weight:600;box-shadow:inset 0 0 0 1px #ecd28f61}.yy-fchip{color:var(--muted);font-family:var(--font-serif);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #c9a35c52;border-radius:999px;padding:6px 16px;font-size:13px;transition:color .2s,border-color .2s,background .2s}.yy-fchip:hover{color:var(--paper);border-color:#c9a35c99}.yy-fchip:active{transform:scale(.95)}.yy-fchip.active{color:var(--gold-hi);border-color:var(--gold);background:#c9a35c1a;font-weight:600}.yy-skeleton{border:1px solid var(--border);background:linear-gradient(90deg,#c9a35c0f 25%,#c9a35c24 50%,#c9a35c0f 75%) 0 0/800px 100%;border-radius:12px;animation:1.6s linear infinite yy-shimmer}.yy-skeleton-row{height:76px;margin-bottom:12px}.yy-seal{background:var(--seal);width:56px;height:56px;color:var(--paper);font-family:var(--font-brush);border-radius:8px;justify-content:center;align-items:center;font-size:28px;animation:.5s cubic-bezier(.22,.9,.28,1) both yy-seal-stamp;display:inline-flex;box-shadow:0 4px 16px #a02c1a66}.yy-backdrop{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.yy-backdrop img{object-fit:cover;object-position:center 18%;width:100%;height:100%;display:block}.yy-backdrop:after{content:"";background:linear-gradient(to bottom, #0c0b0994 0%, #0c0b09cc 30%, #0c0b09f2 58%, var(--ink) 80%);position:absolute;inset:0}.yy-app-main{z-index:1;flex-direction:column;height:100%;display:flex;position:relative}.yy-scroll-region{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.yy-backdrop-bottom{z-index:0;pointer-events:none;height:34vh;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.yy-backdrop-bottom img{object-fit:cover;object-position:center 100%;opacity:.55;width:100%;height:100%;display:block}.yy-backdrop-bottom:after{content:"";background:linear-gradient(to top, #0c0b0957 0%, #0c0b09ad 52%, var(--ink) 98%);position:absolute;inset:0}.yy-hero{text-align:center;padding:72px 20px 48px;position:relative;overflow:hidden}.yy-hero:before{content:"";z-index:1;pointer-events:none;background:radial-gradient(80% 60% at 50% 0,#c9a35c17,#0000 70%),radial-gradient(60% 40% at 50% 100%,#a02c1a0f,#0000 70%);position:absolute;inset:0}.yy-hero:after{content:"";z-index:1;background:linear-gradient(to bottom, #0c0b0957 0%, #0c0b090d 34%, #0c0b091a 62%, #0c0b09c7 88%, var(--ink) 100%);pointer-events:none;position:absolute;inset:0}.yy-hero-title{z-index:2;font-family:var(--font-brush);color:var(--gold-hi);letter-spacing:.18em;text-shadow:0 4px 32px #c9a35c40;margin:0;font-size:clamp(56px,12vw,96px);animation:.7s cubic-bezier(.22,.9,.28,1) both yy-fade-up;position:relative}.yy-hero-sub{z-index:2;color:var(--paper);opacity:.85;text-shadow:0 2px 14px #000000d9;letter-spacing:.12em;margin:18px 0 0;font-size:15px;animation:.7s cubic-bezier(.22,.9,.28,1) .12s both yy-fade-up;position:relative}.yy-hero-img{z-index:0;object-fit:cover;object-position:center 32%;width:100%;height:100%;display:block;position:absolute;inset:0}.yy-hero-full{flex-direction:column;flex:1 0 auto;justify-content:center;align-items:center;padding:56px 20px 26px;display:flex}.yy-card.yy-login-card{-webkit-backdrop-filter:blur(12px);background:#0e0c09a8;border:1px solid #c9a35c4d;box-shadow:0 24px 60px #00000080}.yy-section-head{align-items:baseline;gap:12px;margin:40px 0 20px;animation:.5s both yy-fade-up;display:flex}.yy-section-head h2{font-family:var(--font-brush);color:var(--gold-hi);letter-spacing:.1em;margin:0;font-size:28px}.yy-section-head .en{letter-spacing:.3em;color:var(--muted);text-transform:uppercase;font-size:11px}.yy-page{min-height:100%;animation:.35s both yy-fade-in}.yy-page:has(>.yy-hero-full){flex-direction:column;display:flex}.yy-sheet-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50;background:#0009;animation:.25s both yy-fade-in;position:fixed;inset:0}.yy-sheet{background:var(--ink-2);border-top:1px solid var(--border);max-height:85vh;padding:20px 20px calc(20px + env(safe-area-inset-bottom));z-index:51;border-radius:20px 20px 0 0;animation:.35s cubic-bezier(.22,.9,.28,1) both yy-sheet-up;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.yy-toast-wrap{bottom:calc(24px + env(safe-area-inset-bottom));z-index:100;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.yy-toast{border:1px solid var(--gold);color:var(--gold-hi);background:#14120ef2;border-radius:999px;max-width:90vw;padding:12px 24px;font-size:14px;animation:.3s cubic-bezier(.22,.9,.28,1) both yy-fade-up;box-shadow:0 8px 24px #00000080}.yy-team-row{cursor:pointer;color:inherit;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;display:flex}.yy-team-row .dot{background:var(--gold);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:.4s both yy-fade-in;box-shadow:0 0 12px #c9a35c99}.yy-team-row .seats{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:13px}.yy-seat{aspect-ratio:1;border:1px solid var(--border);cursor:pointer;color:var(--muted);-webkit-tap-highlight-color:transparent;background:#c9a35c0a;border-radius:10px;justify-content:center;align-items:center;min-height:48px;font-size:12px;transition:transform .15s,border-color .2s,background .2s;display:flex}.yy-seat:active{transform:scale(.92)}.yy-seat.taken{border-color:var(--gold);color:var(--gold-hi);background:linear-gradient(160deg,#c9a35c40,#c9a35c14)}.yy-seat.empty:hover{border-color:var(--gold);color:var(--paper)}.yy-chip{border:1px solid var(--border);color:var(--paper);font-family:var(--font-serif);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:999px;padding:10px 18px;font-size:14px;transition:all .2s}.yy-chip:active{transform:scale(.94)}.yy-chip.selected{color:#1a1814;background:linear-gradient(160deg,#d9b26a,#b98f45);border-color:#ecd28f80;font-weight:700}.yy-input,.yy-select{border:1px solid var(--border);width:100%;color:var(--paper);font-family:var(--font-serif);background:#0000004d;border-radius:10px;outline:none;padding:14px 16px;font-size:16px;transition:border-color .2s}.yy-input:focus,.yy-select:focus{border-color:var(--gold)}.yy-label{color:var(--muted);letter-spacing:.08em;margin:16px 0 8px;font-size:13px;display:block}.yy-tabpanel{animation:.4s cubic-bezier(.22,.9,.28,1) both yy-fade-up}@media (width<=640px){.yy-hero{padding:48px 16px 32px}.yy-tab{padding:9px 16px;font-size:15px}}.heirloom-seal{letter-spacing:.24em;text-indent:.24em;color:#efc96e;white-space:nowrap;text-shadow:0 0 6px #efc96ea6,0 1px 1px #00000073;background:linear-gradient(135deg,#93301f 0%,#70160d 52%,#86251a 100%);border:1px solid #c9a24b;border-radius:4px;padding:2px 9px;font-family:Noto Serif SC,serif;font-size:13px;font-weight:900;line-height:1.5;display:inline-block;position:relative;transform:rotate(-3deg);box-shadow:inset 0 0 0 1px #5e130b,inset 0 0 0 2.5px #c9a24bbf,inset 0 1px #ffe1a059,0 0 10px #c9a24b73}.heirloom-seal:before,.heirloom-seal:after{content:"";background:#c9a24b;width:5px;height:5px;position:absolute;transform:rotate(45deg);box-shadow:0 0 4px #c9a24bd9}.heirloom-seal:before{top:-2.5px;left:-2.5px}.heirloom-seal:after{bottom:-2.5px;right:-2.5px}.dud-seal{letter-spacing:.18em;text-indent:.18em;color:var(--muted);border:1.5px solid var(--muted);white-space:nowrap;opacity:.82;background:#2b2b30;border-radius:4px;padding:2px 8px;font-family:Noto Serif SC,serif;font-size:12.5px;font-weight:700;line-height:1.5;display:inline-block;transform:rotate(2.5deg)}.yy-gear-card,.yy-slotbox{position:relative}.yy-gear-card.heirloom{box-shadow:0 0 0 1px var(--gold), 0 0 14px #c9a35c40;border-color:var(--gold)!important}.yy-slotbox.heirloom{box-shadow:inset 0 0 0 1px var(--gold), 0 0 12px #c9a35c38;border-color:var(--gold)!important}.jade-pendant{z-index:4;pointer-events:none;transform-origin:50% 3px;filter:drop-shadow(0 2px 3px #0006);width:30px;height:62px;animation:5.2s ease-in-out infinite pendantSway;position:absolute;top:-14px;right:-4px}.jade-pendant svg{width:100%;height:100%;display:block}@keyframes pendantSway{0%,to{transform:rotate(2.6deg)}50%{transform:rotate(-2.6deg)}}@media (prefers-reduced-motion:reduce){.jade-pendant{animation:none}}@media (width<=640px){.jade-pendant{width:24px;height:50px;top:-11px;right:-2px}}#goldDustLayer{pointer-events:none;z-index:200;position:fixed;inset:0;overflow:hidden}.gd-p{pointer-events:none;border-radius:50%;position:absolute;box-shadow:0 0 5px #efc96ecc}
