
:root{--bg:#f3f6fc;--s:rgba(255,255,255,.74);--ink:#0a1530;--mut:#5b6b8d;--ac:#1f5eff;--ac2:#4f95ff;--ln:rgba(20,50,120,.13);--bad:#e5484d;--gold:#b9831a;--gold2:#f2cf72;--star:0;--sh:0 30px 60px -34px rgba(20,50,120,.45);box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#03050a;--s:rgba(14,22,48,.62);--ink:#f1f5ff;--mut:#8d9cc4;--ac:#3d7bff;--ac2:#7db4ff;--ln:rgba(125,180,255,.17);--gold:#f0c869;--gold2:#fff1b8;--star:.9;--sh:0 34px 70px -30px #000}}
:root[data-theme="dark"]{--bg:#03050a;--s:rgba(14,22,48,.62);--ink:#f1f5ff;--mut:#8d9cc4;--ac:#3d7bff;--ac2:#7db4ff;--ln:rgba(125,180,255,.17);--gold:#f0c869;--gold2:#fff1b8;--star:.9;--sh:0 34px 70px -30px #000}
html{scroll-padding-top:env(safe-area-inset-top,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Arabic","Alexandria",system-ui,sans-serif;min-height:100vh;overflow-x:hidden;background:radial-gradient(900px 520px at 50% -8%,rgba(61,123,255,.22),transparent 70%),var(--bg);transition:background .5s,color .5s}
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:var(--star);background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fff,transparent),radial-gradient(1px 1px at 68% 12%,#fff,transparent),radial-gradient(1.5px 1.5px at 82% 44%,#9cc4ff,transparent),radial-gradient(1px 1px at 30% 62%,#fff,transparent),radial-gradient(1.5px 1.5px at 55% 85%,#9cc4ff,transparent),radial-gradient(1px 1px at 8% 90%,#fff,transparent),radial-gradient(1px 1px at 92% 78%,#fff,transparent),radial-gradient(1px 1px at 44% 30%,#fff,transparent);animation:tw 5s ease-in-out infinite alternate}@keyframes tw{to{opacity:calc(var(--star)*.35)}}
.sp{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(500px 360px at 88% 14%,rgba(61,123,255,.2),transparent 70%),radial-gradient(420px 320px at 6% 72%,rgba(125,180,255,.14),transparent 70%)}
.o{position:fixed;width:80vmax;height:80vmax;border-radius:50%;z-index:0;pointer-events:none;background:radial-gradient(circle,rgba(61,123,255,.16),transparent 65%);bottom:-55vmax;inset-inline-start:-35vmax;animation:dr 18s ease-in-out infinite alternate;will-change:transform}@keyframes dr{to{transform:translate3d(14vmax,-8vmax,0) scale(1.15)}}
#app{position:relative;z-index:1;max-width:560px;margin:0 auto;padding:18px 20px 120px}
.scr{animation:in .8s cubic-bezier(.2,.8,.2,1) both}@keyframes in{from{opacity:0;transform:translate3d(0,26px,0) scale(.98)}}
.hd{font-weight:700;margin:0}.en{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:500;direction:ltr}.mut{color:var(--mut);font-size:.9rem}.sub{text-align:center;color:var(--mut);margin:0 0 22px}
.glass{background:var(--s);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border:1px solid var(--ln);box-shadow:var(--sh),inset 0 1px 0 rgba(255,255,255,.08)}
.gb{position:relative}.gb::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,var(--ac2),transparent 42%,var(--gold));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.8}
.lg{width:52px;background:#fff;border-radius:15px;padding:3px;flex:none;box-shadow:0 8px 24px rgba(0,0,0,.25)}.lg img{width:100%;display:block;border-radius:12px}
.mark{display:grid;place-items:center;margin-top:30px}.lg.big{width:112px;padding:6px;border-radius:32px;box-shadow:0 0 0 1px var(--ln),0 26px 70px -12px var(--ac);animation:fl 5s ease-in-out infinite}.lg.big img{border-radius:26px}@keyframes fl{50%{transform:translate3d(0,-8px,0)}}
.hl{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:500;direction:ltr;text-align:center;font-size:clamp(3.2rem,16vw,4.6rem);line-height:1.02;margin:28px 0 12px}.hl span{display:block;overflow:hidden;padding-bottom:.08em}.hl b{display:block;font-weight:500;animation:up 1s cubic-bezier(.2,.9,.2,1) both;animation-delay:calc(var(--n)*.14s + .2s)}@keyframes up{from{transform:translateY(115%)}}
.hl .g{background:linear-gradient(90deg,var(--ac2),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.fm{border-radius:28px;padding:22px}
.in{width:100%;background:transparent;border:0;border-bottom:1px solid var(--ln);color:var(--ink);font:inherit;font-size:1.1rem;padding:15px 2px;outline:0;transition:border-color .3s}.in:focus{border-color:var(--gold)}
.tg{position:relative;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ln);border-radius:16px;padding:4px;margin:22px 0 8px}
.tg::before{content:"";position:absolute;inset-block:4px;inset-inline-start:4px;width:calc(50% - 4px);background:linear-gradient(135deg,var(--ac),var(--ac2));border-radius:12px;opacity:0;transition:transform .5s cubic-bezier(.2,1.2,.3,1),opacity .3s}.tg.a::before{opacity:1}.tg.b::before{opacity:1;transform:translateX(-100%)}
.tg button{position:relative;background:none;border:0;color:var(--ink);font:inherit;font-weight:700;padding:13px;cursor:pointer;transition:color .3s}.tg button.on{color:#fff}
.err{color:var(--bad);min-height:26px;margin:6px 0 0;font-weight:500}.shake{animation:sk .4s}@keyframes sk{25%{transform:translateX(-8px)}75%{transform:translateX(8px)}}
.btn{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;font:inherit;font-weight:700;font-size:1.08rem;border:0;border-radius:18px;padding:17px;color:#fff;background:linear-gradient(135deg,var(--ac),var(--ac2));cursor:pointer;margin-top:16px;transition:transform .2s;box-shadow:0 16px 36px -12px var(--ac),inset 0 1px 0 rgba(255,255,255,.35)}
.btn::after{content:"";position:absolute;inset-block:0;left:0;width:30%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);transform:translateX(-200%) skewX(-20deg);animation:sw 4s ease-in-out infinite}@keyframes sw{50%,100%{transform:translateX(500%) skewX(-20deg)}}
.btn:active{transform:scale(.97)}.btn.gh{background:var(--s);color:var(--ink);box-shadow:inset 0 0 0 1px var(--ln)}.btn.gh::after{display:none}
.top{display:flex;align-items:center;gap:10px}.brand{display:flex;align-items:center;gap:12px;flex:1}.brand b{display:block}.brand small{color:var(--mut);font-family:Fraunces,serif;font-style:italic}
.coin{display:flex;align-items:center;gap:6px;padding:9px 13px;border-radius:15px;background:var(--s);border:1px solid var(--ln);font-weight:700;color:var(--gold)}.coin b{font-family:Fraunces,serif}.coin svg{width:16px;height:16px}
.bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0}
.ib{width:44px;height:44px;border-radius:50%;border:1px solid var(--ln);background:var(--s);color:var(--ink);display:grid;place-items:center;cursor:pointer;flex:none;transition:transform .25s}.ib:active{transform:scale(.88)}.fl svg{transform:scaleX(-1)}
.feat{border-radius:32px;padding:22px;margin:20px 0 4px;overflow:hidden}.feat::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;top:-130px;inset-inline-start:-90px;background:radial-gradient(circle,rgba(61,123,255,.38),transparent 70%);animation:dr 10s ease-in-out infinite alternate;pointer-events:none}
.frow{position:relative;display:flex;gap:18px;align-items:center}.fr{position:relative;width:104px;height:104px;flex:none}.fr svg{width:100%;height:100%;transform:rotate(-90deg)}.fr circle{fill:none;stroke-width:5}
.rb{stroke:var(--ln)}.rg{stroke:url(#gd);stroke:var(--gold);stroke-linecap:round;stroke-dasharray:339.3;stroke-dashoffset:339.3;transition:stroke-dashoffset 1.6s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 0 7px var(--gold))}
.rc{position:absolute;inset:0;display:grid;place-items:center;text-align:center}.rc b{font-family:Fraunces,serif;font-size:1.8rem;font-weight:500}.rc small{color:var(--mut)}
.ft small{color:var(--gold);font-weight:700}.ft h2{font-size:1.9rem;margin:2px 0 4px}.wd{font-family:Fraunces,serif;font-style:italic;color:var(--mut);font-size:.95rem;line-height:1.5}
.mini{position:relative;display:grid;grid-template-columns:repeat(3,1fr);margin-top:18px;border-top:1px solid var(--ln)}.mini div{text-align:center;padding-top:14px}.mini b{display:block;font-family:Fraunces,serif;font-size:1.6rem;font-weight:500}.mini span{color:var(--mut);font-size:.78rem}
.chain{position:relative;display:flex;flex-direction:column;align-items:center}.ln{position:absolute;left:0;top:0;z-index:0;pointer-events:none;overflow:visible}.l0,.l1{fill:none;stroke-linecap:round;stroke-width:3}.l0{stroke:var(--ln);stroke-dasharray:1 9}.l1{stroke:var(--ac2);filter:drop-shadow(0 0 7px var(--ac));transition:stroke-dashoffset 2.4s cubic-bezier(.2,.8,.2,1)}
.pt{align-self:stretch;display:flex;align-items:center;gap:14px;margin:46px 0 28px;padding-bottom:12px;border-bottom:1px solid var(--ln);animation:in .8s cubic-bezier(.2,.8,.2,1) both}.pn{font-family:Fraunces,serif;font-size:3rem;line-height:1;font-style:normal;color:transparent;-webkit-text-stroke:1px var(--ac2)}.pt div{flex:1}.pt small{display:block;color:var(--mut)}.pg{width:80px;height:3px;background:var(--ln);border-radius:3px;overflow:hidden}.pg u{display:block;height:100%;background:linear-gradient(90deg,var(--ac2),var(--gold))}
.nd{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:7px;background:none;border:0;color:var(--ink);font:inherit;margin-top:34px;cursor:pointer;max-width:92%;transform:translateX(var(--x,0));animation:pop .9s cubic-bezier(.2,1.5,.4,1) backwards;animation-delay:calc(var(--n)*90ms + .2s)}.pt+.nd{margin-top:0}@keyframes pop{from{transform:translateX(var(--x,0)) scale(0);opacity:0}}
.nd .bd{position:relative;width:80px;height:80px;border-radius:50%;display:grid;place-items:center;color:var(--mut);background:var(--s);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--ln);box-shadow:var(--sh);transition:transform .35s cubic-bezier(.2,1.4,.4,1)}.nd .bd svg{width:32px;height:32px}.nd:active .bd{transform:scale(.9)}
.nd.done .bd{color:#fff;border-color:transparent;background:radial-gradient(circle at 30% 25%,var(--ac2),var(--ac) 60%,#0a2a8f);box-shadow:0 0 0 3px var(--bg),0 0 0 4px var(--gold),0 18px 36px -10px var(--ac)}
.nd.cur .bd{color:#fff;border-color:transparent;background:radial-gradient(circle at 30% 25%,#cfe4ff,var(--ac2) 42%,var(--ac));box-shadow:0 0 42px var(--ac),0 0 0 3px var(--bg),0 0 0 5px var(--ac2);animation:fb 2.8s ease-in-out infinite}@keyframes fb{50%{transform:translateY(-6px)}}
.nd.cur .bd::after{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid var(--ac2);animation:rp 2s ease-out infinite}@keyframes rp{from{transform:scale(1);opacity:.9}to{transform:scale(1.7);opacity:0}}
.nd .bg{position:absolute;bottom:-3px;inset-inline-end:-3px;width:26px;height:26px;border-radius:50%;background:var(--bg);border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold)}.nd .bg svg{width:13px;height:13px}.nd.lock{opacity:.55}.nd.lock .bg{border-color:var(--ln);color:var(--mut)}
.nd.tst{filter:drop-shadow(0 12px 20px rgba(240,200,105,.3))}.nd.tst .bd{width:94px;height:94px;border-radius:0;border:0;clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%);background:var(--ln);box-shadow:none}.nd.tst .bd svg{width:38px;height:38px}.nd.tst .bg{display:none}
.nd.tst.done .bd,.nd.tst.cur .bd{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#2a1a00;animation:none}.nd.tst.cur{animation:pop .9s backwards,fb 2.8s ease-in-out 1s infinite}
.nd b{font-size:1rem}.nd.tst b{font-size:1.25rem;background:linear-gradient(90deg,var(--gold2),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}.nd em{font-style:normal;color:var(--mut);font-size:.76rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.seg{display:flex;gap:5px;margin-top:10px}.seg i{flex:1;height:4px;border-radius:4px;background:var(--ln);overflow:hidden;position:relative}.seg i::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ac2),var(--gold));transform:scaleX(0);transform-origin:right;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.seg i.on::after{transform:scaleX(1)}.seg i.cu::after{transform:scaleX(.4)}
.big{font-size:clamp(3rem,15vw,4.8rem);line-height:1.1;text-align:center;margin:7vh 0 10px;cursor:pointer;word-break:break-word;text-shadow:0 0 50px rgba(61,123,255,.55)}.big span{display:inline-block;animation:lt .9s cubic-bezier(.2,1.2,.3,1) both;animation-delay:calc(var(--j)*45ms)}@keyframes lt{from{opacity:0;transform:translateY(40px) rotate(6deg);filter:blur(8px)}}
.hint{text-align:center;color:var(--mut);animation:bl 2s ease-in-out infinite}@keyframes bl{50%{opacity:.35}}
.sen{text-align:center;color:var(--mut);font-size:1.15rem;line-height:1.55;margin:20px 6px 0;padding:16px;border-radius:20px;background:var(--s);border:1px solid var(--ln);cursor:pointer}.sen mark{background:none;color:var(--gold);font-weight:500;border-bottom:1px solid var(--gold)}
.sheet{position:fixed;inset-inline:0;bottom:0;margin:auto;max-width:560px;padding:28px 20px calc(24px + env(safe-area-inset-bottom,0px));background:linear-gradient(160deg,var(--ac),#0a2a8f);color:#fff;border-radius:32px 32px 0 0;box-shadow:0 -20px 60px -10px var(--ac);transform:translateY(110%);transition:transform .8s cubic-bezier(.2,.9,.2,1);z-index:5;text-align:center}.rev .sheet{transform:none}.rev .hint{opacity:0;animation:none}.mn{font-weight:700;font-size:2.4rem}.sheet .btn{background:#fff;color:var(--ac);box-shadow:none}.sheet .btn::after{display:none}
.q{font-size:2.6rem;margin:6px 0 22px;text-align:start}.big2{width:96px;height:96px;margin:10px auto 26px;background:linear-gradient(135deg,var(--ac),var(--ac2));color:#fff;border:0;box-shadow:0 18px 40px -10px var(--ac)}.big2 svg{width:40px;height:40px}
.op{display:flex;align-items:center;gap:14px;width:100%;text-align:start;padding:16px;margin-bottom:11px;border-radius:18px;border:1px solid var(--ln);background:var(--s);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ink);font:inherit;font-weight:500;font-size:1.05rem;cursor:pointer;transition:transform .2s,border-color .3s;animation:in .6s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:calc(var(--n)*70ms)}
.op b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--gold);color:var(--gold);font-family:Fraunces,serif;flex:none}.op:hover{border-color:var(--ac2)}.op:active{transform:scale(.98)}
.op.ok{background:#10b981;border-color:#10b981;color:#fff;box-shadow:0 0 30px rgba(16,185,129,.5);animation:pu .4s}.op.no{background:var(--bad);border-color:var(--bad);color:#fff;box-shadow:0 0 30px rgba(229,72,77,.45);animation:sk .4s}.op.ok b,.op.no b{border-color:#fff;color:#fff}@keyframes pu{50%{transform:scale(1.04)}}
.rz{position:relative;width:190px;height:190px;margin:34px auto 10px}.rz svg{width:100%;height:100%;transform:rotate(-90deg)}.rz circle{fill:none;stroke-width:4}.rz .rn{position:absolute;inset:0;display:grid;place-items:center;font-family:Fraunces,serif;font-size:3rem}
.cf{position:fixed;top:-4vh;left:var(--l);width:9px;height:15px;background:var(--c);border-radius:2px;pointer-events:none;z-index:9;animation:cf 2s ease-in forwards}@keyframes cf{to{transform:translate3d(var(--x),110vh,0) rotate(720deg);opacity:.3}}
button:focus-visible,.in:focus-visible{outline:2px solid var(--ac2);outline-offset:3px}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.en{font-family:Lexend,"Alexandria",system-ui,sans-serif;font-style:normal;font-weight:500;letter-spacing:.01em}.wd{font-family:Lexend,system-ui,sans-serif;font-style:normal;font-size:.88rem}
.pn{font-family:Lexend,Fraunces,sans-serif;font-style:normal;font-weight:600;font-size:2.6rem;color:var(--ac2);-webkit-text-stroke:0}
.pt small strong{color:var(--ac2);font-size:1.05rem}.pg{display:flex;gap:5px;width:auto;height:auto;background:none;overflow:visible}.pg u{display:block;width:16px;height:9px;border-radius:5px;background:var(--ln);transition:background .4s}.pg u.on{background:linear-gradient(90deg,var(--ac2),var(--gold));box-shadow:0 0 10px var(--ac)}
.cw{margin:14px 0;animation:in .8s cubic-bezier(.2,.8,.2,1) both}.cw img{width:100%;display:block;border-radius:14px;box-shadow:var(--sh)}.btn:disabled{opacity:.5}
