:root{--page0: #f3f1fb;--page1: #edf4fb;--page2: #ebf6f1;--ink: #243339;--inkSoft: #6e7e84;--board0: #e9f1ea;--board1: #e3eaf3;--tile: #e8c079;--tileDark: #c8a568;--tileTxt: #5e4119;--green: #7cd957;--greenD: #54b533;--blue: #66c7ff;--blueD: #3aa1e0;--soft: 0 10px 26px rgba(58, 74, 90, .16);--font: "Arial Rounded MT Bold", "SF Pro Rounded", system-ui, -apple-system, "Segoe UI", sans-serif}*{margin:0;padding:0;box-sizing:border-box;font-family:var(--font);-webkit-font-smoothing:antialiased}html,body{min-height:100%}body{background:linear-gradient(160deg,var(--page0),var(--page1) 55%,var(--page2))}.stage{max-width:480px;margin:0 auto;padding:10px 8px;display:flex;flex-direction:column;gap:10px;min-height:100dvh}.brand{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;padding:4px 58px 0 0}.langPick{position:absolute;right:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:4px;padding:6px 9px;border-radius:999px;background:#fffc;box-shadow:0 2px 6px #3a4a5a24;cursor:pointer}.langPick .globe{font-size:13px;line-height:1}.langPick .langCode{font-size:12px;font-weight:900;letter-spacing:.6px;color:var(--inkSoft)}.langPick select{position:absolute;inset:-7px -4px;width:auto;height:auto;opacity:0;border:0;cursor:pointer;font-family:var(--font);font-size:16px}.langPick:focus-within{outline:2px solid var(--blueD);outline-offset:2px}.langPick.locked{opacity:.45;cursor:not-allowed}.langPick.locked select{cursor:not-allowed}.bm{width:26px;height:26px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:15px;font-weight:900;box-shadow:inset 0 -3px #00000024}.brandTxt{margin-left:8px;font-size:17px;font-weight:900;color:var(--ink)}.panel{background:#fff;border-radius:18px;padding:10px 16px 8px;box-shadow:var(--soft)}.statsRow{display:flex;align-items:center;justify-content:space-between}.statCol{display:flex;flex-direction:column;min-width:64px}.statCol.mid{align-items:center}.statCol.right{align-items:flex-end}.label{font-size:11px;font-weight:800;letter-spacing:1.4px;color:var(--inkSoft);text-transform:uppercase}.value{font-size:30px;font-weight:900;color:var(--ink);line-height:1}.timer{font-size:26px;font-weight:900;color:var(--ink);line-height:1}.timer.crit{color:#ff5d6c}.target{margin-top:6px;text-align:center;font-size:12px;font-weight:800;color:var(--inkSoft)}.recent{margin-top:6px;font-size:12px;font-weight:700;color:var(--inkSoft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wordChip{align-self:center;height:42px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:4px 22px;border-radius:999px;font-size:20px;font-weight:900;letter-spacing:3px;color:#fff;background:linear-gradient(180deg,var(--blue),var(--blueD));box-shadow:0 6px 14px #3aa1e066;opacity:0;transform:scale(.9);transition:opacity .15s,transform .15s}.wordChip.show{opacity:1;transform:none}.wordChip.valid{background:linear-gradient(180deg,var(--green),var(--greenD));box-shadow:0 6px 14px #54b53373}.wordChip.bad{background:linear-gradient(180deg,#ff8e9a,#f2545f)}.boardWrap{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;container-type:size;border-radius:22px;background:linear-gradient(150deg,var(--board0),var(--board1));box-shadow:var(--soft);padding:8px;touch-action:none}.board{position:relative;width:100%;max-width:100%;max-height:100%;margin:auto;padding:0;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(6,1fr);gap:7px;aspect-ratio:5/6;touch-action:none}.tile{border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:clamp(26px,11cqw,56px);font-weight:900;color:var(--tileTxt);background:linear-gradient(180deg,var(--tile),var(--tileDark));box-shadow:inset 0 -5px #0000001f,0 3px 6px #7c674a40;user-select:none;-webkit-user-select:none;touch-action:none}.tile.touch{color:#fff;background:linear-gradient(180deg,var(--blue),var(--blueD));transform:scale(1.05)}.tile.valid{color:#fff;background:linear-gradient(180deg,var(--green),var(--greenD));transform:scale(1.06)}.tile.out{transform:scale(.05);opacity:0;transition:transform .24s cubic-bezier(.5,0,.75,0),opacity .24s}.tile.pop{animation:pop .4s cubic-bezier(.2,1.3,.5,1)}@keyframes pop{0%{transform:scale(.4)}60%{transform:scale(1.08)}to{transform:scale(1)}}.board.shake,.wordChip.shake{animation:shake .35s ease}.kbdHint{margin:10px 0 0;text-align:center;font-size:12.5px;font-weight:700;color:var(--inkSoft)}@media(max-width:359px){.kbdHint{display:none}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.trail{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:2}.trail line{stroke:#7cd95799;stroke-width:10;stroke-linecap:round}.card{background:#fff;border-radius:22px;padding:22px 20px;box-shadow:var(--soft);text-align:center;display:flex;flex-direction:column;gap:12px}.cardTitle{font-size:25px;font-weight:900;color:var(--ink);line-height:1.2}.cardSub{font-size:14px;font-weight:700;color:var(--inkSoft);line-height:1.45}.cta{border:0;cursor:pointer;background:linear-gradient(180deg,var(--green),var(--greenD));color:#fff;font-size:19px;font-weight:900;padding:14px 26px;border-radius:999px;box-shadow:inset 0 -4px #0000001f,0 8px 18px #54b53366;font-family:var(--font)}.cta:disabled{opacity:.55}.cta.secondary{background:linear-gradient(180deg,var(--blue),var(--blueD));box-shadow:inset 0 -4px #0000001f,0 8px 18px #3aa1e066}.hint{font-size:12px;font-weight:700;color:var(--inkSoft);min-height:15px}.card.intro{flex:1 1 auto;min-height:0;gap:9px;padding:18px 16px 15px;position:relative;overflow:hidden;color:#fff6ea;background:radial-gradient(115% 80% at 50% -10%,#ff7c86,#ff4e63 38%,#e5325f 70%,#b7256f);box-shadow:0 18px 42px #96205857,inset 0 -5px #0000001a}.card.intro:before{content:"";position:absolute;left:50%;top:48%;width:132%;aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;background:radial-gradient(closest-side,#fff3,#fff0)}.card.intro>*{position:relative}.card.intro .cardTitle{font-size:clamp(21px,5.7vw,28px);line-height:1.14;color:#fff8ee;text-shadow:0 2px 0 rgba(140,25,70,.26)}.card.intro .cardTitle em{font-style:normal;color:#ffcf3d}.card.intro .cardSub{font-size:13.5px;color:#fff0e4de}.card.intro .hint{color:#fff0e4cc}.introChips{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}.introChips span{font-size:11px;font-weight:800;color:#fff3e4;background:#ffffff2b;box-shadow:inset 0 0 0 1px #fff3;padding:5px 9px;border-radius:999px}.heroVid{flex:1 1 0;min-height:84px;position:relative}.heroVid video{position:absolute;inset:0;margin:auto;height:100%;width:auto;max-width:100%;border-radius:16px;background:#eef3f7;box-shadow:0 14px 30px #78144659}.card.intro .cta{background:linear-gradient(180deg,#ffe27a,#ffcf3d);color:#6b4a12;font-size:21px;padding:16px 26px;box-shadow:inset 0 -4px #9664004d,0 12px 26px #5a0f3766}.card.intro .cta.secondary{background:none;color:#fff3e4;font-size:15px;padding:10px 18px;box-shadow:inset 0 0 0 2px #ffffff4d}.introFree{font-size:11px;font-weight:800;color:#fff0e4b3}.record{align-self:center;display:flex;align-items:center;gap:10px;padding:8px 17px 8px 13px;border-radius:999px;background:#ffffff29;box-shadow:inset 0 0 0 1.5px #ffcf3d8c,0 8px 18px #5a0f3742;animation:recordGlow 3.4s ease-in-out infinite}.rIcon{font-size:21px;line-height:1}.rTxt{display:flex;flex-direction:column;align-items:flex-start;line-height:1.12}.rLabel{font-size:9.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:#fff4eab8}.rVal{font-size:15px;font-weight:900;color:#fff6ea}.rVal b{font-size:20px;color:#ffcf3d}@keyframes recordGlow{0%,to{box-shadow:inset 0 0 0 1.5px #ffcf3d80,0 8px 18px #5a0f3742}50%{box-shadow:inset 0 0 0 1.5px #ffcf3df2,0 8px 22px #ffcf3d47}}@media(prefers-reduced-motion:reduce){.record{animation:none}}.card.intro .appCard{order:2}.card.intro .introFree{order:3}.card.intro .cardBody:empty,.card.intro .hint:empty{display:none}@media(max-height:640px){.card.intro .introChips,.card.intro .cardSub{display:none}.card.intro .cardTitle{font-size:clamp(19px,5.2vw,24px)}}body.introView .stage{height:100dvh}@media(min-width:720px){body.introView .stage{max-width:560px}}.bigScore{font-size:52px;font-weight:900;color:var(--ink);line-height:1}.rankLine{font-size:17px;font-weight:900;color:var(--greenD)}.boardList{text-align:left;border:1px solid #e8eef0;border-radius:14px;padding:10px 14px;display:flex;flex-direction:column;gap:4px;max-height:260px;overflow-y:auto}.boardRow{display:flex;justify-content:space-between;font-size:14px;font-weight:700;color:var(--inkSoft);padding:3px 6px;border-radius:8px}.boardRow.me{background:#e9fff0;color:var(--ink);font-weight:900}.appLink{align-self:center;border:0;background:none;cursor:pointer;font-family:var(--font);font-size:13.5px;font-weight:800;color:var(--blueD);padding:2px 6px;text-decoration:underline;text-underline-offset:3px}.appCard{border-radius:18px;padding:14px 14px 13px;display:flex;flex-direction:column;gap:10px;text-align:center;background:linear-gradient(165deg,#fff8ea,#fdefd6);box-shadow:inset 0 -3px #7c674a1a}.appTitle{font-size:14px;font-weight:900;color:#6b5220;line-height:1.35}.appSub{font-size:13.5px;font-weight:700;color:var(--inkSoft);line-height:1.45}.appFree{font-size:11.5px;font-weight:800;color:#7d6330}.appBullets{list-style:none;align-self:center;display:flex;flex-direction:column;gap:5px;text-align:left}.appBullets li{font-size:13.5px;font-weight:800;color:#6b5220}.appCard.intro{background:none;box-shadow:none;padding:0;gap:0}.appCard.intro .appSub,.appCard.intro .appBullets,.appCard.intro .appFree{display:none}.appCard.intro .appTitle:empty{display:none}.appCard.intro .appBtn{padding:16px 20px;background:linear-gradient(180deg,#fff,#ffeeda);color:#5e4119;box-shadow:inset 0 -4px #7c674a3d,0 12px 26px #5a0f3757}.appCard.intro .appBtnLogo{width:26px;height:26px}.appCard.intro .appBtnStack strong{font-size:20px}.appCard.intro .appBtnStack small{font-size:12.5px;opacity:.82}.appCard.compact .appSub,.appCard.compact .appBullets,.appCard.compact .appFree{display:none}.appCard.compact .appBtn{gap:9px;padding:12px 16px;background:none;color:#6b5220;border:2px solid rgba(107,82,32,.26);box-shadow:none}.appCard.compact .appBtnLogo{width:20px;height:20px}.appCard.compact .appBtnStack{align-items:center}.appCard.compact .appBtnStack strong{font-size:16px}.appCard.compact .appBtnStack small{font-size:11.5px;opacity:.75}.appCard.done{padding:22px 16px 18px;gap:13px;background:linear-gradient(165deg,#fff6e2,#fbe7c4);box-shadow:inset 0 -4px #7c674a21,0 8px 20px #7c674a29}.appCard.done .appTitle{font-size:21px;line-height:1.2}.appCta{display:flex;flex-direction:column;gap:8px}.appBtn{width:100%;border:0;cursor:pointer;font-family:var(--font);text-decoration:none;display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 20px;border-radius:999px;background:linear-gradient(180deg,var(--green),var(--greenD));color:#fff;box-shadow:inset 0 -4px #00000024,0 10px 22px #54b5336b}.appBtnLogo{width:27px;height:27px;flex:0 0 auto}.appBtnLogo.emoji{font-size:25px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.appBtnStack{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15}.appBtnStack strong{font-size:21px;font-weight:900}.appBtnStack small{font-size:12.5px;font-weight:800;opacity:.92}.appCta>*{display:none}body[data-os=ios] .appCta>.onIos,body[data-os=android] .appCta>.onAndroid,body[data-os=desktop] .appCta>.onDesktop,body:not([data-os]) .appCta>.onIos,body:not([data-os]) .appCta>.onAndroid{display:flex}.appQr{gap:14px;align-items:center;text-align:left}.appQrImg{flex:0 0 auto;width:116px;line-height:0;border-radius:10px;overflow:hidden;box-shadow:0 2px 8px #3a4a5a2e}.appQrImg svg{width:100%;height:auto;display:block}.appQrTxt{display:flex;flex-direction:column;gap:3px}.appQrTxt strong{font-size:14.5px;font-weight:900;color:var(--ink)}.appQrTxt span{font-size:12.5px;font-weight:700;color:var(--inkSoft)}.appQrLinks{display:flex;gap:12px;margin-top:4px}.appQrLinks a{font-size:12.5px;font-weight:900;color:var(--blueD)}.modalWrap{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;padding:12px;background:#1e2a308c;backdrop-filter:blur(3px)}.modalCard:focus{outline:none}.modalCard{position:relative;width:100%;max-width:420px;max-height:92dvh;overflow-y:auto;background:#fff;border-radius:24px;padding:24px 20px 14px;box-shadow:0 -10px 40px #1e2a304d;text-align:center;display:flex;flex-direction:column;gap:12px}.modalClose{position:absolute;top:10px;right:12px;border:0;background:none;cursor:pointer;font-family:var(--font);font-size:17px;font-weight:900;color:var(--inkSoft);line-height:1;padding:4px 6px}.modalMark{display:flex;justify-content:center;gap:4px}.modalTitle{font-size:22px;font-weight:900;color:var(--ink);line-height:1.2}.modalSub{font-size:14px;font-weight:700;color:var(--inkSoft);line-height:1.45}.modalSkip{border:0;background:none;cursor:pointer;font-family:var(--font);font-size:13px;font-weight:800;color:var(--inkSoft);padding:6px}body.modalOpen{overflow:hidden}@media(min-width:520px){.modalWrap{align-items:center}}@media(prefers-reduced-motion:no-preference){.modalWrap{animation:modalFade .18s ease both}.modalCard{animation:modalRise .26s cubic-bezier(.2,1,.4,1) both}@keyframes modalFade{0%{opacity:0}to{opacity:1}}@keyframes modalRise{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}}.shareTease{font-size:15px;font-weight:900;color:var(--ink)}.shareRow{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.cardBody{display:flex;flex-direction:column;gap:16px}.cardBody:empty{display:none}.endTitle{font-size:13px;font-weight:900;letter-spacing:.8px;text-transform:uppercase;color:var(--inkSoft);text-align:center;margin-bottom:-4px}.endStats{display:flex;gap:8px}.endTile{flex:1;min-width:0;background:#f6f1e6;border-radius:16px;padding:12px 6px 11px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;box-shadow:inset 0 -3px #0000000d}.endTile .tLabel{font-size:10px;letter-spacing:.6px;text-transform:uppercase;font-weight:800;color:var(--inkSoft);text-align:center}.endTile .tVal{font-size:22px;font-weight:900;color:var(--ink);line-height:1}.endTile .tVal.word{font-size:15px;letter-spacing:.5px;word-break:break-word;text-align:center;line-height:1.1}.endTile.hero{background:linear-gradient(180deg,#eafbe1,#dbf5cc);box-shadow:inset 0 -3px #54b5332e}.endTile.hero .tVal{font-size:34px;color:var(--greenD)}.endTile.blue{background:linear-gradient(180deg,#e6f6ff,#cfeaff);box-shadow:inset 0 -3px #3aa1e02e}.endTile.blue .tVal{color:var(--blueD)}.endTile.orange{background:linear-gradient(180deg,#fff2e2,#ffe1c2);box-shadow:inset 0 -3px #ff8e2b33}.endTile.orange .tVal{color:#e07d15}.gauss{display:flex;flex-direction:column;gap:12px}.gaussBlock{display:flex;flex-direction:column;gap:2px;padding:9px 5px 5px;background:#fbfdfa;border:1px solid #eef3ee;border-radius:18px}.gaussBlock .gaussTitle,.gaussBlock .gaussGrat,.gaussBlock .gaussRank,.gaussBlock .gaussFallback{padding-left:7px;padding-right:7px}.gaussTitle{font-size:11px;font-weight:900;letter-spacing:.6px;text-transform:uppercase;line-height:1.2}.gaussGrat{font-size:15px;font-weight:900;color:var(--ink);line-height:1.25}.gaussRank{font-size:12.5px;font-weight:800;color:var(--inkSoft)}.gaussSvg{width:100%;height:auto;display:block;margin-top:4px;overflow:visible}.gaussFallback{font-size:14px;font-weight:800;color:var(--inkSoft);text-align:center;padding:6px 4px;line-height:1.4}.gaussBlock[data-expandable]{cursor:pointer}.gaussMore{margin-top:6px;font-size:11px;font-weight:800;color:#9aa8ad;text-align:center;user-select:none}.gaussDetail{margin-top:4px;border-top:1px solid #eef3ee;padding:8px 7px 4px;display:flex;flex-direction:column;gap:4px}.gaussDetail .row{font-size:12.5px;font-weight:700;color:var(--inkSoft);display:flex;justify-content:space-between;gap:8px}.gaussDetail .row.me{color:var(--ink);font-weight:900}.pseudoShare{display:flex;flex-direction:column;gap:10px}@media(prefers-reduced-motion:no-preference){.gaussBlock{animation:gaussIn .5s ease both}.gaussBlock:nth-child(2){animation-delay:.08s}.gaussBlock:nth-child(3){animation-delay:.16s}@keyframes gaussIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}}.shareBtn{text-decoration:none;display:inline-flex;align-items:center;gap:7px;border:0;cursor:pointer;color:#fff;font-size:15px;font-weight:900;padding:12px 20px;border-radius:999px;font-family:var(--font);box-shadow:inset 0 -4px #0000001f,0 6px 14px #0000002e}.shareBtn.wa{background:#25d366}.shareBtn.fb{background:#1877f2}@keyframes bump{0%{transform:scale(1)}35%{transform:scale(1.28)}to{transform:scale(1)}}.value.bump,.timer.bump{animation:bump .42s cubic-bezier(.2,1.3,.5,1)}.floatFx{position:fixed;transform:translate(-50%);pointer-events:none;z-index:61;font-weight:900;font-size:32px;color:var(--greenD);text-shadow:0 2px 8px rgba(84,181,51,.35);animation:floatUp .9s ease-out forwards;white-space:nowrap}.floatFx.time{font-size:20px}.floatFx.praise{font-size:22px;color:var(--blueD);text-shadow:0 2px 8px rgba(58,161,224,.3)}.floatFx.warn{font-size:15px;letter-spacing:0;color:#e0404c;text-shadow:0 1px 4px rgba(255,255,255,.9)}@keyframes floatUp{0%{opacity:0;transform:translate(-50%,8px) scale(.6)}20%{opacity:1;transform:translate(-50%,-4px) scale(1.06)}to{opacity:0;transform:translate(-50%,-48px) scale(1)}}.particle{position:fixed;width:12px;height:12px;border-radius:50%;pointer-events:none;z-index:60;box-shadow:0 2px 4px #0000001f;transition:transform .7s cubic-bezier(.18,.7,.4,1),opacity .7s ease-out}@media(prefers-reduced-motion:reduce){.value.bump,.timer.bump{animation:none}@keyframes floatUp{0%{opacity:0}15%{opacity:1;transform:translate(-50%,-6px)}to{opacity:0;transform:translate(-50%,-18px)}}}[hidden]{display:none!important}
