:root{--green: #58cc02;--green-dark: #46a302;--green-light: #2d4a1a;--green-border: #58cc02;--green-text: #8ee55b;--red: #ff4b4b;--red-light: #4a1f24;--red-border: #ff4b4b;--red-text: #ff8a8a;--blue: #1cb0f6;--text: #f1f7fb;--muted: #a5b3c7;--border: #3a4a66;--card-bg: #17233c;--input-bg: #0f1a30;--panel-bg: rgba(15, 23, 42, .92);--page-bg: #060d1f;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Nunito,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,Noto Sans Khmer,Noto Sans Myanmar,-apple-system,Segoe UI,sans-serif;background:var(--page-bg);color:var(--text);min-height:100vh;display:flex;align-items:center;justify-content:center}.wrap{width:100%;height:100vh;height:100dvh;display:flex;justify-content:center}.stage{position:relative;width:100%;height:100%;overflow:hidden;background:#101a33}canvas#game{display:block;width:100%;height:100%}.home-link-wrap{margin:0 0 .2rem;display:flex;flex-wrap:wrap;gap:.3rem .8rem}.home-link[hidden]{display:none}html.is-native .web-only,html.is-native #fsBtn,.home-link{color:var(--muted);font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;text-decoration:none}.home-link:hover{color:var(--green-text)}#hud{position:absolute;top:calc(1.6rem + var(--safe-top));left:.6rem;pointer-events:none;z-index:2}.chip{background:var(--panel-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:.75rem;padding:.25rem .75rem;font-weight:900;font-size:1rem}#quiz{position:absolute;bottom:max(1rem,env(safe-area-inset-bottom));top:auto;left:50%;transform:translate(-50%);width:min(92%,30rem);background:var(--panel-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:1rem;padding:clamp(.5rem,1.6vmin,.85rem) clamp(.75rem,2.4vmin,1.15rem) clamp(.6rem,1.8vmin,.95rem);text-align:center;z-index:3}.q-label{font-size:.8rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.35rem}.sentence{font-size:clamp(.95rem,3.2vmin,1.15rem);font-weight:800;color:var(--text);line-height:1.35;margin:0 0 .45rem}.sentence .blank{display:inline-block;min-width:2.4rem;padding:0 .35rem;margin:0 .1rem;border-bottom:3px solid var(--blue);color:var(--blue);font-style:normal}.sentence .blank.filled{border-bottom-color:var(--green);color:var(--green-text)}.answers{display:flex;gap:clamp(.5rem,1.8vmin,.8rem);justify-content:center;flex-wrap:wrap}.btn{font-family:inherit;font-weight:800;font-size:.95rem;color:var(--text);background:var(--card-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:.75rem;padding:.5rem .9rem;min-height:2.75rem;min-width:5rem;cursor:pointer;transition:background .1s,transform .05s,border-color .1s;touch-action:manipulation}.btn:hover{background:#1e2d4d}.btn:active{transform:translateY(2px);border-bottom-width:2px}.btn:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.btn:disabled{cursor:default}.btn.correct{background:var(--green-light);border-color:var(--green-border);color:var(--green-text)}.btn.wrong{background:var(--red-light);border-color:var(--red-border);color:var(--red-text);animation:shake .3s}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.hz{display:inline-flex;flex-direction:column;align-items:center;line-height:1.1;vertical-align:middle}.hz-zh{font-size:1.35em;font-weight:800;letter-spacing:.04em}.hz-py{font-size:.68em;font-weight:700;opacity:.75;margin-top:.1rem}.btn .hz-zh{font-size:1.45rem}.btn .hz-py{font-size:.75rem}.sentence .blank.hz{padding-bottom:.1rem}.timerbar{height:.4rem;background:var(--border);border-radius:.2rem;margin-top:.5rem;overflow:hidden}.timerbar i{display:block;height:100%;width:100%;background:var(--green);border-radius:.2rem;transition:width .1s linear,background .2s}.timerbar i.low{background:var(--red)}.first-hint{position:absolute;left:50%;top:calc(5.6rem + var(--safe-top));transform:translate(-50%);z-index:3;width:min(22rem,88%);text-align:center;font-size:.85rem;font-weight:800;line-height:1.35;color:var(--text);background:var(--panel-bg);border:2px solid var(--green);border-bottom-width:4px;border-radius:.9rem;padding:.55rem .8rem;pointer-events:none;animation:hint-in .35s ease}.first-hint.hidden{display:none}@keyframes hint-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.overlay{position:absolute;inset:0;background:#030814a6;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:calc(4.5rem + var(--safe-top)) clamp(.4rem,2vmin,1rem) calc(clamp(.6rem,2vmin,1rem) + var(--safe-bottom));z-index:4}#mmOverlay,#ratingOverlay,#photoModal,#overOverlay,#signupOverlay,#accountOverlay,#iosHint{z-index:7}.overlay>*{margin:auto}.card{background:var(--card-bg);border:2px solid var(--border);border-radius:1.25rem;padding:clamp(.6rem,3vmin,1.6rem) clamp(.8rem,3.5vmin,2.1rem);box-shadow:0 .5rem 1.5rem #00000080;display:flex;align-items:center;gap:clamp(.6rem,3vmin,1.8rem);max-width:min(96%,40rem);max-height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.card-main{flex:1 1 auto;text-align:center;min-width:0}.card-side{flex:0 0 clamp(11rem,34vw,14rem);min-width:0}.card h1,.card h2{font-size:clamp(1.1rem,4.5vmin,1.6rem);font-weight:900;margin-bottom:clamp(.25rem,1.8vmin,.8rem)}.rules{font-size:clamp(.72rem,2.6vmin,.9rem);line-height:1.4;color:var(--muted);margin-bottom:clamp(.4rem,2.2vmin,1rem)}.char-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.4rem,2vmin,.9rem);margin-bottom:clamp(.4rem,2.2vmin,.95rem)}.char-card{background:var(--input-bg);border:2px solid var(--border);border-radius:.75rem;padding:clamp(.2rem,1.2vmin,.65rem);cursor:pointer;text-align:center;touch-action:manipulation}.char-card img{width:100%;height:clamp(4rem,15vmin,6.6rem);height:clamp(3.2rem,min(15vmin,9dvh),6.6rem);object-fit:contain}.char-card .char-name{font-size:clamp(.7rem,2.4vmin,.85rem);font-weight:800;color:var(--muted)}.char-card.selected{border-color:var(--green);background:var(--green-light)}.char-card.selected .char-name{color:var(--green-text)}.char-card:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.char-photo-icon{height:clamp(4rem,15vmin,6.6rem);height:clamp(3.2rem,min(15vmin,9dvh),6.6rem);display:flex;align-items:center;justify-content:center;color:var(--muted)}.char-photo-icon svg{width:55%;height:55%}.name-input{font-family:inherit;font-weight:800;font-size:clamp(.9rem,3vmin,1rem);color:var(--text);background:var(--input-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:.75rem;padding:clamp(.35rem,1.7vmin,.7rem) .9rem;width:100%;text-align:center;margin-bottom:clamp(.4rem,2vmin,.85rem)}.name-input:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.name-input::placeholder{color:var(--muted);font-weight:700}.profile-chip{position:absolute;top:calc(1.6rem + var(--safe-top));left:.6rem;z-index:6;display:flex;align-items:center;gap:.45rem;max-width:min(42vw,11rem);padding:.22rem .55rem .22rem .22rem;background:var(--panel-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:999px;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation}.profile-chip:hover{background:#1e2d4d}.profile-chip:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.profile-ava{width:2.05rem;height:2.05rem;object-fit:contain;flex:0 0 auto;border-radius:50%;background:var(--input-bg)}.profile-chip-name{font-weight:800;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.btn-primary{background:var(--green);border-color:var(--green);border-bottom:4px solid var(--green-dark);color:#0b1d0b;font-size:clamp(.95rem,3vmin,1.05rem);text-transform:uppercase;letter-spacing:.05em;padding:clamp(.45rem,2.2vmin,.85rem) clamp(1.5rem,4vmin,2.1rem)}.btn-primary:hover{background:#61e002}.btn-primary:disabled{background:#3a6620;border-color:#3a6620;color:#7d9b6c}.card-photo{flex-direction:column;text-align:center}.photo-hint{font-size:clamp(.7rem,2.4vmin,.85rem);color:var(--muted);max-width:24rem;line-height:1.4}#cropCanvas{background:var(--input-bg);border:2px solid var(--border);border-radius:.75rem;max-height:min(46vh,24rem);max-width:90%;touch-action:none}.zoom-row{display:flex;align-items:center;gap:.6rem;font-size:.85rem;font-weight:800;color:var(--muted);width:min(90%,20rem)}.zoom-row input{flex:1}.photo-btns{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.score-row{display:flex;align-items:center;justify-content:center;gap:.7rem;margin-bottom:clamp(.2rem,1.4vmin,.7rem)}.score-big{font-size:clamp(2rem,9vmin,3rem);font-weight:900;color:var(--green);line-height:1}.score-label{font-size:clamp(.7rem,2.5vmin,.85rem);color:var(--muted);text-align:left;line-height:1.2}.best{font-size:clamp(.8rem,2.8vmin,.9rem);font-weight:800;color:var(--blue);margin-bottom:.2rem}.last-word{font-size:clamp(.75rem,2.8vmin,.9rem);color:var(--muted);margin-bottom:clamp(.4rem,2.2vmin,1.05rem)}.last-word b{color:var(--text)}.over-btns{display:flex;gap:clamp(.5rem,1.8vmin,.85rem);flex-wrap:wrap;justify-content:center;margin-top:clamp(.3rem,1.6vmin,.7rem)}.lb-title{font-size:clamp(.7rem,2.5vmin,.8rem);font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25rem;text-align:center}.lb-place{font-size:clamp(.8rem,2.8vmin,.95rem);font-weight:800;color:var(--blue);margin-bottom:.5rem;text-align:center}.lb-top{list-style:none;counter-reset:lb;max-height:calc(3 * 2.6rem);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:.15rem}.lb-top li{counter-increment:lb;display:flex;align-items:center;gap:.45rem;background:var(--input-bg);border:2px solid var(--border);border-radius:.6rem;padding:.3rem .65rem;margin-bottom:.35rem;font-weight:800;font-size:clamp(.75rem,2.8vmin,.9rem);height:2.25rem}.lb-top li:before{content:none;min-width:0;padding:0}.lb-rank{color:var(--muted);min-width:1.35rem;text-align:center;flex:0 0 auto;font-variant-numeric:tabular-nums}.lb-rank.top{min-width:1.5rem;font-size:1.05em}.lb-flag{flex:0 0 auto;font-size:.95em;line-height:1}.lb-live{display:inline-block;width:.42rem;height:.42rem;margin-left:.28rem;border-radius:50%;background:#22c55e;box-shadow:0 0 0 .12rem #22c55e59;vertical-align:middle}.lb-top li.me{border-color:var(--green);background:var(--green-light)}.lb-name{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-score{color:var(--green-text);flex:0 0 auto}.fs-btn{position:absolute;top:calc(1.6rem + var(--safe-top));right:.6rem;z-index:5;width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;color:var(--text);background:var(--panel-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:.75rem;cursor:pointer;touch-action:manipulation}.fs-btn:hover{background:#1e2d4d}.fs-btn:active{transform:translateY(2px);border-bottom-width:2px}.fs-btn svg{width:1.25rem;height:1.25rem}body.pseudo-fs .wrap{height:100dvh}.hidden{display:none!important}@media(orientation:portrait){.card{flex-direction:column}.card-side{flex:0 0 auto;width:100%}.char-grid{grid-template-columns:repeat(2,1fr)}.char-card img,.char-photo-icon{height:clamp(5rem,min(22vmin,15dvh),8.5rem)}}@media(max-height:30rem){#quiz{bottom:.5rem;padding:.35rem .6rem .45rem}.q-label{display:none}.btn{font-size:.85rem;min-height:2.5rem;padding:.35rem .7rem}.rules{display:none}.char-card img,.char-photo-icon{height:2.6rem}.sentence{font-size:.85rem;margin-bottom:.25rem}.card{padding:.55rem .9rem;gap:.6rem}.card h1,.card h2{margin-bottom:.3rem}.char-grid{gap:.35rem;margin-bottom:.4rem}.char-card{padding:.2rem}.sec-label{margin:.25rem 0 .15rem}.set-grid{gap:.35rem;margin-bottom:.45rem}.set-card{padding:.3rem .2rem}.mode-grid{gap:.35rem;margin-bottom:.45rem}.mode-card{padding:.4rem}.name-input{margin-bottom:.4rem;padding:.35rem .9rem}.btn-primary{padding:.45rem 1.3rem}.rating-line{margin-bottom:.3rem}.pwa-row{margin-top:.45rem}.over-btns{margin-top:.25rem;gap:.45rem}.last-word{margin-bottom:.4rem}}.sec-label{font-size:clamp(.65rem,2.2vmin,.78rem);font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;text-align:left;margin:clamp(.2rem,1.6vmin,.85rem) 0 clamp(.15rem,1vmin,.45rem)}.set-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(.3rem,1.6vmin,.7rem);margin-bottom:clamp(.4rem,2.2vmin,1rem)}.set-card{background:var(--input-bg);border:2px solid var(--border);border-radius:.75rem;padding:clamp(.3rem,1.7vmin,.8rem) .25rem;cursor:pointer;text-align:center;touch-action:manipulation;color:var(--text);font-family:inherit}.set-card .set-n{font-size:clamp(1rem,3.6vmin,1.4rem);font-weight:900;color:var(--green-text)}.set-card .set-t{font-size:clamp(.55rem,1.9vmin,.7rem);font-weight:700;color:var(--muted)}.set-card.selected{border-color:var(--green);background:var(--green-light)}.set-card:disabled{opacity:.45;cursor:default}.set-card:focus-visible{outline:3px solid var(--blue);outline-offset:2px}@media(orientation:portrait){.set-grid{grid-template-columns:repeat(5,1fr)}}.lb-ava{width:1.5rem;height:1.5rem;border-radius:50%;object-fit:cover;flex:0 0 auto;background:var(--card-bg);border:1px solid var(--border)}span.lb-ava{display:block;border-color:transparent;background:transparent}#hud{display:flex;flex-direction:column;gap:.35rem;align-items:flex-start}.chip-rival{border-color:var(--blue);color:#7dd3fc}.chip-rating{border-color:#f59e0b;color:#fbbf24}.rating-line{font-size:clamp(.8rem,2.8vmin,.95rem);font-weight:800;color:#fbbf24;margin-bottom:clamp(.3rem,1.8vmin,.9rem)}.pwa-row{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-top:clamp(.55rem,2.2vmin,1.1rem)}.pwa-row .btn{font-size:.8rem;min-height:2.35rem;padding:.35rem .8rem}.pwa-hint{font-size:clamp(.65rem,2.2vmin,.78rem);color:var(--muted);margin-top:.4rem;line-height:1.35}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.3rem,1.6vmin,.75rem);margin-bottom:clamp(.5rem,2.2vmin,1.05rem)}.mode-card{background:var(--input-bg);border:2px solid var(--border);border-radius:.75rem;padding:clamp(.45rem,2vmin,1rem) .5rem;cursor:pointer;text-align:center;touch-action:manipulation;color:var(--text);font-family:inherit}.mode-card .mode-n{font-size:clamp(.85rem,3vmin,1.05rem);font-weight:900}.mode-card .mode-t{font-size:clamp(.6rem,2vmin,.72rem);font-weight:700;color:var(--muted);margin-top:.15rem;line-height:1.25}.mode-card.selected{border-color:var(--green);background:var(--green-light)}.mode-card.selected .mode-t{color:var(--green-text)}.mode-card:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.versus-scores{display:flex;align-items:center;justify-content:center;gap:.9rem;margin-bottom:clamp(.25rem,1.2vmin,.45rem)}.versus-scores .score-label{text-align:center;display:block}.vs-mark{font-weight:900;color:var(--muted);font-size:.9rem}.score-rival{color:var(--blue)}.ios-steps{text-align:left;color:var(--muted);font-size:clamp(.8rem,2.8vmin,.95rem);font-weight:700;line-height:1.45;margin:.4rem auto .9rem;padding-left:1.2rem;max-width:22rem}.ios-steps li{margin-bottom:.35rem}@media(max-width:28rem){.profile-chip{top:calc(1.35rem + var(--safe-top));padding-right:.28rem}.profile-chip-name{display:none}}.coach-tip{position:absolute;left:50%;bottom:calc(100% + .7rem);transform:translate(-50%);width:max-content;max-width:min(22rem,92vw);margin:0;padding:.5rem .85rem;font-size:.9rem;font-weight:900;line-height:1.3;color:#07210a;background:var(--green);border-radius:.9rem;box-shadow:0 6px 18px #00000059;pointer-events:none;animation:coach-bob 1.1s ease-in-out infinite}.coach-tip:after{content:"";position:absolute;left:50%;top:100%;transform:translate(-50%);border:.5rem solid transparent;border-top-color:var(--green)}.coach-tip.hidden{display:none}@keyframes coach-bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-.35rem)}}#quiz.coached .answers .btn:not(:disabled),.answers.nudge .btn:not(:disabled){border-color:var(--green);animation:coach-glow .9s ease-in-out infinite}@keyframes coach-glow{0%,to{box-shadow:0 0 #58cc028c}50%{box-shadow:0 0 0 .45rem #58cc0200}}.answers .btn{position:relative}.key-hint{display:none}@media(hover:hover)and (pointer:fine){.key-hint{position:absolute;top:.2rem;left:.3rem;display:block;min-width:1rem;padding:0 .2rem;font:800 .62rem/1.35 Nunito,sans-serif;color:var(--muted);border:1px solid var(--border);border-radius:.3rem;opacity:.85}}@media(prefers-reduced-motion:reduce){.coach-tip,#quiz.coached .answers .btn:not(:disabled),.answers.nudge .btn:not(:disabled){animation:none}}.card-mm{gap:clamp(.45rem,2.2vmin,1.15rem);width:min(96%,28rem);max-width:min(96%,28rem)}.mm-pair{display:flex;align-items:center;justify-content:center;gap:clamp(.6rem,3vmin,1.4rem);width:100%}.mm-side{flex:1 1 0;min-width:0;text-align:center}.mm-ava-box{position:relative;width:clamp(3.6rem,15vmin,5.2rem);height:clamp(3.6rem,15vmin,5.2rem);margin:0 auto .3rem;border-radius:50%;border:2px solid var(--border);background:var(--input-bg);display:flex;align-items:center;justify-content:center;overflow:hidden}.mm-ava-box.searching{border-color:var(--blue);animation:mm-pulse 1.1s ease-in-out infinite}.mm-ava-box.found{border-color:var(--green);animation:mm-pop .35s ease-out}.mm-ava{width:100%;height:100%;object-fit:contain}.mm-q{font-size:clamp(1.4rem,6vmin,2rem);font-weight:900;color:var(--blue)}@keyframes mm-pulse{0%,to{box-shadow:0 0 #1cb0f680}50%{box-shadow:0 0 0 .6rem #1cb0f600}}@keyframes mm-pop{0%{transform:scale(.7)}60%{transform:scale(1.08)}to{transform:scale(1)}}.mm-name{font-size:clamp(.8rem,3vmin,.95rem);font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-elo{font-size:clamp(.7rem,2.5vmin,.82rem);font-weight:800;color:#fbbf24}.mm-vs{font-size:clamp(.9rem,3.4vmin,1.1rem);font-weight:900;color:var(--muted);flex:0 0 auto}.mm-count{font-size:clamp(2.2rem,10vmin,3.4rem);font-weight:900;color:var(--green);line-height:1;animation:mm-count .6s ease-out}@keyframes mm-count{0%{transform:scale(1.6);opacity:0}40%{opacity:1}to{transform:scale(1);opacity:1}}.mm-dots:after{content:"";animation:mm-dots 1.2s steps(4,end) infinite}@keyframes mm-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.chip-rival.out{opacity:.55;border-color:var(--border);color:var(--muted);text-decoration:line-through}.chip-mult{color:#ffc800;border-color:#ffc800;font-weight:900;letter-spacing:.02em}.chip-mult.hidden{display:none}.chip-mult.up{animation:mult-up .45s cubic-bezier(.22,1,.3,1)}@keyframes mult-up{0%{transform:scale(1.75);box-shadow:0 0 22px #ffc800bf}to{transform:scale(1);box-shadow:none}}.chip-shields.repaired{animation:shield-repair .6s ease}@keyframes shield-repair{0%{box-shadow:0 0 #58cc0200}30%{box-shadow:0 0 24px #58cc02e6;border-color:var(--green)}to{box-shadow:0 0 #58cc0200}}#quiz[data-kind=golden]{--kind: #ffc800}#quiz[data-kind=listen]{--kind: #1cb0f6}#quiz[data-kind=reverse]{--kind: #c084fc}#quiz[data-kind=golden] .q-label,#quiz[data-kind=listen] .q-label,#quiz[data-kind=reverse] .q-label{color:var(--kind)}#quiz[data-kind=golden] #timerFill,#quiz[data-kind=listen] #timerFill,#quiz[data-kind=reverse] #timerFill{background:var(--kind)}.listen-again{width:3.6rem;height:3.6rem;margin:0 auto;display:grid;place-items:center;font-size:1.7rem;line-height:1;color:var(--blue);background:#1cb0f61f;border:2px solid var(--blue);border-radius:50%;cursor:pointer;touch-action:manipulation;animation:listen-pulse 1.8s ease-in-out infinite}.listen-again:active{transform:scale(.94)}@keyframes listen-pulse{0%,to{box-shadow:0 0 #1cb0f673}60%{box-shadow:0 0 0 12px #1cb0f600}}@media(prefers-reduced-motion:reduce){.chip-mult.up,.chip-shields.repaired,.listen-again{animation:none}}.chip-shields{display:flex;align-items:center;gap:.28rem;padding:.42rem .6rem}.chip-shields i{width:.85rem;height:.95rem;background:var(--green);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2 4 5v6c0 5 3.4 9.4 8 11 4.6-1.6 8-6 8-11V5z'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2 4 5v6c0 5 3.4 9.4 8 11 4.6-1.6 8-6 8-11V5z'/%3E%3C/svg%3E") center / contain no-repeat;transition:background .18s ease,transform .18s ease}.chip-shields i.spent{background:#a5b3c74d;transform:scale(.82)}.chip-shields.low i:not(.spent){background:var(--red);box-shadow:0 0 10px #ff4b4b99}.chip-shields.low{border-color:var(--red)}.chip-shields.knock{animation:shield-knock .42s cubic-bezier(.36,.07,.19,.97)}.chip-shields i.breaking{animation:shield-break .42s cubic-bezier(.22,1,.3,1)}@keyframes shield-break{0%{transform:scale(1);background:var(--red);border-color:transparent;box-shadow:0 0 14px #ff4b4bcc}45%{transform:scale(1.75);background:transparent;box-shadow:0 0 #ff4b4b00}to{transform:scale(.82)}}@keyframes shield-knock{0%,to{transform:translate(0)}20%{transform:translate(-5px)}45%{transform:translate(4px)}70%{transform:translate(-2px)}}@media(prefers-reduced-motion:reduce){.chip-shields.knock,.chip-shields i.breaking{animation:none}.chip-shields i{transition:none}}.card-rating{max-width:min(96%,34rem);width:min(96%,34rem);gap:.55rem}.rating-kicker{margin:0;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}.rating-me{display:grid;grid-template-columns:auto auto minmax(0,1fr) 3.4rem;align-items:center;column-gap:.4rem;row-gap:.15rem;width:100%;background:var(--green-light);border:2px solid var(--green);border-radius:.75rem;padding:.5rem .7rem;font-weight:800;font-size:clamp(.78rem,2.9vmin,.92rem)}.rating-me .lb-ava{width:1.9rem;height:1.9rem;grid-row:1 / 3}.rating-me .lb-flag{grid-column:2;grid-row:1}.rating-me .rating-me-name{grid-column:3;grid-row:1;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rating-me .rating-me-place{grid-column:2 / 4;grid-row:2;color:var(--blue);font-size:.82em;text-align:left}.rating-me .rating-me-next{color:#ffc800;font-weight:800}.rating-me .rating-me-elo{grid-column:4;grid-row:1 / 3;color:var(--green-text);font-size:1.05em;font-variant-numeric:tabular-nums;text-align:right}.lb-head{display:grid;grid-template-columns:1.7rem minmax(0,1fr) 2.5rem 2.7rem;width:100%;padding:0 .55rem;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);text-align:left}.lb-head span:nth-child(3),.lb-head span:nth-child(4){text-align:right}.lb-full{width:100%;max-height:min(52vh,26rem);counter-reset:none}.lb-full li{display:grid;grid-template-columns:1.55rem 1.05rem 1.55rem minmax(0,1fr) 2.2rem 2.5rem;align-items:center;gap:.25rem;height:auto;min-height:2.45rem;padding:.3rem .4rem}.lb-full .lb-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.lb-full .lb-games{color:var(--muted);font-size:.78em;text-align:right;font-variant-numeric:tabular-nums}.lb-full .lb-score{text-align:right;font-variant-numeric:tabular-nums}@media(max-width:24rem){.lb-head{grid-template-columns:1.55rem minmax(0,1fr) 2.5rem}.lb-head span:nth-child(3){display:none}.lb-full li{grid-template-columns:1.55rem 1.05rem 1.55rem minmax(0,1fr) 2.5rem}.lb-full .lb-games{display:none}}@media(max-height:30rem){.lb-full{max-height:40vh}.card-mm .rules{display:block}.mm-ava-box{width:3rem;height:3rem}}.plang-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.3rem,1.4vmin,.55rem);margin-bottom:clamp(.35rem,1.7vmin,.6rem)}.plang-card{display:flex;align-items:center;justify-content:center;gap:.35rem;background:var(--input-bg);border:2px solid var(--border);border-radius:.7rem;padding:clamp(.28rem,1.2vmin,.45rem) .35rem;color:var(--text);font-family:inherit;font-weight:800;cursor:pointer;touch-action:manipulation;min-width:0}.plang-card.selected{border-color:var(--green);background:var(--green-light)}.plang-card.selected .plang-name{color:var(--green-text)}.plang-card:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.plang-flag{font-size:clamp(.85rem,3vmin,1.05rem);line-height:1;flex:0 0 auto}.plang-name{font-size:clamp(.58rem,2vmin,.75rem);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.set-hint{margin-top:-.15rem;text-align:center}@media(orientation:portrait){.plang-grid{grid-template-columns:repeat(3,1fr)}}@media(max-height:30rem){.plang-grid{gap:.3rem;margin-bottom:.4rem}.plang-card{padding:.25rem .3rem}.set-hint{display:none}}.prompt-word{display:inline-block;font-size:clamp(1.1rem,4.4vmin,1.5rem);font-weight:900;color:var(--text);line-height:1.2}.prompt-arrow{margin:0 .4rem;color:var(--muted);font-weight:900}@media(max-height:30rem){.prompt-word{font-size:clamp(.95rem,3.6vmin,1.15rem)}}.card-signup{position:relative;max-width:min(96%,26rem);width:min(96%,26rem);gap:clamp(.35rem,1.6vmin,.7rem);animation:signup-in .25s ease-out}.card-signup:focus{outline:none}.card-signup h2,.card-signup .rules{margin-bottom:0}.signup-email{margin-bottom:0;text-align:left}.signup-email[aria-invalid=true]{border-color:var(--red-border)}.signup-hp{position:absolute;left:-10000px;width:1px;height:1px;opacity:0;pointer-events:none}.signup-consent{display:flex;align-items:flex-start;gap:.5rem;width:100%;text-align:left;font-size:clamp(.72rem,2.5vmin,.85rem);line-height:1.4;color:var(--text);cursor:pointer}.signup-consent input{flex:0 0 auto;width:1.15rem;height:1.15rem;margin-top:.05rem;accent-color:var(--green);cursor:pointer}.signup-msg{min-height:1.2em;font-size:clamp(.72rem,2.5vmin,.85rem);font-weight:800;color:var(--muted)}.signup-msg[data-tone=error]{color:var(--red-text)}.signup-msg[data-tone=ok]{color:var(--green-text)}.card-signup .over-btns{margin-top:0}.signup-privacy{margin:0}@keyframes signup-in{0%{transform:translateY(.75rem) scale(.97);opacity:0}to{transform:none;opacity:1}}@media(max-height:30rem){.card-signup{gap:.3rem}.signup-privacy{display:none}}.link-btn{background:none;border:0;padding:.15rem .3rem;font-family:inherit;font-weight:800;font-size:clamp(.72rem,2.5vmin,.85rem);color:var(--blue);cursor:pointer;text-decoration:underline;text-underline-offset:.2em;touch-action:manipulation}.link-btn:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:.3rem}.link-btn:disabled{color:var(--muted);cursor:default;text-decoration:none}.card-account{max-width:min(96%,27rem);width:min(96%,27rem)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;width:100%;background:var(--input-bg);border:2px solid var(--border);border-radius:.85rem;padding:.25rem}.auth-tab{font-family:inherit;font-weight:800;font-size:clamp(.8rem,2.8vmin,.92rem);color:var(--muted);background:transparent;border:0;border-radius:.6rem;padding:.45rem .5rem;cursor:pointer;touch-action:manipulation}.auth-tab.selected{background:var(--green-light);color:var(--green-text)}.auth-tab:focus-visible{outline:3px solid var(--blue);outline-offset:1px}.acct-box{width:100%;background:var(--input-bg);border:2px solid var(--border);border-radius:.75rem;padding:.5rem .75rem;display:flex;flex-direction:column;align-items:center;gap:.2rem}.acct-line{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.45rem;max-width:100%}.acct-email{font-weight:900;font-size:clamp(.85rem,3vmin,1rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.acct-player{display:flex;align-items:center;gap:.75rem;width:100%;background:var(--green-light);border:2px solid var(--green);border-radius:.75rem;padding:.45rem .75rem;text-align:left}.acct-ava{width:2.8rem;height:2.8rem;border-radius:50%;object-fit:contain;background:var(--input-bg);flex:0 0 auto}.acct-player-info{min-width:0}.acct-name{font-weight:900;font-size:clamp(.9rem,3vmin,1.05rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct-stats{font-weight:800;font-size:clamp(.72rem,2.5vmin,.85rem);color:#fbbf24}.acct-sync{margin:0;font-size:.68rem}.acct-ach{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:.45rem;background:var(--input-bg);border:2px solid var(--border);border-radius:.75rem;padding:.55rem .7rem}.acct-ach .sec-label{margin:0;text-align:left}.acct-ach .acct-player{background:none;border:0;padding:0}.ach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}.ach-cell{border:2px solid var(--border);border-radius:.65rem;padding:.35rem .2rem;text-align:center;min-width:0}.ach-num{font-weight:900;font-size:clamp(1rem,4vmin,1.3rem);color:var(--green-text);line-height:1.15}.ach-num.ach-streak{color:#ff9600}.ach-num.ach-best{color:#fbbf24}.ach-label{font-weight:800;font-size:.7rem;color:var(--muted)}.ach-hsk{display:grid;gap:.3rem;width:100%}.ach-hsk-row{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.78rem;font-weight:800;color:var(--muted)}.ach-hsk-row b{color:var(--text);font-weight:900}.ach-hsk-bar{display:flex;height:.6rem;background:var(--border);border-radius:99px;overflow:hidden}.ach-hsk-bar i{display:block;height:100%}.ach-learned{background:var(--green)}.ach-learning{background:#58cc0266}.ach-review{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;font-weight:800}.ach-review.hidden{display:none}.ach-review-label{font-size:.78rem;color:var(--muted)}.ach-review-words{font-size:1.15rem;font-weight:900;letter-spacing:.04em;font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif}.ach-play{width:100%}.acct-ach .link-btn{align-self:center}.over-ach{margin-top:.5rem}.over-rating{display:block;margin:.5rem auto 0}.ach-rank-cell{display:block;width:100%;font:inherit;color:inherit;background:none;cursor:pointer;touch-action:manipulation}.ach-rank-cell>span{display:block}.ach-rank-cell:hover{border-color:var(--blue)}.ach-rank-cell:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.ach-num.ach-rank{color:var(--blue)}.acct-sub{width:100%;display:flex;flex-direction:column;align-items:center;gap:.4rem;border-top:2px dashed var(--border);padding-top:.5rem}.acct-sub .rules{margin:0}.acct-actions{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center}.acct-actions .btn{font-size:.8rem;min-height:2.35rem;padding:.35rem .75rem;min-width:0}.btn-danger{background:var(--red);border-color:var(--red);border-bottom-color:#c93a3a;color:#fff}.btn-danger:hover{background:#ff6161}.btn-danger-outline{border-color:var(--red-border);color:var(--red-text)}@media(max-height:30rem){.card-account .rules{display:none}.acct-sub .rules{display:block}.acct-ava{width:2.2rem;height:2.2rem}.acct-ach{gap:.3rem;padding:.4rem .6rem}}.auth-google{display:flex;flex-direction:column;gap:10px;margin:4px 0 6px}.auth-google.hidden{display:none}.btn-google{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#fff;color:#1f1f1f;border:1px solid #dadce0}.btn-google:disabled{opacity:.6}.auth-or{display:flex;align-items:center;gap:10px;font-size:.85em;opacity:.7}.auth-or:before,.auth-or:after{content:"";flex:1;height:1px;background:currentColor;opacity:.35}#signupOverlay{z-index:12}.signup-frame{position:relative;width:min(96%,26rem);max-width:min(96%,26rem);max-height:100%;display:flex;flex-direction:column}.signup-frame>.card-signup{width:100%;max-width:none;min-height:0;padding-top:2.5rem}.card-signup{position:relative}.signup-google{margin:.4rem 0 .2rem}.btn-google-big{width:100%;justify-content:center;font-size:1.05rem;padding:.75rem 1rem}.signup-x{position:absolute;z-index:2;top:.45rem;right:.45rem;width:2.25rem;height:2.25rem;margin:0;padding:0;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#ffffff1f;color:#fff;cursor:pointer;touch-action:manipulation}.signup-x svg{display:block}.signup-x:hover,.signup-x:focus-visible{background:#ffffff38;color:#fff}.card-banner{gap:0}.banner-auth{display:flex;flex-direction:column;align-items:stretch;gap:clamp(.35rem,1.6vmin,.6rem);width:100%}.banner-auth h2{margin:0}.banner-submit{width:100%}.banner-hero{position:relative;align-self:center;width:4.4rem;height:4.4rem}.banner-ava{width:100%;height:100%;object-fit:contain}.banner-cloud{position:absolute;right:-.9rem;bottom:-.1rem;width:2.1rem;height:2.1rem;display:grid;place-items:center;border-radius:50%;background:var(--green);color:#07210a;box-shadow:0 0 0 3px var(--card-bg)}.banner-cloud svg{width:1.3rem;height:1.3rem}.home-steps{list-style:none;display:flex;align-items:center;justify-content:center;gap:.5rem;margin:0;padding:0}.home-step{display:inline-flex;align-items:center;gap:.4rem;min-height:2.6rem;padding:.3rem .65rem;border-radius:.8rem;background:var(--input-bg);border:2px solid var(--border);color:var(--text);font-weight:800;font-size:clamp(.75rem,2.6vmin,.88rem)}.home-step svg{width:1.4rem;height:1.4rem;flex:0 0 auto;color:var(--blue)}.home-step-arrow{font-weight:900;font-size:1.3rem;color:var(--muted)}.home-steps[data-os=ios] .home-android,.home-steps[data-os=android] .home-ios{display:none}@media(max-height:30rem){.banner-hero{display:none}}.over-progress{margin:.15rem 0 0;font-weight:900;color:var(--green-text)}.over-progress:empty{display:none}.over-ach.over-unlock{color:#07210a;background:var(--gold, #ffc800);border-radius:.8rem;padding:.45rem .8rem;text-decoration:none}.banner-sub{margin:-.2rem 0 .1rem}.card-banner .signup-consent{padding:.55rem .7rem;border:2px dashed var(--border);border-radius:.8rem;font-weight:800}.card-banner .signup-consent:has(input:checked){border-style:solid;border-color:var(--green)}.card-account h2{padding-inline:2.4rem}.acct-line{flex-wrap:nowrap;width:100%;justify-content:space-between}.acct-email{min-width:0}.acct-icon{flex:0 0 auto;width:2.1rem;height:2.1rem;display:grid;place-items:center;padding:0;color:var(--muted);background:#ffffff12;border:0;border-radius:50%;cursor:pointer;touch-action:manipulation}.acct-icon:hover{color:var(--text);background:#ffffff26}.acct-icon:focus-visible{outline:3px solid var(--blue);outline-offset:2px}#acctLogout:hover{color:var(--red-text)}.acct-player-info{flex:1}.acct-name-row{display:flex;align-items:center;gap:.35rem;min-width:0}.acct-name-row.hidden{display:none}.acct-name-row .acct-icon{width:1.8rem;height:1.8rem}.acct-name-form{display:flex;align-items:center;gap:.35rem}.acct-name-form.hidden{display:none}.acct-name-input{margin:0;min-width:0;flex:1;padding:.35rem .6rem;font-size:.95rem}.acct-name-save{color:#07210a;background:var(--green)}.acct-name-save:hover{color:#07210a;background:var(--green);filter:brightness(1.08)}.acct-ava-wrap{position:relative;flex:0 0 auto}.acct-ava-edit{position:absolute;right:-.35rem;bottom:-.3rem;width:1.45rem;height:1.45rem;display:grid;place-items:center;padding:0;color:#07210a;background:var(--green);border:2px solid var(--card-bg);border-radius:50%;cursor:pointer}.acct-ava-edit svg{width:.75rem;height:.75rem}.acct-ava-edit:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.acct-chars{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem;width:100%}.acct-chars.hidden{display:none}.acct-char{aspect-ratio:1;max-width:100%;display:grid;place-items:center;padding:.25rem;background:var(--input-bg);border:2px solid var(--border);border-radius:.8rem;cursor:pointer}.acct-char img{width:100%;height:100%;object-fit:contain}.acct-char.selected{border-color:var(--green);background:var(--green-light)}.acct-char:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.frame-basic{box-shadow:0 0 0 3px #c9d1dc,0 0 10px #c9d1dc99!important;border-radius:.9rem}.frame-plus{box-shadow:0 0 0 3px #ffc800,0 0 12px #ffc800b3!important;border-radius:.9rem}.frame-premium{box-shadow:0 0 0 2px #ff4b4b,0 0 0 4px #ffc800,0 0 0 6px #58cc02,0 0 0 8px #1cb0f6,0 0 14px #ce82ffb3!important;border-radius:.9rem}.acct-ava-wrap.frame-basic,.acct-ava-wrap.frame-plus,.acct-ava-wrap.frame-premium,.rating-me .frame-basic,.rating-me .frame-plus,.rating-me .frame-premium{border-radius:50%}.over-upsell{margin:.35rem 0 0;padding:.45rem .6rem;font-size:.85rem;font-weight:800;color:var(--text);background:#ffc8001a;border:1px solid rgba(255,200,0,.45);border-radius:.7rem}.over-upsell.hidden{display:none}.over-upsell .link-btn{color:#ffc800}.ach-next{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;margin-top:.15rem;padding:.4rem .6rem;font:inherit;font-size:.8rem;font-weight:800;color:var(--muted);text-align:left;background:var(--input-bg);border:1px dashed var(--border);border-radius:.6rem;cursor:pointer}.ach-next:disabled{cursor:default}.ach-next.is-active{color:#ffc800;border:1px solid rgba(255,200,0,.5)}.ach-next-pill{flex:0 0 auto;color:#ffc800;font-weight:900}.ach-next:not(:disabled):hover{border-color:#ffc800}.ach-mistakes{display:flex;align-items:baseline;gap:.3rem .5rem;flex-wrap:wrap;font-weight:800}.ach-mistakes.hidden{display:none}.ach-mistakes .link-btn{color:#ffc800;margin-left:auto}.ach-mistake-list{flex:1 0 100%;margin:0;padding:0;list-style:none;display:grid;gap:.2rem;text-align:left}.ach-mistake-list li{display:flex;align-items:baseline;gap:.45rem;min-width:0}.ach-mistake-zh{flex:0 0 auto;font-size:1.15rem;font-weight:900;color:var(--red-text);font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif}.ach-mistake-py{flex:0 0 auto;font-size:.8rem;color:#ffc800}.ach-mistake-gloss{min-width:0;font-size:.85rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ach-mistakes .link-btn.hidden{display:none}.card-rating{position:relative}.rating-upsell{margin:.2rem 0 0;font-size:.82rem;font-weight:800;color:var(--muted)}.rating-upsell.hidden{display:none}.rating-upsell .link-btn{color:#ffc800}.record-fx{display:none;position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}#overOverlay.is-record .record-fx{display:block}#overOverlay>.card-over{position:relative;z-index:1}.record-rays{position:absolute;left:50%;top:45%;width:180vmax;height:180vmax;margin:-90vmax 0 0 -90vmax;background:repeating-conic-gradient(rgba(255,200,0,.14) 0deg 9deg,transparent 9deg 24deg);-webkit-mask-image:radial-gradient(circle,#000 0,transparent 40%);mask-image:radial-gradient(circle,#000 0,transparent 40%);animation:record-spin 30s linear infinite}@keyframes record-spin{to{transform:rotate(1turn)}}.record-confetti i{position:absolute;top:-12px;width:7px;height:11px;border-radius:2px;opacity:0;animation:record-fall var(--d) cubic-bezier(.25,.6,.4,1) var(--delay) forwards}@keyframes record-fall{0%{opacity:1;transform:translate(0) rotate(0)}80%{opacity:1}to{opacity:0;transform:translate(var(--x),100vh) rotate(var(--r))}}#overOverlay.is-record .card-over{width:min(92vw,23rem);padding:clamp(1.1rem,4.5vmin,1.8rem) clamp(1.2rem,5vmin,2rem);border-color:#ffc800;box-shadow:0 0 0 2px #ffc8004d,0 0 2.2rem #ffc80047,0 .5rem 1.5rem #00000080;animation:record-glow 2.2s ease-in-out infinite}@keyframes record-glow{50%{box-shadow:0 0 0 2px #ffc8008c,0 0 3.2rem #ffc80073,0 .5rem 1.5rem #00000080}}.record-top{display:flex;flex-direction:column;align-items:center;margin-bottom:clamp(.35rem,2vmin,.8rem)}.record-top.hidden{display:none}.record-crown{font-size:clamp(1.7rem,7.5vmin,2.2rem);line-height:1;margin-bottom:.2rem;filter:drop-shadow(0 3px 8px rgba(255,200,0,.5));animation:record-crown .7s cubic-bezier(.2,.9,.3,1.4) both}@keyframes record-crown{0%{opacity:0;transform:translateY(-1.2rem) scale(.3) rotate(-25deg)}}.record-badge{display:inline-flex;align-items:center;padding:.35rem 1rem;font-size:clamp(.9rem,3.8vmin,1.05rem);font-weight:900;color:#ffc800;background:#ffc80024;border-radius:999px;animation:record-in .45s cubic-bezier(.2,.9,.3,1.25) both}@keyframes record-in{0%{opacity:0;transform:scale(.7)}}#overOverlay.is-record .score-big:not(.score-rival){color:#ffc800}#overOverlay.is-record #finalScore{font-size:clamp(3.4rem,17vmin,5rem)}#overOverlay.is-record #soloScoreRow .score-label,#overOverlay.is-record #bestScore,#overOverlay.is-record #overProgress{display:none}#overOverlay.is-record #soloScoreRow{margin:.2rem 0 clamp(.9rem,4vmin,1.4rem)}#overOverlay.is-record .record-top{margin-bottom:clamp(.6rem,3vmin,1rem)}.record-gain{align-self:flex-start;margin-top:.5rem;font-size:clamp(1.1rem,4.6vmin,1.4rem);font-weight:900;color:#ffc800;animation:record-in .35s 1s cubic-bezier(.2,.9,.3,1.25) both}.record-gain.hidden{display:none}.score-big.record-pop{display:inline-block;animation:record-pop .4s cubic-bezier(.2,.9,.3,1.4)}@keyframes record-pop{45%{transform:scale(1.2)}}@media(prefers-reduced-motion:reduce){.record-rays,.record-badge,.record-crown,.record-gain,#overOverlay.is-record .card-over,.score-big.record-pop{animation:none}}.launch{position:absolute;left:50%;bottom:max(.9rem,env(safe-area-inset-bottom));transform:translate(-50%);z-index:5;width:min(27rem,calc(100% - 1.6rem));animation:launch-in .42s cubic-bezier(.22,1,.3,1)}.launch.hidden{display:none}@keyframes launch-in{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}.launch-card{background:#0d1528eb;border:2px solid var(--border);border-bottom-width:5px;border-radius:1.4rem;padding:.5rem .9rem .9rem;backdrop-filter:blur(14px);box-shadow:0 18px 44px #00000073;display:grid;gap:.6rem}.launch-title{margin-top:.15rem;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center;order:-1}.launch-title.hidden{display:none}.launch-crew{display:flex;align-items:flex-end;justify-content:center;gap:.4rem;margin-top:-3.3rem}.launch-slot{position:relative;flex:0 0 auto;display:grid;justify-items:center;gap:.15rem;padding:0;background:none;border:0;font-family:inherit}.launch-char{height:5.2rem;width:auto;max-width:4.8rem;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(0,0,0,.45));transition:filter .22s ease,transform .22s cubic-bezier(.22,1,.3,1),opacity .22s ease}.launch-you .launch-char{animation:launch-bob 3.2s ease-in-out infinite}.launch-cap{font-size:.66rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);transition:color .2s ease}.launch-you .launch-cap{color:var(--green-text)}.launch-rival{cursor:pointer;touch-action:manipulation}.launch-rival .launch-char{filter:grayscale(1) brightness(.72) drop-shadow(0 6px 12px rgba(0,0,0,.4));opacity:.62;transform:scale(.88)}.launch-rival.on .launch-char{filter:drop-shadow(0 8px 14px rgba(0,0,0,.45));opacity:1;transform:scale(1);animation:launch-join .44s cubic-bezier(.22,1,.3,1)}.launch-rival.on .launch-cap{color:var(--blue)}.launch-rival:hover .launch-char{opacity:.85}.launch-rival:active .launch-char{transform:scale(.84)}.launch-rival.on:active .launch-char{transform:scale(.96)}.launch-plus{position:absolute;top:.1rem;right:-.15rem;width:1.35rem;height:1.35rem;display:grid;place-items:center;font-size:.95rem;font-weight:900;line-height:1;color:#07210a;background:var(--green);border-radius:50%;box-shadow:0 2px 0 var(--green-dark);transition:opacity .2s ease,transform .2s ease}.launch-rival.on .launch-plus{opacity:0;transform:scale(.6)}.launch-rival:focus-visible{outline:3px solid var(--blue);outline-offset:4px;border-radius:.8rem}@keyframes launch-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes launch-join{0%{transform:scale(.88) translateY(6px)}60%{transform:scale(1.06) translateY(-2px)}to{transform:scale(1)}}.launch-row{display:flex;align-items:stretch;gap:.5rem}.launch-lang{position:relative;flex:0 0 auto}.launch-lang-btn{height:100%;min-height:3.1rem;display:flex;align-items:center;gap:.3rem;padding:0 .7rem;background:var(--input-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:.9rem;cursor:pointer;touch-action:manipulation}.launch-lang-btn:hover{border-color:var(--blue)}.launch-lang-btn:active{transform:translateY(2px);border-bottom-width:2px}.launch-lang-flag{font-size:1.25rem;line-height:1}.launch-chevron{width:.42rem;height:.42rem;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg) translate(-1px,-1px)}.launch-lang-menu{position:absolute;bottom:calc(100% + .45rem);left:0;z-index:6;display:grid;gap:.15rem;min-width:11rem;max-height:14rem;overflow-y:auto;overscroll-behavior:contain;padding:.35rem;background:var(--card-bg);border:2px solid var(--border);border-radius:.9rem;box-shadow:0 16px 34px #00000080}.launch-lang-menu.hidden{display:none}.launch-lang-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .55rem;font-family:inherit;font-size:.86rem;font-weight:800;color:var(--text);text-align:left;background:none;border:2px solid transparent;border-radius:.6rem;cursor:pointer}.launch-lang-item:hover{background:var(--input-bg)}.launch-lang-item.on{background:var(--green-light);border-color:var(--green);color:var(--green-text)}.launch-play{flex:1 1 auto;min-height:3.1rem;font-family:inherit;font-size:1.05rem;font-weight:900;letter-spacing:.01em;color:#07210a;background:var(--green);border:0;border-radius:.9rem;box-shadow:0 4px 0 var(--green-dark);cursor:pointer;touch-action:manipulation;transition:filter .12s ease,transform .06s ease,background .2s ease,box-shadow .2s ease}.launch-play:hover:not(:disabled){filter:brightness(1.05)}.launch-play:active:not(:disabled){transform:translateY(3px);box-shadow:none}.launch-play:disabled{background:#2b3a55;color:var(--muted);box-shadow:0 4px #1d2942;cursor:default}.launch.is-match .launch-play{background:var(--blue);color:#04243a;box-shadow:0 4px #1183bb}@media(max-height:34rem){.launch-crew{margin-top:-2.4rem}.launch-char{height:4.1rem;max-width:3.8rem}}@media(prefers-reduced-motion:reduce){.launch,.launch-you .launch-char,.launch-rival.on .launch-char{animation:none}.launch-char{transition:none}}.topbar{position:absolute;top:calc(.7rem + env(safe-area-inset-top,0px));right:calc(.7rem + env(safe-area-inset-right,0px));left:calc(.7rem + env(safe-area-inset-left,0px));z-index:5;display:flex;gap:.45rem;pointer-events:none;animation:topbar-in .35s ease}.topbar>*{pointer-events:auto}.topbar.hidden{display:none}@keyframes topbar-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1}}.topbtn{width:2.75rem;height:2.75rem;display:grid;place-items:center;padding:0;color:var(--text);background:var(--panel-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:.85rem;cursor:pointer;touch-action:manipulation;backdrop-filter:blur(10px)}.topbtn:hover{border-color:var(--blue)}.topbtn:active{transform:translateY(2px);border-bottom-width:2px}.topbtn:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.topbtn svg{width:1.3rem;height:1.3rem}.topbtn-avatar{overflow:hidden;padding:.15rem}.topbtn-ava{width:100%;height:100%;object-fit:contain}.topbtn-ava.hidden{display:none}.topbtn-avatar{position:relative;overflow:visible}.topbtn-avatar .topbtn-ava{border-radius:.6rem}.topbtn-guest,.topbtn-label{display:none}.topbtn-badge{position:absolute;right:-.3rem;bottom:-.3rem;width:1rem;height:1rem;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2307210a' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center / 70% no-repeat;border:2px solid var(--panel-bg, #0f172a)}.topbtn-avatar.is-guest{width:auto;padding:0 .85rem 0 .6rem;gap:.35rem;display:inline-flex;align-items:center;color:#fff;background:var(--blue);border-color:#1899d6;border-bottom-color:#1480b3}.topbtn-avatar.is-guest:hover{filter:brightness(1.06);border-color:#1899d6}.topbtn-avatar.is-guest .topbtn-guest{display:block;width:1.25rem;height:1.25rem}.topbtn-avatar.is-guest .topbtn-label{display:inline;font-weight:900;font-size:.85rem;white-space:nowrap}.topbtn-avatar.is-guest .topbtn-badge{display:none}.card-sheet{display:block;width:min(26rem,100%);margin-top:auto;text-align:left;border-radius:1.4rem 1.4rem 0 0;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px))}.card-sheet{position:relative}.card-sheet h2{text-align:center}.sheet-x{position:absolute;top:.6rem;right:.6rem;z-index:1;width:2.25rem;height:2.25rem;display:grid;place-items:center;padding:0;color:var(--muted);background:#ffffff14;border:0;border-radius:50%;cursor:pointer;touch-action:manipulation}.sheet-x:hover{color:var(--text);background:#ffffff29}.sheet-x:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.card-sheet .sec-label{margin-top:.9rem}.sheet-lang-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-top:.9rem}.card-sheet .sheet-lang-row .sec-label{margin:0}.sheet-lang .launch-lang-btn{min-height:2.75rem;padding:0 .75rem;color:var(--text)}.sheet-lang-name{font-family:inherit;font-weight:800;font-size:.9rem;white-space:nowrap}.sheet-lang-menu{top:calc(100% + .4rem);bottom:auto;left:auto;right:0;z-index:8}.sheet-rows{display:grid;gap:.45rem}.sheet-rows .btn{width:100%;min-height:2.9rem}.sheet-rows .fs-btn{position:static;width:100%;height:auto;min-height:2.9rem;gap:.4rem}.sheet-rows .fs-btn svg{width:1.1rem;height:1.1rem}.sheet-rows .sheet-home{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.sheet-rows .sheet-home.hidden{display:none}.sheet-home svg{width:1.15rem;height:1.15rem;flex:0 0 auto}#settingsOverlay,#streakOverlay,html.is-launcher #startOverlay{z-index:7}#settingsOverlay,#streakOverlay{padding:0;align-items:flex-end}#settingsOverlay>*,#streakOverlay>*{margin:0 auto}@media(min-width:34rem){#settingsOverlay,#streakOverlay{padding:2rem 1rem;align-items:center}#settingsOverlay>*,#streakOverlay>*{margin:auto}.card-sheet{border-radius:1.4rem;margin-top:0}}html.is-launcher #startOverlay .card-start{width:min(26rem,100%)}@media(prefers-reduced-motion:reduce){.topbar{animation:none}}.sheet-rows .fs-btn .fs-label{font-weight:800}.sheet-rows .fs-btn svg{flex:0 0 auto}html.is-embed #topBar,html.is-embed #profileBar{display:none!important}.launch-stats{display:flex;justify-content:center;margin-top:-.15rem;font-size:.78rem;font-weight:800;color:var(--muted);text-align:center}.streak-btn{height:2.75rem;display:inline-flex;align-items:center;gap:.3rem;padding:0 .75rem 0 .6rem;font-family:inherit;font-size:1.05rem;font-weight:900;color:var(--muted);background:var(--panel-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:.85rem;cursor:pointer;touch-action:manipulation;backdrop-filter:blur(10px)}.streak-btn:hover{border-color:var(--blue)}.streak-btn:active{transform:translateY(2px);border-bottom-width:2px}.streak-btn:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.streak-flame{font-size:1.3rem;line-height:1;filter:grayscale(1);opacity:.55}.streak-btn.lit{color:#ff9600;border-color:#ff9600}.streak-btn.lit .streak-flame{filter:none;opacity:1}.exam-pill{height:2.75rem;display:inline-flex;align-items:center;gap:.3rem;padding:0 .7rem 0 .55rem;font-family:inherit;font-size:1.05rem;font-weight:900;color:var(--blue);background:var(--panel-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:.85rem;cursor:pointer;touch-action:manipulation;backdrop-filter:blur(10px)}.exam-pill svg{width:1.25rem;height:1.25rem}.exam-pill:hover{border-color:var(--blue)}.exam-pill:active{transform:translateY(2px);border-bottom-width:2px}.exam-pill:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.exam-pill.hidden{display:none}.topbar>.topbtn-avatar{margin-left:auto}.card-streak{text-align:center}.card-streak h2{margin:0}.streak-hero{display:flex;align-items:center;justify-content:center;gap:.35rem;margin-top:.2rem}.streak-hero-flame{font-size:3rem;line-height:1;filter:grayscale(1);opacity:.5}.streak-hero-num{font-size:3rem;font-weight:900;line-height:1;color:var(--muted)}.streak-hero.lit .streak-hero-flame{filter:none;opacity:1;animation:flame-pop .5s ease}.streak-hero.lit .streak-hero-num{color:#ff9600}@keyframes flame-pop{0%{transform:scale(.6)}70%{transform:scale(1.15)}to{transform:none}}.streak-status{margin:.35rem 0 0;font-weight:800;color:var(--muted)}.streak-status.done{color:var(--green-text)}.streak-week{list-style:none;margin:.8rem 0 0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:.3rem}.week-day{display:grid;justify-items:center;gap:.2rem}.week-dot{width:2rem;height:2rem;display:grid;place-items:center;font-size:1rem;border-radius:50%;background:var(--input-bg);border:2px solid var(--border)}.week-day.played .week-dot{background:#ff96002e;border-color:#ff9600}.week-day:last-child .week-dot{box-shadow:0 0 0 2px var(--blue)}.week-label{font-size:.7rem;font-weight:800;color:var(--muted);text-transform:uppercase}.streak-best{margin:.5rem 0 0;font-size:.85rem;font-weight:700;color:var(--muted)}.streak-best:empty{display:none}.goal-box{text-align:left;background:var(--input-bg);border:2px solid var(--border);border-radius:1rem;padding:.7rem .8rem}.goal-row{display:flex;justify-content:space-between;align-items:baseline;font-weight:900}.goal-bar{height:.65rem;margin-top:.4rem;background:var(--border);border-radius:99px;overflow:hidden}.goal-bar i{display:block;height:100%;width:0;background:#ff9600;border-radius:99px;transition:width .4s ease}.goal-hint{margin:.5rem 0 .45rem;font-size:.82rem;font-weight:700;color:var(--muted)}.goal-hint.reached{color:var(--green-text)}.goal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem}.goal-chip{min-height:2.5rem;font-family:inherit;font-size:.85rem;font-weight:800;color:var(--text);background:var(--card-bg);border:2px solid var(--border);border-bottom-width:4px;border-radius:.75rem;cursor:pointer;touch-action:manipulation}.goal-chip{display:grid;place-items:center;gap:.05rem;padding:.35rem .2rem;line-height:1.15}.goal-chip small{font-size:.7rem;font-weight:800;color:var(--muted)}.goal-chip.selected{color:#ff9600;border-color:#ff9600;background:#ff96001f}.goal-chip.selected small{color:inherit;opacity:.85}.goal-chip:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.remind-card{display:grid;gap:.4rem;margin-top:.9rem;padding:.75rem .8rem;text-align:left;border:2px solid var(--blue);border-radius:1rem;background:#1cb0f61a}.remind-card.hidden{display:none}.remind-row{display:flex;align-items:center;gap:.7rem;cursor:pointer}.remind-ico{font-size:1.8rem;line-height:1}.remind-body{flex:1;min-width:0;display:grid;gap:.2rem}.remind-body b{font-size:.98rem;font-weight:900}.remind-body span{font-size:.84rem;font-weight:700;line-height:1.4;color:var(--text)}.remind-card .signup-msg:empty{display:none}@media(prefers-reduced-motion:reduce){.streak-hero.lit .streak-hero-flame{animation:none}.goal-bar i{transition:none}}.notif-box{display:grid;gap:.5rem;padding:.7rem;background:var(--input-bg);border:2px solid var(--border);border-radius:1rem}.notif-row{display:flex;align-items:center;gap:.65rem;cursor:pointer}.notif-ico{font-size:1.5rem;line-height:1}.notif-text{flex:1;display:grid;gap:.1rem;text-align:left}.notif-text b{font-weight:900}.notif-text small{font-size:.78rem;font-weight:700;color:var(--muted);line-height:1.35}.notif-note{margin:0;font-size:.78rem;font-weight:800;color:var(--muted)}.notif-note:empty{display:none}.notif-note[data-tone=error]{color:var(--red-text)}.switch{appearance:none;-webkit-appearance:none;flex:0 0 auto;position:relative;width:3rem;height:1.75rem;margin:0;border-radius:99px;background:var(--border);cursor:pointer;transition:background .18s ease}.switch:after{content:"";position:absolute;top:.2rem;left:.2rem;width:1.35rem;height:1.35rem;border-radius:50%;background:#fff;transition:transform .18s ease}.switch:checked{background:var(--green)}.switch:checked:after{transform:translate(1.25rem)}.switch:disabled{opacity:.6;cursor:default}.switch:focus-visible{outline:3px solid var(--blue);outline-offset:2px}@media(prefers-reduced-motion:reduce){.switch,.switch:after{transition:none}}.goal-set{width:100%;margin-top:.55rem;min-height:2.6rem}.goal-set.done:disabled{opacity:1;color:var(--green-text);background:transparent;border:2px solid var(--green);box-shadow:none}.goal-set:disabled:not(.done){opacity:.5}.notif-link{padding:0;font-size:inherit;vertical-align:baseline}.goal-upsell{margin:.5rem 0 0;font-size:.8rem;font-weight:800;color:var(--text)}.goal-upsell.hidden{display:none}.goal-upsell .link-btn{color:#ffc800}.exam-box{display:grid;gap:.35rem;margin-top:.7rem;padding:.65rem .8rem;text-align:left;background:var(--input-bg);border:2px solid var(--border);border-radius:1rem}.exam-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;cursor:pointer}.exam-title b{font-weight:900}.exam-date{font:800 .85rem Nunito,sans-serif;color:var(--text);background:var(--card-bg);border:2px solid var(--border);border-radius:.6rem;padding:.3rem .5rem;color-scheme:dark}.exam-line{margin:0;font-size:.82rem;font-weight:800;color:var(--muted)}.exam-sprint{width:100%;min-height:2.4rem;font-size:.85rem;color:#ffc800;border-color:#ffc80080}.exam-sprint.hidden{display:none}#paywall{--gold: #ffc800;--gold-dark: #e0a800;z-index:9;background:#030814c7;backdrop-filter:blur(3px);animation:pw-fade .25s ease both}#paywall[data-step=plans]{padding:calc(.75rem + var(--safe-top)) clamp(.5rem,3vw,1.5rem) calc(1rem + var(--safe-bottom));background:radial-gradient(60rem 30rem at 50% -10%,rgba(88,204,2,.18),transparent 60%),radial-gradient(40rem 30rem at 100% 110%,rgba(28,176,246,.16),transparent 60%),#040a18f7}@keyframes pw-fade{0%{opacity:0}}@keyframes pw-pop{0%{opacity:0;transform:scale(.82) translateY(14px)}60%{opacity:1;transform:scale(1.03)}to{transform:none}}@keyframes pw-rise{0%{opacity:0;transform:translateY(28px) scale(.96)}to{opacity:1;transform:none}}@keyframes pw-bob{0%,to{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-7px) rotate(4deg)}}@keyframes pw-pulse{0%{box-shadow:0 0 #58cc028c}70%{box-shadow:0 0 0 16px #58cc0200}to{box-shadow:0 0 #58cc0200}}@keyframes pw-shine{0%,55%{left:-60%}to{left:130%}}@keyframes pw-spin{to{transform:rotate(1turn)}}@keyframes pw-drift{0%{transform:translateY(110vh) rotate(-8deg)}to{transform:translateY(-20vh) rotate(8deg)}}@keyframes pw-fall{0%{opacity:1;transform:translateY(-2rem) rotate(0)}to{opacity:0;transform:translate(var(--x),26rem) rotate(var(--r))}}@keyframes pw-draw{to{stroke-dashoffset:0}}@keyframes pw-badge{0%,to{transform:translate(-50%) scale(1)}50%{transform:translate(-50%) scale(1.06)}}.pw-shine{position:relative;overflow:hidden}.pw-shine:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent);transform:skew(-20deg);animation:pw-shine 2.8s ease-in-out infinite;pointer-events:none}.pw-pulse{animation:pw-pulse 1.8s ease-out infinite}.pw-prompt,.pw-thanks{position:relative;flex-direction:column;text-align:center;width:min(94vw,24rem);max-width:none;border-color:var(--green);box-shadow:0 0 0 1px #58cc0240,0 1.2rem 3rem #0009;animation:pw-pop .45s cubic-bezier(.2,.9,.3,1.2) both}.pw-prompt .rules,.pw-thanks .rules{display:block;margin:0;color:var(--muted);line-height:1.45}.pw-orb{width:4.4rem;height:4.4rem;border-radius:50%;display:grid;place-items:center;font-family:Noto Sans SC,PingFang SC,sans-serif;font-size:2.2rem;font-weight:900;color:#0b1d0b;background:radial-gradient(circle at 30% 30%,#b6ff7a,var(--green) 55%,var(--green-dark));box-shadow:0 0 1.8rem #58cc028c;animation:pw-bob 2.4s ease-in-out infinite}.pw-btns{display:flex;flex-direction:column;gap:.55rem;width:100%}.pw-cta{width:100%;font-size:1.05rem}.pw-later{background:transparent;border-color:transparent;color:var(--muted);min-height:2.4rem}.pw-later:hover{background:#ffffff0d;color:var(--text)}.pw-plans{position:relative;width:min(100%,62rem);display:flex;flex-direction:column;align-items:center;gap:clamp(.8rem,2.5vmin,1.4rem)}.pw-sky{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}.pw-sky span{position:absolute;top:0;font-family:Noto Sans SC,PingFang SC,sans-serif;font-weight:900;font-size:var(--s);color:#8ee55b1a;animation:pw-drift var(--d) linear infinite}.pw-plans>:not(.pw-sky){position:relative;z-index:1}.pw-plans>.pw-x,.pw-thanks>.pw-x{position:absolute;top:0;right:0;width:2.6rem;height:2.6rem;border-radius:50%;border:2px solid var(--border);background:var(--card-bg);color:var(--muted);font-family:inherit;font-size:1.5rem;font-weight:900;line-height:1;cursor:pointer}.pw-x:hover{color:var(--text)}.pw-thanks>.pw-x{top:.6rem;right:.6rem;width:2.2rem;height:2.2rem;font-size:1.25rem;z-index:2}.pw-head{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.4rem;max-width:100%;animation:pw-rise .45s ease both}.pw-head h2{padding:0 2.8rem;font-size:clamp(1.5rem,5vmin,2.3rem);font-weight:900;line-height:1.1;background:linear-gradient(90deg,#b6ff7a,var(--green-text),#7fdcff);-webkit-background-clip:text;background-clip:text;color:transparent}.pw-sub{color:var(--muted);font-weight:700}.pw-toggle{position:relative;display:inline-flex;margin-top:.4rem;padding:.25rem;border-radius:999px;background:var(--input-bg);border:2px solid var(--border)}.pw-thumb{position:absolute;top:.25rem;bottom:.25rem;left:0;width:var(--thumb-w, 50%);transform:translate(var(--thumb-x, .25rem));border-radius:999px;background:var(--card-bg);border:2px solid var(--green);transition:transform .28s cubic-bezier(.3,1.3,.5,1),width .28s ease}.pw-period{position:relative;z-index:1;border:0;background:none;color:var(--muted);font-family:inherit;font-size:.9rem;font-weight:800;line-height:1;padding:.6rem 1.1rem;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.pw-period[aria-pressed=true]{color:var(--text)}.pw-save{background:var(--gold);color:#2b1d00;border-radius:999px;padding:.15rem .4rem;font-size:.72rem;font-weight:900}.pw-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(.6rem,2vw,1.1rem);width:100%}.pw-tier{position:relative;border-radius:1.25rem;padding:2px;background:var(--border);cursor:pointer;opacity:0;animation:pw-rise .55s cubic-bezier(.2,.9,.3,1.15) both;animation-delay:calc(var(--i) * .11s + .14s);transition:translate .2s ease,box-shadow .2s ease}.pw-tier:hover{translate:0 -4px}.pw-tier.is-selected:not(.is-featured){background:var(--blue)}.pw-tier-body{position:relative;z-index:1;height:100%;border-radius:calc(1.25rem - 2px);background:var(--card-bg);padding:1.3rem 1.1rem 1.1rem;display:flex;flex-direction:column;gap:.55rem}.pw-tier.is-featured{padding:3px;overflow:hidden;scale:1.04;box-shadow:0 0 2.4rem #58cc0259}.pw-tier.is-featured:before{content:"";position:absolute;inset:-60%;background:conic-gradient(var(--green),#1cb0f6,var(--gold),#ce82ff,var(--green));animation:pw-spin 4.5s linear infinite}.pw-tier.is-featured .pw-tier-body{border-radius:calc(1.25rem - 3px);background:linear-gradient(180deg,#1d3a2a,var(--card-bg) 45%);padding-top:2.4rem}.pw-badge{position:absolute;top:.65rem;left:50%;transform:translate(-50%);white-space:nowrap;background:linear-gradient(90deg,var(--gold),#ffe36e);color:#2b1d00;font-size:.74rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;padding:.28rem .75rem;border-radius:999px;box-shadow:0 .25rem .9rem #ffc80073;animation:pw-badge 1.8s ease-in-out infinite}.pw-tier-name{font-size:1.15rem;font-weight:900}.pw-tier[data-tier=premium] .pw-tier-name{color:var(--gold)}.pw-price{display:flex;align-items:baseline;gap:.35rem}.pw-amount{font-size:clamp(2rem,6vmin,2.6rem);font-weight:900;line-height:1;font-variant-numeric:tabular-nums}.pw-per{color:var(--muted);font-weight:800}.pw-yearhint{min-height:1.1em;margin:-.3rem 0 0;font-size:.8rem;font-weight:700;color:var(--green-text);opacity:0;transition:opacity .25s}.pw-yearhint.is-on{opacity:1}.pw-soon{align-self:flex-start;margin:0;padding:.3rem .7rem;border-radius:999px;background:#1cb0f629;color:#8fd8ff;font-weight:900;font-size:.85rem;letter-spacing:.02em}.pw-feats{list-style:none;margin:.2rem 0 .4rem;padding:0;display:flex;flex-direction:column;gap:.45rem;flex:1;text-align:left}.pw-feats li{position:relative;padding-left:1.6rem;font-weight:700;font-size:.92rem;line-height:1.3;animation:pw-rise .4s ease both;animation-delay:calc(var(--i) * .11s + var(--j) * 70ms + .45s)}.pw-feats li:before{content:"✓";position:absolute;left:0;top:0;width:1.15rem;height:1.15rem;border-radius:50%;display:grid;place-items:center;font-size:.72rem;font-weight:900;color:#0b1d0b;background:var(--green)}.pw-feats li.pw-inherit{color:var(--muted)}.pw-feats li.pw-inherit:before{content:"+";background:var(--border);color:var(--text)}.pw-pay{width:100%}.pw-pay:disabled{opacity:.7;cursor:progress}.pw-error{max-width:34rem;margin:0;padding:.5rem .9rem;border-radius:.8rem;text-align:center;font-size:.88rem;font-weight:800;color:#ffd9d9;background:#ff4b4b29;border:1px solid rgba(255,75,75,.45)}.pw-note{max-width:34rem;text-align:center;font-size:.82rem;font-weight:700;color:var(--muted)}.pw-thanks{overflow:visible}.pw-confetti{position:absolute;inset:0;overflow:visible;pointer-events:none}.pw-confetti i{position:absolute;top:0;width:.5rem;height:.8rem;border-radius:2px;opacity:0;animation:pw-fall 2s cubic-bezier(.2,.6,.4,1) forwards}.pw-check svg{width:4.6rem;height:4.6rem}.pw-check circle{fill:#58cc0226;stroke:var(--green);stroke-width:3;stroke-dasharray:150;stroke-dashoffset:150;animation:pw-draw .6s ease .1s forwards}.pw-check path{fill:none;stroke:var(--green-text);stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:pw-draw .4s ease .6s forwards}.pw-plan-chip{margin:-.3rem 0 0;padding:.25rem .8rem;border-radius:999px;background:#ffc80024;color:var(--gold);font-weight:900}@media(max-width:760px){.pw-tiers{grid-template-columns:minmax(0,26rem);justify-content:center}.pw-tier.is-featured{order:-1;scale:none}}@media(max-width:360px){.pw-head h2{font-size:1.4rem}.pw-period{padding:.55rem .7rem;font-size:.82rem}.pw-tier-body{padding-left:.9rem;padding-right:.9rem}}@media(max-height:520px)and (min-width:761px){#paywall[data-step=plans]{padding-top:calc(.4rem + var(--safe-top));padding-bottom:calc(.4rem + var(--safe-bottom))}.pw-plans{gap:.6rem}.pw-head{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:.3rem 1rem}.pw-head h2{font-size:1.35rem}.pw-sub,.pw-note{display:none}.pw-toggle{margin-top:0}.pw-period{padding:.45rem .9rem}.pw-plans>.pw-x{width:2.2rem;height:2.2rem;font-size:1.25rem}.pw-tier-body{padding:.75rem .8rem .8rem;gap:.35rem}.pw-tier.is-featured .pw-tier-body{padding-top:1.9rem}.pw-badge{top:.45rem;font-size:.66rem}.pw-amount{font-size:1.7rem}.pw-yearhint{font-size:.72rem;margin-top:-.2rem}.pw-feats{gap:.25rem;margin:0}.pw-feats li{font-size:.8rem;padding-left:1.35rem}.pw-feats li:before{width:1rem;height:1rem;font-size:.62rem}.pw-pay{min-height:2.3rem;padding-top:.3rem;padding-bottom:.3rem}.pw-prompt,.pw-thanks{gap:.5rem;padding-top:.8rem;padding-bottom:.8rem}.pw-orb{width:3rem;height:3rem;font-size:1.5rem}.pw-prompt .rules,.pw-thanks .rules{font-size:.85rem;line-height:1.35}.pw-prompt,.pw-thanks{width:min(94vw,28rem)}.pw-check svg{width:3.2rem;height:3.2rem}}@media(prefers-reduced-motion:reduce){#paywall *,#paywall *:before,#paywall *:after,#paywall{animation:none!important;transition:none!important}.pw-tier,.pw-feats li{opacity:1}.pw-check circle,.pw-check path{stroke-dashoffset:0}.pw-sky{display:none}}.pw-menu-btn{border-color:#ffc800;color:#ffc800}
