:root{--bg:#0b0d13;--card:hsla(0,0%,100%,.045);--card2:#1e222d;--bd:hsla(0,0%,100%,.09);--gold:#e8b84b;--gold2:#ffd97a;--text:#f4f4f2;--sub:#8f96a3;--accent:#ff4d6d}*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%}body{color:var(--text);font-family:Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;background:radial-gradient(140% 55% at 50% -8%,rgba(232,184,75,.13),transparent 60%),radial-gradient(120% 45% at 50% 108%,rgba(255,77,109,.1),transparent 60%),var(--bg)}.frame{max-width:430px;margin:0 auto;height:100dvh;position:relative;overflow:hidden;display:flex;flex-direction:column}.screen{flex:1 1;overflow-y:auto;padding:0 16px 100px}.screen.noscroll{overflow-y:hidden}.screen::-webkit-scrollbar{display:none}.gachabox{margin-top:16px;background:linear-gradient(165deg,hsla(0,0%,100%,.06),hsla(0,0%,100%,.02));border:1px solid var(--bd);border-radius:22px;padding:14px;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 28px rgba(0,0,0,.35)}.gacha-btn{position:relative;overflow:hidden;margin-top:14px;background:linear-gradient(135deg,#ff4d6d,#ff8f4b);color:#fff;border:none;font-size:17px;font-weight:900;letter-spacing:1px;padding:15px 58px;border-radius:28px;cursor:pointer;box-shadow:0 8px 26px rgba(255,77,109,.45),inset 0 1px 0 hsla(0,0%,100%,.35)}.gacha-btn:after{content:"";position:absolute;top:-60%;left:-40%;width:45%;height:220%;background:linear-gradient(100deg,transparent,hsla(0,0%,100%,.45),transparent);transform:rotate(20deg);animation:btnshine 2.6s infinite}@keyframes btnshine{0%{left:-50%}55%,to{left:130%}}.gacha-btn:active{transform:scale(.95)}h1.copy{font-size:21px;font-weight:900;line-height:1.55;letter-spacing:.5px;background:linear-gradient(120deg,#fff 30%,var(--gold2) 60%,#fff 90%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.zkrow{margin-top:14px;background:var(--card);border:1px solid var(--bd);padding:13px 14px;cursor:pointer;border-radius:14px;display:flex;align-items:center;gap:10px;box-shadow:0 8px 28px rgba(0,0,0,.35)}.bar{flex:1 1;height:8px;background:#0d0f14;overflow:hidden}.bar,.bar>div{border-radius:4px}.bar>div{height:100%;background:linear-gradient(90deg,#6ab4ff,#8f7bff);transition:width .6s}.zk-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:7px;gap:7px}.zk-cell{aspect-ratio:1/1;border-radius:10px;background:#12141b;border:1px solid #22262f;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:9px;color:#3a4152}.zk-cell .n{font-size:10px;font-weight:700}.zk-cell.found{background:radial-gradient(circle at 35% 30%,#2b2413,#1c1708);border:1px solid var(--gold);color:var(--gold2);animation:flip .6s ease}.zk-cell.found .em{font-size:17px}.zk-cell.found .nm{font-size:8.5px;font-weight:800;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 2px}@keyframes flip{0%{transform:rotateY(180deg);opacity:.3}to{transform:rotateY(0);opacity:1}}.tabbar{position:absolute;bottom:0;left:0;right:0;height:82px;background:rgba(15,17,24,.88);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--bd);display:flex;padding-bottom:18px;z-index:6}.tab{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px;color:var(--sub);cursor:pointer;transition:transform .12s;background:none;border:none}.tab:active{transform:scale(.88)}.tab .ic{font-size:21px;filter:grayscale(.4) opacity(.75)}.tab.active{color:var(--gold2);font-weight:800}.tab.active .ic{filter:none;text-shadow:0 0 14px rgba(232,184,75,.7)}.gov{position:absolute;inset:0;background:rgba(5,6,10,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:30}.drum,.gov{overflow:hidden}.drum{width:230px;height:300px;border-radius:20px;border:3px solid var(--gold);position:relative;background:#111;box-shadow:0 0 40px rgba(232,184,75,.35);animation:dshake .1s linear infinite}@keyframes dshake{0%{transform:translateX(-2px) rotate(-.4deg)}50%{transform:translateX(2px) rotate(.4deg)}to{transform:translateX(-2px) rotate(-.4deg)}}.reel{position:absolute;left:0;right:0;top:0;animation:reelspin .28s linear infinite}@keyframes reelspin{0%{transform:translateY(0)}to{transform:translateY(-300px)}}.reelcell{height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.reelcell .em{font-size:84px}.reelcell .nm{font-size:20px;font-weight:900;color:#fff}.gararara{margin-top:18px;color:var(--gold2);font-size:16px;font-weight:900;letter-spacing:4px;animation:blink .35s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}.flashfx{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;z-index:40}.flashfx.go{animation:flashan .5s ease-out}@keyframes flashan{0%{opacity:1}to{opacity:0}}.resultbox{display:flex;flex-direction:column;align-items:center;width:100%;padding:0 22px;animation:rpop .55s cubic-bezier(.2,1.7,.4,1)}@keyframes rpop{0%{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}.papapan{font-size:20px;font-weight:900;color:var(--gold2);letter-spacing:3px;text-shadow:0 0 18px rgba(232,184,75,.8)}.newmark{font-size:12px;font-weight:900;color:#5ad17a;margin-top:2px}.rays{position:absolute;width:520px;height:520px;background:repeating-conic-gradient(rgba(232,184,75,.14) 0 8deg,transparent 8deg 24deg);border-radius:50%;animation:rot 9s linear infinite;z-index:-1}@keyframes rot{to{transform:rotate(1turn)}}.winframe{margin-top:10px;width:100%;max-width:320px;border-radius:16px;overflow:hidden;border:3px solid var(--gold);box-shadow:0 0 34px rgba(232,184,75,.5);background:#fff}.winframe iframe{width:100%;height:360px;border:0;display:block}.phwin{height:250px;background:linear-gradient(150deg,#2a3040,#171a22);display:flex;align-items:center;justify-content:center;font-size:70px}.winname{margin-top:10px;font-size:19px;font-weight:900;color:#fff}.winq{margin-top:3px;font-size:13px;color:var(--sub)}.winbtns{display:flex;gap:10px;margin-top:12px;width:100%;max-width:320px}.btn-oshi{flex:1.4 1;background:linear-gradient(90deg,var(--accent),#ff8f4b);color:#fff;border:none;font-size:13.5px;font-weight:900;padding:13px 0;border-radius:26px;cursor:pointer;box-shadow:0 6px 20px rgba(255,77,109,.45);animation:pulse 1.4s infinite}.btn-oshi:disabled{animation:none;opacity:.6}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.btn-skip{flex:1 1;background:none;border:1px solid #3a4152;color:var(--sub);font-size:13px;border-radius:26px;cursor:pointer}.conf{position:absolute;top:-14px;width:9px;height:14px;z-index:35;animation:fall linear forwards}@keyframes fall{0%{transform:translateY(0) rotate(0)}to{transform:translateY(110vh) rotate(660deg)}}.oigacha{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;z-index:32;overflow:hidden;text-align:center;animation:ojsway 1.2s ease-in-out infinite}@keyframes ojsway{0%,to{transform:translate(0)}50%{transform:translateY(-3px)}}.oj-strobe{position:absolute;inset:0;animation:glowgrow 1.4s ease-in-out infinite alternate}@keyframes glowgrow{0%{background:radial-gradient(circle at 50% 50%,rgba(255,215,90,.25),#0d0f14 62%)}to{background:radial-gradient(circle at 50% 50%,rgba(255,230,140,.75),#1c1708 75%)}}.oj-rays1,.oj-rays2{position:absolute;width:900px;height:900px;border-radius:50%;left:50%;top:50%;margin:-450px 0 0 -450px}.oj-rays1{background:repeating-conic-gradient(rgba(255,240,180,.22) 0 6deg,transparent 6deg 18deg);animation:rot 3.5s linear infinite}.oj-rays2{background:repeating-conic-gradient(rgba(255,215,90,.18) 0 10deg,transparent 10deg 30deg);animation:rot 5s linear infinite reverse}.oj-big{position:relative;font-size:44px;font-weight:900;font-style:italic;color:#fff;letter-spacing:2px;text-shadow:0 0 10px #ff0,0 0 30px #f70,0 0 60px red,4px 4px 0 #900;animation:slamin .5s cubic-bezier(.1,2.2,.3,1),bigflash .3s linear .5s infinite}@keyframes slamin{0%{transform:scale(8) rotate(-14deg);opacity:0}70%{transform:scale(.92) rotate(2deg);opacity:1}to{transform:scale(1) rotate(0)}}@keyframes bigflash{0%,to{color:#fff}50%{color:#ffe14b}}.oj-x3{position:relative;font-size:88px;font-weight:900;color:#ffe14b;line-height:1;margin-top:2px;text-shadow:0 0 16px #ff0,0 0 50px #f70,5px 5px 0 #a00;animation:x3pop .45s cubic-bezier(.1,2.4,.3,1) .25s both}@keyframes x3pop{0%{transform:scale(0) rotate(20deg)}to{transform:scale(1) rotate(-4deg)}}.oj-bolt{position:absolute;font-size:46px;animation:boltblink .18s linear infinite}@keyframes boltblink{0%,to{opacity:1;transform:scale(1.2)}50%{opacity:.1;transform:scale(.8)}}.oj-btn{position:relative;margin-top:26px;background:linear-gradient(180deg,#ffe14b,#ff9b00);color:#4a0000;border:4px solid #fff;font-size:20px;font-weight:900;font-style:italic;padding:16px 52px;border-radius:36px;cursor:pointer;animation:btnrage .35s infinite;box-shadow:0 0 40px #ffd400,0 0 90px rgba(255,120,0,.8)}@keyframes btnrage{0%,to{transform:scale(1) rotate(-1.5deg)}50%{transform:scale(1.1) rotate(1.5deg)}}.sa-heart{font-size:58px;opacity:0;transform:scale(0);filter:drop-shadow(0 0 18px rgba(255,92,120,.9))}.sa-heart.go{animation:heartpop .6s cubic-bezier(.2,1.8,.4,1) forwards}@keyframes heartpop{0%{opacity:0;transform:scale(0) rotate(-20deg)}60%{opacity:1;transform:scale(1.35) rotate(6deg)}to{opacity:1;transform:scale(1) rotate(0)}}.sa-text{margin-top:24px;font-size:20px;font-weight:900;color:#fff;text-align:center;line-height:1.6;opacity:0;text-shadow:0 0 20px rgba(255,92,120,.8)}.sa-text.go{animation:rpop .5s cubic-bezier(.2,1.7,.4,1) forwards}.overlay{position:absolute;inset:0;background:rgba(0,0,0,.82);display:flex;align-items:center;justify-content:center;flex-direction:column;z-index:20;text-align:center;padding:0 30px}.overlay .big{font-size:64px;animation:pop .6s cubic-bezier(.2,1.6,.4,1)}@keyframes pop{0%{transform:scale(0)}to{transform:scale(1)}}.overlay h2{color:var(--gold2);font-size:20px;font-weight:900;margin-top:10px}.overlay p{color:#c8ccd6;font-size:13px;margin-top:6px}.overlay .ok{margin-top:18px;background:var(--gold);color:#111;border:none;font-weight:900;padding:10px 34px;border-radius:22px;cursor:pointer}.reg-card{background:#171a22;border:1px solid #2c3242;border-radius:20px;padding:24px 22px;width:100%;max-width:320px;text-align:left}.reg-input{margin-top:14px;background:#0d0f14;border:1px solid #3a4152;border-radius:12px;padding:13px 14px;color:var(--text);outline:none}.reg-btn,.reg-input{width:100%;font-size:14px}.reg-btn{margin-top:6px;background:linear-gradient(90deg,var(--accent),#ff8f4b);color:#fff;border:none;font-weight:900;padding:13px 0;border-radius:24px;cursor:pointer}.oshicard{background:var(--card);border:1px solid var(--bd);border-radius:16px;padding:14px}