/* ZUMA phase 2: genuine loading states, progressive entrance and wallet screens. */
:root{--zu-bg:var(--z-bg);--zu-text:var(--z-text);--zu-muted:var(--z-muted);--zu-line:var(--z-line);--zu-surface:var(--z-panel);--zu-hover:var(--z-panel-2)}
.zf-reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease var(--reveal-delay,0ms),transform .55s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}
.zf-reveal.is-revealed{opacity:1;transform:none}
.z-game__art{background:var(--zu-surface,#22172f);isolation:isolate}
.z-game__art:not(.is-ready)::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(110deg,transparent 25%,rgba(167,122,247,.17) 45%,transparent 65%);background-size:250% 100%;animation:zf-shimmer 1.6s ease-in-out infinite;pointer-events:none}
.z-game__art>img{transition:filter .55s ease,opacity .55s ease,transform .55s ease}
.z-game__art:not(.is-ready)>img{filter:blur(14px);opacity:.25;transform:scale(1.04)}
.z-game__art.is-ready>img{filter:none;opacity:1}
@keyframes zf-shimmer{from{background-position:100% 0}to{background-position:-100% 0}}
.zf-error-page{max-width:760px;min-height:calc(100svh - 230px);margin:0 auto;text-align:center;padding:30px 24px 60px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.zf-error-art{position:relative;width:min(430px,90vw);height:340px;display:grid;place-items:center}
.zf-error-art>span{position:absolute;inset:0;font-size:clamp(150px,25vw,220px);font-weight:800;letter-spacing:-.09em;color:var(--z-accent,#a77af7);opacity:.12}
.zf-error-art img{position:relative;width:310px;height:310px;object-fit:contain;filter:drop-shadow(0 20px 35px #a77af726);animation:zf-float 5s ease-in-out infinite}
.zf-error-page h1{font-size:clamp(26px,4vw,42px);line-height:1.2;margin:14px 0}.zf-error-page p{color:var(--zu-muted,#998ca8);margin-bottom:26px}
@keyframes zf-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.zf-success-frog{display:block;object-fit:contain;width:210px;height:190px;margin:-12px auto 5px;filter:drop-shadow(0 10px 20px #a77af733)}
.zf-success-copy{margin:20px 0!important;color:var(--zu-muted,#998ca8)!important;line-height:1.65}
.zf-network-list{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.zf-network-list span,.zf-network{padding:9px 13px;background:var(--zu-hover,#a77af717);border:1px solid var(--zu-line,#a77af733);border-radius:12px;font-size:12px;font-weight:800;display:inline-flex}
.zf-offer{display:flex;align-items:center;gap:22px;margin:24px 0;padding:22px;border:1px solid var(--zu-line,#a77af733);border-radius:20px;background:var(--zu-hover,#a77af70a)}
.zf-offer img{width:180px;aspect-ratio:1.5;object-fit:cover;border-radius:14px}.zf-offer strong{font-size:22px}.zf-offer p,.zf-referral p{line-height:1.7;color:var(--zu-muted,#998ca8);margin:10px 0 16px}
.zf-referral{padding:25px 0 5px;border-top:1px solid var(--zu-line,#a77af733);margin-top:26px}.zf-referral label{display:block;font-size:13px;font-weight:700}.zf-referral input,.zf-address-label input{display:block;width:100%;border:1px solid var(--zu-line,#a77af733);border-radius:12px;background:var(--zu-bg,#160e22);color:var(--zu-text,#fff);padding:14px;margin:10px 0;font-size:13px;min-width:0}
.zf-referral-stats{display:flex;gap:30px;margin:20px 0}.zf-referral-stats small{display:block;color:var(--zu-muted,#998ca8)}.zf-referral-stats strong{font-size:25px}
.zf-checkbox{display:flex!important;gap:10px;align-items:center}.zf-checkbox input{width:18px!important;min-height:18px!important;accent-color:#a77af7}
.zf-saved-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0;border-top:1px solid var(--zu-line,#a77af733)}.zf-saved-list span{overflow-wrap:anywhere;font-size:12px}
.zf-security{padding-bottom:35px;margin-bottom:30px;border-bottom:1px solid var(--zu-line,#a77af733)}.zf-security p{line-height:1.7;margin:16px 0}.zf-secret{display:block;overflow-wrap:anywhere;margin:18px 0;padding:14px;background:var(--zu-hover,#a77af714);border-radius:12px;font-size:13px}
.zf-recovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.zf-recovery code{padding:10px;border-radius:8px;background:var(--zu-bg,#160e22);text-align:center;font-family:monospace;letter-spacing:.08em}
.zf-qr{display:inline-grid;place-items:center;background:#fff;padding:16px;border-radius:18px;color:#000;line-height:0}.zf-qr svg,.zf-qr img{width:220px;height:220px;max-width:100%}
.zf-invoice{max-width:1100px;margin:0 auto}.zf-invoice-panel{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:45px}.zf-invoice-panel h2{font-size:clamp(25px,3vw,38px);overflow-wrap:anywhere;margin-top:20px}.zf-invoice-panel p{line-height:1.7;color:var(--zu-muted,#998ca8);margin:20px 0}.zf-invoice-panel aside{text-align:center}
.zf-countdown{display:block;font-size:32px;font-variant-numeric:tabular-nums;margin-top:20px}.zf-invoice-details{display:flex;flex-wrap:wrap;gap:28px;margin-top:26px}.zf-invoice-details dt{color:var(--zu-muted,#998ca8);font-size:12px}.zf-invoice-details dd{font-size:22px;font-weight:800;margin:7px 0}
.zf-payment-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:0;margin:25px 0}.zf-payment-steps li{border:1px solid var(--zu-line,#a77af733);border-radius:18px;padding:20px;font-size:13px;line-height:1.6;display:flex;align-items:center;gap:12px;color:var(--zu-muted,#998ca8)}.zf-payment-steps li>span{border-radius:50%;width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;background:var(--zu-hover,#a77af717);font-weight:800}.zf-payment-steps .is-current{border-color:#a77af7;color:var(--zu-text,#fff)}.zf-payment-steps .is-complete>span,.zf-payment-steps .is-current>span{background:#c7f66b;color:#18200d}
[data-state=credited] .zf-countdown,[data-state=cancelled] .zf-countdown,[data-state=review] .zf-countdown{display:none}
.z-account-form select{width:100%;min-height:48px;padding:12px;border-radius:12px;border:1px solid var(--zu-line,#a77af733);background:var(--zu-bg,#160e22);color:var(--zu-text,#fff);font:inherit}.z-account-form option{background:var(--zu-bg,#160e22);color:var(--zu-text,#fff)}
[data-theme=light] .zf-offer,[data-theme=light] .zf-network-list span,[data-theme=light] .zf-network{background:#f2ecfb;color:#261738}
[data-theme=light] .zf-referral input,[data-theme=light] .zf-address-label input,[data-theme=light] .z-account-form select,[data-theme=light] .z-account-form option,[data-theme=light] .zf-recovery code{background:#fff;color:#261738}
[data-theme=light] .zf-payment-steps .is-current{color:#261738}
.z-btn:disabled{opacity:.48;cursor:not-allowed;transform:none!important}
@media(max-width:760px){.zf-invoice-panel{grid-template-columns:1fr;gap:24px}.zf-payment-steps{grid-template-columns:1fr;gap:8px}.zf-payment-steps li{padding:14px}.zf-offer{flex-direction:column;align-items:flex-start;padding:16px}.zf-offer img{width:100%;max-height:190px}.zf-error-page{padding-top:10px}.zf-error-art{height:280px}.zf-error-art img{width:270px;height:270px}.zf-referral-stats{gap:20px}.zf-invoice-panel aside{display:flex;flex-direction:column;align-items:center}.zf-success-frog{height:160px;width:180px}}
@media(prefers-reduced-motion:reduce){.zf-reveal{opacity:1;transform:none;transition:none}.zf-error-art img,.z-game__art:not(.is-ready)::after{animation:none}.z-game__art>img{transition:none}}
