@font-face{font-family:"Inter Fallback";src:local("Arial");size-adjust:107.64%;ascent-override:90.49%;descent-override:22.56%;line-gap-override:0%}:root{color-scheme:dark;--bg:#070b16;--bg2:#0e1530;--card:rgba(255,255,255,.055);--line:rgba(255,255,255,.11);--text:#eaeefa;--muted:#a3aecb;--brand:#7c5cff;--brand2:#22d3ee;--ok:#34d399;--focus:#22d3ee;--pad1:#5a3cf0;--pad2:#0a74b5;--g1:#a78bfa;--g2:#22d3ee;--shadow:0 24px 60px -28px rgba(0,0,0,.8);--thumb:rgba(160,175,215,.35);--thumbh:rgba(160,175,215,.65);--gut:clamp(16px,4vw,32px);--font:Inter,"Inter Fallback",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Hiragino Sans","Yu Gothic UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif}@media (prefers-color-scheme:light){:root{color-scheme:light;--bg:#f3f5fc;--bg2:#e9edf9;--card:rgba(255,255,255,.82);--line:rgba(20,30,70,.13);--text:#12162b;--muted:#4b5575;--ok:#047857;--focus:#5a3cf0;--g1:#5a3cf0;--g2:#0a74b5;--shadow:0 24px 60px -30px rgba(40,50,110,.35);--thumb:rgba(60,70,110,.35);--thumbh:rgba(60,70,110,.6)}}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:12px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}[hidden]{display:none!important}body{margin:0;min-height:100vh;font:400 1rem/1.65 var(--font);color:var(--text);background:radial-gradient(900px 480px at 85% -8%,rgba(124,92,255,.28),transparent 62%),radial-gradient(760px 420px at -8% 6%,rgba(34,211,238,.16),transparent 60%),var(--bg);background-repeat:no-repeat;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.wrap{width:100%;max-width:1080px;margin-inline:auto;padding-inline:max(var(--gut),env(safe-area-inset-left)) max(var(--gut),env(safe-area-inset-right))}.sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.skip{position:absolute;inset-inline-start:12px;top:-64px;z-index:100;padding:10px 16px;border-radius:10px;background:#fff;color:#111;font-weight:700;text-decoration:none}.skip:focus{top:12px}.hdr{padding-block:max(12px,env(safe-area-inset-top)) 12px}.hdr-in{display:flex;align-items:center;gap:12px}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:1.12rem;letter-spacing:-.01em;text-decoration:none}.logo{width:34px;height:34px;flex:none}.menu{display:none;margin-inline-start:auto;gap:2px}.menu a{padding:8px 12px;border-radius:10px;color:var(--muted);font-weight:600;font-size:.95rem;text-decoration:none}.menu a:hover{color:var(--text);background:var(--card)}.hdr-tools{display:flex;align-items:center;gap:8px;margin-inline-start:auto}@media (min-width:760px){.menu{display:flex}.hdr-tools{margin-inline-start:0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:14px;border:1px solid var(--line);background:var(--card);color:var(--text);font:700 .95rem/1 var(--font);text-decoration:none;cursor:pointer;transition:border-color .15s,transform .15s,filter .15s}.btn:hover{border-color:rgba(124,92,255,.7)}.btn:active{transform:translateY(1px)}.btn.primary{border-color:transparent;background:linear-gradient(135deg,var(--pad1),var(--pad2));color:#fff}.btn.primary:hover{filter:brightness(1.1)}.btn svg{width:18px;height:18px;flex:none}.install{min-height:42px;padding:0 14px}@media (max-width:539px){.hdr .install .t{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.hdr .install{padding:0 12px}}.lang{position:relative}.lang summary{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:14px;background:var(--card);font-weight:700;font-size:.9rem;list-style:none;cursor:pointer;user-select:none}.lang summary::-webkit-details-marker{display:none}.lang summary svg{width:18px;height:18px}.lang ul{position:absolute;inset-inline-end:0;top:calc(100% + 8px);z-index:30;min-width:210px;max-height:min(70vh,430px);margin:0;padding:6px;overflow:auto;list-style:none;border:1px solid var(--line);border-radius:16px;background:var(--bg2);box-shadow:var(--shadow)}.lang a{display:flex;justify-content:space-between;gap:14px;padding:10px 12px;border-radius:10px;font-weight:600;font-size:.95rem;text-decoration:none}.lang a span{color:var(--muted);font-weight:700;font-size:.8rem}.lang a:hover,.lang a[aria-current]{background:rgba(124,92,255,.2)}.hero{padding-block:clamp(14px,4vw,36px) clamp(26px,5vw,52px);text-align:center}.badge{display:inline-block;margin:0 0 14px;padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--muted);font-size:.85rem;font-weight:700}h1{max-width:22ch;margin:0 auto 14px;font-size:clamp(1.9rem,5.6vw,3.4rem);line-height:1.1;font-weight:800;letter-spacing:-.025em;text-wrap:balance}.lead{max-width:62ch;margin:0 auto clamp(20px,4vw,32px);color:var(--muted);font-size:clamp(1rem,2.4vw,1.15rem);text-wrap:pretty}.game{max-width:820px;margin-inline:auto;padding:clamp(12px,3vw,22px);border:1px solid var(--line);border-radius:28px;background:var(--card);box-shadow:var(--shadow);text-align:start}.modes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;min-width:0;margin:0 0 14px;padding:0;border:0}@media (min-width:640px){.modes{grid-template-columns:repeat(8,1fr)}}.mode{position:relative;display:block}.mode input{position:absolute;inset:0;z-index:1;margin:0;opacity:0;cursor:pointer}.mode span{display:flex;align-items:center;justify-content:center;gap:2px;min-height:46px;border:1px solid var(--line);border-radius:12px;font-weight:800;font-size:1.05rem;transition:background .15s,border-color .15s}.mode small{font-size:.72rem;font-weight:700;color:var(--muted)}.mode:hover span{border-color:rgba(124,92,255,.7)}.mode input:checked+span{border-color:transparent;background:linear-gradient(135deg,var(--pad1),var(--pad2));color:#fff}.mode input:checked+span small{color:rgba(255,255,255,.88)}.mode input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}.mode input:disabled{cursor:not-allowed}.mode input:disabled+span{opacity:.45}.mode input:disabled:checked+span{opacity:1}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}@media (max-width:339px){.stats{grid-template-columns:repeat(2,1fr)}}.stat{min-width:0;padding:10px 4px;border:1px solid var(--line);border-radius:14px;background:rgba(127,127,160,.07);text-align:center}.stat span{display:block;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.stat b{display:block;font-size:clamp(1.2rem,4.6vw,1.9rem);line-height:1.3;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.bar{height:6px;margin-bottom:12px;overflow:hidden;border-radius:6px;background:var(--line)}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),var(--brand2));transform:scaleX(0);transform-origin:0 50%}.pad{position:relative;display:grid;place-items:center;min-height:clamp(200px,40vh,360px);padding:20px;overflow:hidden;border-radius:22px;background:linear-gradient(135deg,var(--pad1),var(--pad2));color:#fff;text-align:center;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 18px 40px -20px rgba(90,60,240,.75);transition:filter .15s}.pad:focus-visible{outline-offset:4px}.pad[data-state=running]{filter:saturate(1.2) brightness(1.08)}.pad[data-state=done]{background:linear-gradient(135deg,#232f6b,#0a5a8a)}.pad-in{position:relative;z-index:1;pointer-events:none}.pad-big{font-size:clamp(1.8rem,7vw,3rem);line-height:1.1;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.pad[data-state=running] .pad-big{font-size:clamp(3.6rem,17vw,7rem)}.pad-sub{min-height:1.7em;margin-top:8px;font-weight:600}.ripple{position:absolute;width:150px;height:150px;margin:-75px 0 0 -75px;border-radius:50%;background:rgba(255,255,255,.4);pointer-events:none;animation:rip .55s ease-out forwards}@keyframes rip{from{transform:scale(.15);opacity:.9}to{transform:scale(1.7);opacity:0}}.sec{padding-block:clamp(26px,5vw,46px)}.sec h2{margin:0 0 14px;font-size:clamp(1.45rem,3.6vw,2.1rem);line-height:1.2;font-weight:800;letter-spacing:-.02em;text-wrap:balance}.sec p{max-width:76ch;margin:0 0 14px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px;margin:18px 0 0;padding:0;list-style:none;counter-reset:s}.steps li{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--card);counter-increment:s}.steps li::before{content:counter(s);display:grid;place-items:center;width:34px;height:34px;margin-bottom:10px;border-radius:50%;background:linear-gradient(135deg,var(--pad1),var(--pad2));color:#fff;font-weight:800}.steps b{display:block;margin-bottom:6px;font-size:1.05rem}.steps p{margin:0;font-size:.95rem}.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--card)}table{width:100%;min-width:480px;border-collapse:collapse}th,td{padding:13px 16px;border-bottom:1px solid var(--line);text-align:start}thead th{color:var(--muted);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}tbody tr:last-child>*{border-bottom:0}tbody th{font-weight:800}td:nth-child(2){font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}td:last-child{color:var(--muted)}.tips{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px}.tip{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--card)}.tip h3{margin:0 0 6px;font-size:1.05rem}.tip p{margin:0;font-size:.95rem}.faq{display:grid;gap:10px}.faq details{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--card)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;font-weight:700;list-style:none;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"";flex:none;width:10px;height:10px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.7;transform:rotate(45deg) translateY(-2px);transition:transform .2s}.faq details[open] summary::after{transform:rotate(-135deg) translateY(-2px)}.faq summary:focus-visible{outline-offset:-3px}.faq details p{margin:0;padding:0 18px 18px}.result{margin-top:14px;padding:clamp(14px,3vw,22px);border:1px solid var(--line);border-radius:22px;background:rgba(127,127,160,.08);animation:in .35s ease-out}@keyframes in{from{opacity:0;transform:translateY(8px)}}.res-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px}.res-top h2{margin:0;font-size:1.1rem}.chip{padding:4px 12px;border-radius:999px;background:rgba(52,211,153,.18);color:var(--ok);font-size:.82rem;font-weight:800}.res-main{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}@media (max-width:480px){.res-main{grid-template-columns:1fr;text-align:center}}.res-cps b{display:block;font-size:clamp(3rem,12vw,4.6rem);line-height:1.05;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;background:linear-gradient(135deg,var(--g1),var(--g2));-webkit-background-clip:text;background-clip:text;color:transparent}.res-cps span{color:var(--muted);font-weight:600}.res-rank strong{display:block;font-size:1.5rem;line-height:1.2;font-weight:800}.res-rank>span{display:block;margin-bottom:10px;color:var(--muted)}.meter{height:8px;overflow:hidden;border-radius:8px;background:var(--line)}.meter i{display:block;width:0;height:100%;border-radius:8px;background:linear-gradient(90deg,var(--brand),var(--brand2));transition:width .6s ease}.res-rank small{display:block;margin-top:8px;color:var(--muted)}.chart{display:flex;align-items:flex-end;gap:clamp(1px,.4vw,4px);height:96px;margin:18px 0 6px;padding:8px;border-radius:14px;background:rgba(127,127,160,.09)}.chart i{flex:1 1 0;min-width:1px;min-height:3px;border-radius:3px 3px 0 0;background:linear-gradient(180deg,var(--brand2),var(--brand))}.chart-cap{margin:0 0 14px;color:var(--muted);font-size:.85rem}.res-actions{display:flex;flex-wrap:wrap;gap:10px}@media (max-width:420px){.res-actions .btn{flex:1 1 100%}}.hist{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.hist h3{margin:0 0 8px;color:var(--muted);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}.hist ul{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px;padding:0;list-style:none}.hist li{padding:6px 12px;border:1px solid var(--line);border-radius:999px;font-size:.9rem;font-variant-numeric:tabular-nums}.hist li b{font-weight:800}.hist li span{color:var(--muted)}.link{min-height:32px;padding:0;border:0;background:none;color:var(--muted);font:600 .85rem var(--font);text-decoration:underline;cursor:pointer}.link:hover{color:var(--text)}.note{margin:12px 0 0;color:var(--muted)}.ftr{margin-top:clamp(18px,4vw,36px);padding-block:32px max(26px,env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--muted);font-size:.92rem;text-align:center}.ftr p{max-width:62ch;margin:0 auto 10px}.langs{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:16px 0}.langs a{padding:7px 4px;font-weight:600;text-decoration:none}.langs a:hover,.langs a[aria-current]{color:var(--text);text-decoration:underline}.ftr .install{margin:6px auto 12px}dialog{width:min(92vw,420px);padding:24px;border:1px solid var(--line);border-radius:24px;background:var(--bg2);color:var(--text);box-shadow:var(--shadow)}dialog::backdrop{background:rgba(3,6,15,.7)}dialog h2{margin:0 0 12px;font-size:1.3rem}dialog ol{margin:0 0 18px;padding-inline-start:1.2em;color:var(--muted)}dialog li{margin-bottom:8px}.toast{position:fixed;inset-inline:0;bottom:max(20px,env(safe-area-inset-bottom));z-index:50;width:max-content;max-width:min(92vw,420px);margin-inline:auto;padding:12px 18px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:#111a36;color:#fff;font-size:.95rem;font-weight:600;box-shadow:var(--shadow);animation:in .25s ease-out}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border-radius:6px;background:var(--thumb)}::-webkit-scrollbar-thumb:hover{background:var(--thumbh)}::-webkit-scrollbar-corner{background:transparent}@supports (-moz-appearance:none){*{scrollbar-width:thin;scrollbar-color:var(--thumb) transparent}}