@font-face{unicode-range:u+0000-00b6,u+00b8-10ffff;font-family:__ui_2699f9;src:url(/_next/static/media/6b87294fb4b5f325.p.woff2) format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{unicode-range:u+0000-00b6,u+00b8-10ffff;font-family:__ui_2699f9;src:url(/_next/static/media/6b87294fb4b5f325.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{unicode-range:u+0000-00b6,u+00b8-10ffff;font-family:__ui_2699f9;src:url(/_next/static/media/6b87294fb4b5f325.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{unicode-range:u+0000-00b6,u+00b8-10ffff;font-family:__ui_2699f9;src:url(/_next/static/media/6b87294fb4b5f325.p.woff2) format("woff2");font-display:swap;font-weight:800;font-style:normal}@font-face{unicode-range:u+0000-00b6,u+00b8-10ffff;font-family:__ui_2699f9;src:url(/_next/static/media/6b87294fb4b5f325.p.woff2) format("woff2");font-display:swap;font-weight:900;font-style:normal}.__className_2699f9{font-family:__ui_2699f9,Overpass Fallback}.__variable_2699f9{--font-so-ui:"__ui_2699f9","Overpass Fallback"}@font-face{font-family:__tape_d36b9f;src:url(/_next/static/media/5ebd7249016d2859.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:__tape_d36b9f;src:url(/_next/static/media/7f9b693f050a2b48.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}.__className_d36b9f{font-family:__tape_d36b9f,Courier Prime Fallback}.__variable_d36b9f{--font-so-tape:"__tape_d36b9f","Courier Prime Fallback"}@font-face{font-family:__vfd_c927dd;src:url(/_next/static/media/79fd34e2c353b593.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}.__className_c927dd{font-family:__vfd_c927dd,DotGothic16 Fallback;font-weight:400}.__variable_c927dd{--font-so-vfd:"__vfd_c927dd","DotGothic16 Fallback"}:root{--so-casing:#0e5a52;--so-casing-deep:#083c37;--so-on-casing:#f2f5f3;--so-on-casing-soft:#bfd9d1;--so-display:#04241f;--so-vfd:#8df2c4;--so-vfd-label:#6fbfa0;--so-key:#f4f6f3;--so-key-edge:#b9c4bf;--so-key-ink:#15181a;--so-key-used:#0a4842;--so-fkey:#26302e;--so-fkey-edge:#0f1514;--so-fkey-ink:#f2f5f3;--so-tape:#fafbf8;--so-tape-rule:#d9deda;--so-ink:#1b1d1f;--so-ink-soft:#4f5753;--so-exact:#f0ae00;--so-exact-ink:#5c4100;--so-close:#1f4fb5;--so-miss:#b3261e;--so-todo:#7a8480;--so-todo-casing:#5e8f86;--so-select:#f0ae00;--so-select-wash:#fff4d1;--so-refused-wash:#ffe3df;--so-ui:var(--font-so-ui),system-ui,sans-serif;--so-tape-font:var(--font-so-tape),"Courier New",monospace;--so-vfd-font:var(--font-so-vfd),monospace}*,:after,:before{box-sizing:border-box}::-moz-selection{background:var(--so-select);color:var(--so-key-ink)}::selection{background:var(--so-select);color:var(--so-key-ink)}html{-webkit-text-size-adjust:100%;scrollbar-color:var(--so-casing-deep) var(--so-casing)}body{margin:0;min-height:100vh;background:var(--so-casing);background-image:linear-gradient(180deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,0) 360px);color:var(--so-on-casing);font:600 15px/1.4 var(--so-ui)}a{color:inherit;text-underline-offset:3px}:focus-visible{outline:3px solid var(--so-select);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip:focus{position:fixed;left:8px;top:8px;width:auto;height:auto;clip:auto;z-index:99;background:var(--so-key);color:var(--so-key-ink);padding:8px 12px;border-radius:8px}.so-page{max-width:480px;margin:0 auto;padding:0 12px 32px}.so-machine{flex-direction:column;padding-top:8px}.so-machine,.so-meta{display:flex;gap:10px}.so-meta{min-height:28px;font:800 13px/1 var(--so-ui)}.so-meta,.so-n{align-items:center}.so-n{font-variant-numeric:tabular-nums;color:var(--so-on-casing-soft);display:flex;gap:8px}.so-tag{text-transform:uppercase;letter-spacing:.08em;font-size:11px;padding:3px 7px;border-radius:999px;background:var(--so-casing-deep);color:var(--so-on-casing)}.so-clock{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums}.so-clock b{font-weight:800}.so-day{color:var(--so-on-casing-soft);font-weight:600;padding-left:8px;border-left:1.5px solid var(--so-on-casing-soft)}.so-window{height:112px;border-radius:14px;background:var(--so-display);position:relative;box-shadow:inset 0 2px 0 rgba(0,0,0,.45),inset 0 -1px 0 hsla(0,0%,100%,.08),0 1px 0 hsla(0,0%,100%,.12);display:grid;grid-template-columns:1fr auto;align-items:center;padding:0 18px}.so-lbl{font:800 12px/1.2 var(--so-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--so-vfd-label)}.so-tgt{font:400 72px/1 var(--so-vfd-font);color:var(--so-vfd);letter-spacing:.02em;text-shadow:0 0 14px rgba(141,242,196,.35);font-variant-numeric:tabular-nums}.so-closeby{text-align:right;font:700 13px/1.35 var(--so-ui);color:#bfebd8}.so-closeby b{display:block;font:900 22px/1.1 var(--so-ui);color:var(--so-vfd)}.so-pips{list-style:none;margin:0;padding:0;display:flex;gap:6px;height:34px}.so-pip{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;border-radius:9px;background:var(--so-casing-deep);color:var(--so-on-casing-soft);font:800 12px/1 var(--so-ui);font-variant-numeric:tabular-nums}.so-pip.exact{--i-fill:var(--so-exact);--i-line:#ffe7a6;color:var(--so-on-casing)}.so-pip.close{--i-fill:#9db8ff;--i-line:#9db8ff;color:var(--so-on-casing)}.so-pip.miss{--i-line:#ff9c93;color:var(--so-on-casing)}.so-pip.current{background:var(--so-on-casing);color:var(--so-casing-deep);--i-line:var(--so-casing)}.so-pip.todo{--i-line:var(--so-todo-casing);color:#7faea4}.so-roll{position:relative;background:var(--so-tape);color:var(--so-ink);border-radius:0 0 4px 4px;font:400 17px/1.55 var(--so-tape-font);padding:14px 16px 12px;min-height:132px;margin-top:8px;box-shadow:0 2px 0 rgba(0,0,0,.12),0 8px 18px rgba(0,0,0,.18)}.so-roll:before{content:"";position:absolute;left:0;right:0;top:-7px;height:8px;background:linear-gradient(135deg,transparent 50%,var(--so-tape) 50%) 0 0 /10px 8px repeat-x,linear-gradient(225deg,transparent 50%,var(--so-tape) 50%) 5px 0 /10px 8px repeat-x}.so-ln{display:grid;grid-template-columns:1fr auto;gap:12px;font-variant-numeric:tabular-nums;white-space:pre;animation:so-feed .12s ease-out}.so-ln .r{text-align:right;font-weight:700}.so-red{color:var(--so-miss);font-weight:700}.so-typing .r:after{content:"";display:inline-block;width:9px;height:17px;background:var(--so-ink);vertical-align:-3px;animation:so-blink 1s steps(1) infinite}.so-rule{border-top:1.5px dashed var(--so-tape-rule);margin:6px 0}.so-near{display:flex;justify-content:space-between;gap:8px;font:700 14px/1.4 var(--so-ui);color:var(--so-ink-soft)}.so-near b{color:var(--so-ink);font-variant-numeric:tabular-nums}.so-sep{padding:0 .4em}.so-head{display:flex;justify-content:space-between;font:700 13px/1.3 var(--so-ui);letter-spacing:.06em;color:var(--so-ink-soft)}.so-head,.so-stamp{gap:8px;text-transform:uppercase}.so-stamp{display:inline-flex;align-items:center;padding:6px 12px 6px 8px;margin:10px 0 4px;border:3px solid;border-radius:8px;font:900 20px/1 var(--so-ui);letter-spacing:.04em;transform:rotate(-6deg);background:hsla(80,27%,98%,.9);animation:so-stamp .18s ease-out}.so-stamp.exact{color:var(--so-exact-ink);--i-fill:var(--so-exact);--i-line:var(--so-exact-ink)}.so-stamp.close{color:var(--so-close);--i-fill:var(--so-close);--i-line:var(--so-close);border-style:double;border-width:5px}.so-stamp.miss{color:var(--so-miss);--i-line:var(--so-miss);border-style:dashed}.so-pad{display:grid;gap:8px}.so-tiles{grid-template-columns:repeat(3,1fr);margin-top:2px}.so-ops{grid-template-columns:repeat(4,1fr)}.so-acts{grid-template-columns:1fr 1fr 1.6fr}.so-akey,.so-fkey,.so-key{font-family:var(--so-ui);border:0;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.so-key{position:relative;height:60px;border-radius:12px;background:var(--so-key);color:var(--so-key-ink);display:flex;align-items:center;justify-content:center;font:900 30px/1 var(--so-ui);font-variant-numeric:tabular-nums;box-shadow:0 4px 0 var(--so-key-edge),0 5px 8px rgba(0,0,0,.25);transition:transform .08s,box-shadow .08s}.so-key.big{font-size:27px}.so-fkey .kb,.so-key .kb{position:absolute;left:8px;top:7px;font:800 11px/1 var(--so-ui);color:#6b7672;display:none}.so-key.sel{background:var(--so-select-wash);box-shadow:0 0 0 3px var(--so-select),0 2px 0 var(--so-key-edge);transform:translateY(2px)}.so-key.hit{background:var(--so-exact);color:var(--so-exact-ink);box-shadow:0 0 0 3px #ffe7a6,0 4px 0 #a87800}.so-key.used{background:var(--so-key-used);box-shadow:inset 0 2px 4px rgba(0,0,0,.35);cursor:default}.so-fkey{position:relative;height:54px;border-radius:12px;background:var(--so-fkey);color:var(--so-fkey-ink);display:flex;align-items:center;justify-content:center;font:800 30px/1 var(--so-ui);box-shadow:0 4px 0 var(--so-fkey-edge),0 5px 8px rgba(0,0,0,.25);transition:transform .08s,box-shadow .08s}.so-fkey .kb{color:#93a39e}.so-fkey.sel{background:var(--so-select);color:var(--so-key-ink);box-shadow:0 2px 0 #a87800;transform:translateY(2px)}.so-fkey:disabled{opacity:.55;cursor:default}.so-akey{min-height:48px;border-radius:11px;background:var(--so-casing-deep);color:var(--so-on-casing);display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;font:800 14px/1.15 var(--so-ui);text-align:center;box-shadow:0 3px 0 #04211e,inset 0 1px 0 hsla(0,0%,100%,.08)}.so-akey:disabled{opacity:.5;cursor:default}.so-akey.so-total{background:var(--so-key);color:var(--so-key-ink);box-shadow:0 3px 0 var(--so-key-edge)}.so-akey.so-total.armed{background:var(--so-select-wash);box-shadow:0 0 0 3px var(--so-select),0 3px 0 var(--so-key-edge)}.so-akey.so-next{min-height:56px;background:var(--so-exact);color:var(--so-key-ink);box-shadow:0 4px 0 #a87800;font-size:18px;justify-content:space-between;padding:0 18px}.so-kbd{display:none;margin:4px 0 0;font:600 12.5px/1.6 var(--so-ui);color:var(--so-on-casing-soft)}.so-toast{display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:10px;font:800 14px/1.25 var(--so-ui);background:var(--so-refused-wash);color:var(--so-miss);--i-line:var(--so-miss)}.so-rollwrap{position:relative}.so-rollwrap .so-roll{min-height:150px;padding-bottom:12px}.so-rollwrap .so-toast{position:absolute;left:8px;right:8px;bottom:8px;z-index:2;box-shadow:0 6px 14px -8px rgba(0,0,0,.5)}.so-graded-keys{display:grid;gap:8px}.so-opening{margin:0;color:var(--so-on-casing);font-weight:700}.so-endhead{position:relative;min-height:104px;padding-right:124px}.so-endhead h2{margin:0;font:900 30px/1.05 var(--so-ui);letter-spacing:-.01em;text-wrap:balance}.so-endhead p{margin:6px 0 0;color:var(--so-on-casing-soft);max-width:28ch}.so-seal{position:absolute;right:0;top:0;text-align:center;display:grid;place-items:center;transform:rotate(-8deg)}.so-seal .s{font:900 19px/1.05 var(--so-ui);text-transform:uppercase;letter-spacing:.04em}.so-seal small{display:block;font:800 10px/1.2 var(--so-ui);letter-spacing:.08em;text-transform:uppercase;margin-top:3px}.so-seal.perfect{width:108px;height:108px;border-radius:50%;padding:6px;border:4px solid var(--so-exact-ink);color:var(--so-exact-ink);background:radial-gradient(circle,#ffd969 0 58%,var(--so-exact) 59% 100%);box-shadow:0 0 0 3px var(--so-casing),0 0 0 6px var(--so-exact-ink);--i-fill:var(--so-exact-ink);--i-line:var(--so-exact-ink)}.so-seal.perfect .stars{display:flex;gap:1px;justify-content:center}.so-seal.perfect .s{font-size:15px}.so-seal.good{padding:10px 14px;border:5px double var(--so-close);border-radius:6px;color:var(--so-close);background:var(--so-tape)}.so-seal.good .s{font-size:28px}.so-seal.retry{padding:14px 16px;border:3px dashed var(--so-miss);border-radius:50%;color:var(--so-miss);background:var(--so-tape);transform:rotate(5deg)}.so-seal.retry .s{font-size:15px;max-width:8ch}.so-seal.unfinished{padding:10px 14px;border:3px dotted var(--so-todo);border-radius:4px;color:var(--so-ink-soft);background:var(--so-tape);transform:rotate(-3deg)}.so-seal.unfinished .s{font-size:24px;font-variant-numeric:tabular-nums}.so-receipt .so-rline summary{list-style:none;display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;cursor:pointer;min-height:34px}.so-receipt .so-rline summary::-webkit-details-marker{display:none}.so-rline .g{display:inline-flex;gap:6px;align-items:center;font:800 13px/1 var(--so-ui)}.so-rline .g.exact{--i-fill:var(--so-exact);--i-line:var(--so-exact-ink);color:var(--so-exact-ink)}.so-rline .g.close{--i-fill:var(--so-close);--i-line:var(--so-close);color:var(--so-close)}.so-rline .g.miss{--i-line:var(--so-miss);color:var(--so-miss)}.so-rline .tm{color:var(--so-ink-soft);font-size:15px}.so-rline .tm,.so-rline .v{font-variant-numeric:tabular-nums}.so-sol{padding:6px 0 8px;border-top:1.5px dashed var(--so-tape-rule);margin:2px 0 6px;font-size:15px}.so-tot{display:flex;justify-content:space-between;font:700 17px/1.4 var(--so-tape-font);border-top:2px solid var(--so-ink);padding-top:6px;margin-top:6px}.so-globe{padding:10px 12px;border-radius:12px;background:var(--so-casing-deep);font:700 13px/1.35 var(--so-ui)}.so-globe p{margin:0}.so-bars{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;align-items:end;height:40px;margin-top:8px}.so-bars i{display:block;background:var(--so-todo-casing);border-radius:3px 3px 0 0}.so-bars i.me{background:var(--so-exact)}.so-bars-l{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;font:800 11px/1.6 var(--so-ui);text-align:center}.so-bars-l,.so-cd{color:var(--so-on-casing-soft)}.so-cd{display:flex;justify-content:space-between;align-items:baseline;font:700 13px/1.2 var(--so-ui)}.so-cd b{font:900 20px/1 var(--so-ui);color:var(--so-on-casing);font-variant-numeric:tabular-nums}.so-share{display:grid;gap:6px}.so-share.compact,.so-sharekey{display:inline-flex;align-items:center}.so-sharekey{gap:6px;min-height:32px;padding:0 10px;border:0;border-radius:999px;background:var(--so-casing-deep);font:800 13px/1 var(--so-ui);cursor:pointer}.so-note,.so-sharekey{color:var(--so-on-casing)}.so-note{font-weight:700}.so-slip{width:100%;font:400 14px/1.45 var(--so-tape-font);background:var(--so-tape);color:var(--so-ink);border-radius:6px;padding:10px 12px;border:0}.so-about,.so-howto{color:var(--so-on-casing)}.so-about{margin-top:28px;border-top:1.5px solid var(--so-casing-deep);padding-top:18px}.so-about h2,.so-howto h1{font:900 24px/1.15 var(--so-ui);margin:0 0 10px;text-wrap:balance}.so-about h3,.so-howto h2{font:800 17px/1.2 var(--so-ui);margin:20px 0 8px}.so-about ol,.so-howto ol{padding-left:20px;margin:0;display:grid;gap:6px;max-width:65ch}.so-about dl,.so-howto dl{margin:0;display:grid;gap:12px}.so-about dt,.so-howto dt{font-weight:800}.so-about dd,.so-howto dd{margin:2px 0 0;color:var(--so-on-casing-soft)}.so-howto{padding-top:16px}.so-howto .so-roll+ol{margin-top:18px}.so-demo .so-ln,.so-demo-stamp{opacity:0;animation:so-appear .3s ease-out forwards}.so-play{display:inline-flex;min-height:48px;align-items:center;padding:0 22px;border-radius:12px;background:var(--so-exact);color:var(--so-key-ink);font:800 17px/1 var(--so-ui);text-decoration:none;box-shadow:0 4px 0 #a87800}.so-statgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 0}.so-statgrid div{background:var(--so-casing-deep);border-radius:12px;padding:12px}.so-statgrid dt{font:700 12px/1.2 var(--so-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--so-on-casing-soft)}.so-statgrid dd{margin:6px 0 0;font:900 30px/1 var(--so-ui);font-variant-numeric:tabular-nums}.so-dist{list-style:none;padding:0;margin:0;display:grid;gap:8px}.so-dist li{display:grid;grid-template-columns:148px 32px 1fr 28px;gap:10px;align-items:center;min-height:44px}.so-tierchip{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:6px;background:var(--so-tape);font:900 12px/1 var(--so-ui);text-transform:uppercase;letter-spacing:.04em;justify-self:start;white-space:nowrap}.so-tierchip.perfect{color:var(--so-exact-ink);border:2px solid var(--so-exact-ink);--i-fill:var(--so-exact);--i-line:var(--so-exact-ink)}.so-tierchip.good{color:var(--so-close);border:3px double var(--so-close);--i-fill:var(--so-tape);--i-line:var(--so-close)}.so-tierchip.retry{color:var(--so-miss);border:2px dashed var(--so-miss)}.so-dist .n,.so-dist .w{font:800 15px/1 var(--so-ui);font-variant-numeric:tabular-nums}.so-dist .n{text-align:right}.so-dist .bar{height:12px;background:var(--so-casing-deep);border-radius:6px;overflow:hidden}.so-dist .bar i{display:block;height:100%;background:var(--so-exact)}.so-archive{list-style:none;margin:18px 0 0;padding:12px 16px}.so-aday a{display:grid;grid-template-columns:70px 1fr auto;gap:10px;align-items:center;min-height:44px;text-decoration:none;color:var(--so-ink);border-bottom:1.5px dashed var(--so-tape-rule)}.so-aday:last-child a{border-bottom:0}.so-aday .c{font-weight:700;font-variant-numeric:tabular-nums}.so-aday .s{font:800 13px/1 var(--so-ui);color:var(--so-ink-soft)}.so-aday.finished .s{color:var(--so-exact-ink)}.so-aday.locked .s{color:var(--so-miss)}.so-premium{margin-top:16px;color:var(--so-on-casing-soft)}.so-soltarget{margin:22px 0 0}.so-soltgt{font:400 44px/1 var(--so-vfd-font);color:var(--so-ink);margin:8px 0 4px}.so-ways{margin:8px 0 0;font:700 13px/1.3 var(--so-ui);color:var(--so-ink-soft)}@keyframes so-blink{50%{opacity:0}}@keyframes so-feed{0%{transform:translateY(6px);opacity:0}}@keyframes so-stamp{0%{transform:scale(1.15) rotate(-12deg);opacity:0}}@keyframes so-appear{to{opacity:1}}@media (min-width:700px){.so-page{max-width:680px;padding-inline:24px;padding-bottom:40px}.so-machine{gap:12px;padding-top:12px}.so-meta{font-size:14px}.so-window{height:136px;padding:0 24px}.so-tgt{font-size:92px}.so-closeby{font-size:14px}.so-closeby b{font-size:26px}.so-pips{height:40px;gap:8px}.so-pip{font-size:13px}.so-roll{font-size:19px;padding:16px 20px 14px}.so-rollwrap .so-roll{min-height:176px}.so-pad{gap:10px}.so-key{height:76px;font-size:34px;border-radius:14px}.so-key.big{font-size:31px}.so-fkey{height:62px;font-size:32px;border-radius:14px}.so-akey{min-height:54px;font-size:15px}.so-akey.so-next{min-height:62px;font-size:20px}.so-endhead{min-height:124px;padding-right:150px}.so-endhead h2{font-size:38px}.so-endhead p{font-size:16px}.so-receipt{font-size:18px}.so-about,.so-howto{font-size:16px}.so-about h2,.so-howto h1{font-size:30px}.so-about h3,.so-howto h2{font-size:19px}}@media (min-width:1024px){.so-page{max-width:1160px;padding-inline:32px;padding-bottom:48px}.so-machine:not(.so-end){display:grid;grid-template-columns:minmax(0,540px) minmax(0,1fr);-moz-column-gap:40px;column-gap:40px;row-gap:12px;grid-template-areas:"meta meta" "window roll" "pips roll" "toast roll" "tiles roll" "ops roll" "acts roll" "kbd roll";align-items:start}.so-machine>.so-meta{grid-area:meta}.so-machine>.so-window{grid-area:window;height:164px}.so-machine>.so-pips{grid-area:pips}.so-machine>.so-roll,.so-machine>.so-rollwrap{grid-area:roll;align-self:stretch;margin-top:8px}.so-machine>.so-rollwrap{display:flex;flex-direction:column}.so-machine>.so-rollwrap .so-roll{flex:1}.so-machine .so-roll{font-size:21px;padding:20px 24px 16px}.so-machine>.so-toast{grid-area:toast}.so-machine>.so-tiles{grid-area:tiles}.so-machine>.so-ops{grid-area:ops}.so-machine>.so-acts{grid-area:acts}.so-machine>.so-graded-keys{grid-area:tiles}.so-machine>.so-kbd{grid-area:kbd;display:block;font-size:13.5px}.so-tgt{font-size:116px}.so-key{height:88px;font-size:40px}.so-key.big{font-size:36px}.so-fkey{height:66px}.so-fkey .kb,.so-key .kb{display:block;font-size:12px}.so-end{max-width:960px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);-moz-column-gap:40px;column-gap:40px;row-gap:14px;grid-template-areas:"meta meta" "head head" "roll globe" "roll cd" "roll keys" "roll .";grid-template-rows:auto auto auto auto auto 1fr;align-items:start}.so-end>.so-meta{grid-area:meta}.so-end>.so-endhead{grid-area:head}.so-end>.so-receipt{grid-area:roll;margin-top:8px}.so-end>.so-globe{grid-area:globe;margin-top:8px}.so-end>.so-cd{grid-area:cd}.so-end>.so-endkeys{grid-area:keys}.so-endhead{padding-right:0;display:flex;flex-direction:column;justify-content:center}.so-endhead h2{font-size:44px}.so-endhead .so-seal{right:400px}.so-page>.so-about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);-moz-column-gap:48px;column-gap:48px;align-items:start}.so-page>.so-about h2{grid-column:1/-1}.so-page>.so-about ol{grid-column:1;grid-row:2/span 2}.so-page>.so-about h3{grid-column:2;grid-row:2;margin-top:0}.so-page>.so-about dl{grid-column:2;grid-row:3}.so-page.so-howto{max-width:820px}}@media (prefers-reduced-motion:reduce){.so-ln,.so-stamp,.so-typing .r:after{animation:none}.so-fkey,.so-key{transition:none}.so-demo .so-ln,.so-demo-stamp{animation:none;opacity:1}}:root{--so-hint-wash:#e6edff}.so-side{display:grid;justify-items:end;align-content:center;gap:8px}.so-hintkey{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border-radius:10px;background:transparent;border:1.5px solid var(--so-vfd-label);color:var(--so-vfd);cursor:pointer;font:800 14px/1 var(--so-ui);--i-fill:var(--so-vfd);--i-line:var(--so-vfd);touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .12s,color .12s}.so-hintkey:hover{background:rgba(141,242,196,.1)}.so-hintkey.armed{background:var(--so-vfd);color:var(--so-display);--i-fill:var(--so-display);--i-line:var(--so-display);border-color:var(--so-vfd)}.so-hintkey:disabled{opacity:.55;cursor:default}.so-hintkey .kb{display:none;font:800 11px/1 var(--so-ui);opacity:.7}.so-hintln{color:var(--so-close);--i-fill:var(--so-close);--i-line:var(--so-close);font-weight:700;padding-bottom:4px;margin-bottom:4px;border-bottom:1.5px dashed var(--so-tape-rule)}.so-hintln svg{width:1em;height:1em;vertical-align:-.14em;flex-shrink:0}.so-toast svg{flex-shrink:0}.so-toast.info{background:var(--so-hint-wash);color:var(--so-close);--i-fill:var(--so-close);--i-line:var(--so-close)}.so-pip.hint{--i-fill:#9db8ff;--i-line:#9db8ff;color:var(--so-on-casing)}.so-stamp.hint{border-style:double;border-width:5px}.so-rline .g.hint,.so-stamp.hint{color:var(--so-close);--i-fill:var(--so-close);--i-line:var(--so-close)}@media (min-width:700px){.so-hintkey{min-height:46px;font-size:15px;padding:0 14px}}@media (min-width:1024px){.so-hintkey .kb{display:inline}}@media (prefers-reduced-motion:reduce){.so-hintkey{transition:none}}.so-home{display:grid;gap:22px;padding-top:16px}.so-home-main{display:grid;gap:14px;align-content:start}.so-ticket{margin-top:8px;padding-bottom:14px}.so-ticket-title{margin:6px 0;font:900 26px/1.1 var(--so-ui);color:var(--so-ink);letter-spacing:-.01em;text-wrap:balance}.so-ladder{list-style:none;margin:0;padding:0;display:grid}.so-ladder li{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:12px;align-items:center;min-height:40px;border-bottom:1.5px dashed var(--so-tape-rule);--i-line:var(--so-todo)}.so-ladder li:last-child{border-bottom:0}.so-ladder .c{font:700 17px/1 var(--so-tape-font);font-variant-numeric:tabular-nums}.so-ladder .lv{font:700 15px/1.2 var(--so-ui);color:var(--so-ink-soft)}.so-ladder .dots{display:inline-flex;gap:3px}.so-ladder .dots i{width:7px;height:7px;border-radius:2px;background:var(--so-tape-rule)}.so-ladder .dots i.on{background:var(--so-ink)}.so-ticket-line{margin:10px 0 0;font:700 15px/1.4 var(--so-ui);color:var(--so-ink)}.so-home-go{display:grid;gap:12px;align-content:start}.so-akey.so-play-big{min-height:66px;font-size:22px;padding:0 22px;width:100%}.so-akey.so-total.so-play-big{justify-content:center}.so-home-err{display:flex;gap:8px;align-items:center;margin:0;padding:10px 12px;border-radius:10px;background:var(--so-refused-wash);color:var(--so-miss);--i-line:var(--so-miss);font:800 14px/1.3 var(--so-ui)}.so-home-err svg{flex-shrink:0}.so-home-me{margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.so-home-me div{background:var(--so-casing-deep);border-radius:10px;padding:9px 10px;min-width:0}.so-home-me dt{font:800 10.5px/1.2 var(--so-ui);letter-spacing:.05em;text-transform:uppercase;color:var(--so-on-casing-soft)}.so-home-me dd{margin:4px 0 0;font:900 24px/1 var(--so-ui);font-variant-numeric:tabular-nums}.so-home-me .hot dd{color:var(--so-vfd)}.so-home-note{margin:0;color:var(--so-on-casing-soft);font:700 14px/1.4 var(--so-ui)}.so-home-demo{margin:0;display:grid;gap:10px;align-content:start;padding:14px;border-radius:22px;background:var(--so-casing-deep);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06),0 10px 24px -14px rgba(0,0,0,.5)}.so-home-demo>.so-lbl{color:var(--so-on-casing-soft)}.so-demo-window{height:92px;padding:0 16px;grid-template-columns:1fr}.so-demo-window .so-tgt{font-size:60px}.so-demo-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.so-demo-key{height:46px;font-size:22px;cursor:default}.so-fkey.so-demo-key{height:46px;font-size:24px}.so-key.so-demo-key.tap{animation:so-tap .9s ease-out both}.so-fkey.so-demo-key.tap{animation:so-tap-op .9s ease-out both}.so-home-demo .so-roll{min-height:128px;margin-top:6px}.so-demo-cap{margin:0;color:var(--so-on-casing-soft);font:700 13px/1.35 var(--so-ui)}@keyframes so-tap{15%,70%{background:var(--so-select-wash);box-shadow:0 0 0 3px var(--so-select),0 2px 0 var(--so-key-edge);transform:translateY(2px)}}@keyframes so-tap-op{15%,70%{background:var(--so-select);color:var(--so-key-ink);box-shadow:0 2px 0 #a87800;transform:translateY(2px)}}ol.so-rules{list-style:none;counter-reset:so-r;padding:0;margin:0;display:grid;gap:12px;max-width:65ch}ol.so-rules li{counter-increment:so-r;display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:start}ol.so-rules li:before{content:counter(so-r);width:34px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--so-key);color:var(--so-key-ink);font:900 16px/1 var(--so-ui);box-shadow:0 3px 0 var(--so-key-edge)}dl.so-faq{gap:0}dl.so-faq>div{padding:12px 0;border-top:1.5px dashed rgba(191,217,209,.28)}dl.so-faq>div:first-child{border-top:0;padding-top:0}@media (min-width:700px){.so-ticket-title{font-size:30px}.so-ladder li{min-height:46px}.so-ladder .lv{font-size:16px}.so-home-me dd{font-size:28px}.so-demo-window{height:112px}.so-demo-window .so-tgt{font-size:76px}.so-demo-key,.so-fkey.so-demo-key{height:56px;font-size:26px}}@media (min-width:1024px){.so-home{grid-template-columns:minmax(0,1fr) minmax(0,1fr);-moz-column-gap:40px;column-gap:40px;align-items:stretch;padding-top:18px}.so-home-demo{padding:20px}.so-home-demo .so-roll{min-height:150px}.so-ticket-title{font-size:34px}}@media (prefers-reduced-motion:reduce){.so-fkey.so-demo-key.tap,.so-key.so-demo-key.tap{animation:none}}:root{--so-select-ring:#a87800;--so-cell-rule:#7f8984;--so-peer:#eef2ef}.pz{display:grid;gap:12px;padding-top:10px}.pz-paper{margin-top:8px;padding-bottom:14px}.pz-side{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.pz-title{margin:6px 0;font:900 26px/1.1 var(--so-ui)}.pz-rule,.pz-title{color:var(--so-ink)}.pz-rule{margin:0;font:700 16px/1.4 var(--so-ui)}.pz-lead,.pz-rulecap{margin:10px 0 0;font:700 14px/1.4 var(--so-ui);color:var(--so-ink-soft)}.pz-sdk{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(6,1fr);border:2.5px solid var(--so-ink);aspect-ratio:1}.pz-c{position:relative;display:grid;place-items:center;border:0;padding:0;background:var(--so-tape);border-right:1px solid var(--so-cell-rule);border-bottom:1px solid var(--so-cell-rule);font:800 26px/1 var(--so-ui);color:var(--so-close);font-variant-numeric:tabular-nums;cursor:pointer;-webkit-tap-highlight-color:transparent}.pz-sdk .pz-c:nth-child(6n){border-right:0}.pz-sdk .pz-c:nth-child(n+31){border-bottom:0}.pz-c.br{border-right:2.5px solid var(--so-ink)}.pz-c.bb{border-bottom:2.5px solid var(--so-ink)}.pz-c.g{font:700 26px/1 var(--so-tape-font);color:var(--so-ink);cursor:default}.pz-c.t:after{content:"";position:absolute;left:50%;bottom:13%;width:16px;height:2.5px;margin-left:-8px;border-radius:2px;background:currentColor}.pz-c.peer{background:var(--so-peer)}.pz-c.sel{background:var(--so-select-wash);box-shadow:inset 0 0 0 3px var(--so-select-ring)}.pz-c.conf{background:var(--so-refused-wash);color:var(--so-miss)}.pz-c.conf:before{content:"";position:absolute;inset:4px;border:2px dashed var(--so-miss);border-radius:4px}.pz-x{position:absolute;right:3px;top:2px;font:900 11px/1 var(--so-ui)}.pz-c.wrong,.pz-x{color:var(--so-miss)}.pz-c.wrong{text-decoration:line-through;text-decoration-thickness:2.5px}.pz-c.wrong:before{content:"";position:absolute;right:0;top:0;border-style:solid;border-width:0 14px 14px 0;border-color:transparent var(--so-miss) transparent transparent}.pz-c:disabled{cursor:default}.pz-keys{display:grid;gap:8px}.pz-k6{grid-template-columns:repeat(6,1fr)}.pz-key{height:56px;font-size:26px}.pz-key:disabled{opacity:.5;cursor:default}.pz-acts{grid-template-columns:1fr 1fr 1.4fr}.pz-check{flex-direction:column;gap:2px}.pz-check b{display:inline-flex;align-items:center;gap:5px}.pz-check small{font:700 11px/1.2 var(--so-ui);color:var(--so-ink-soft)}.pz-check.armed{background:var(--so-hint-wash);--i-fill:var(--so-close);--i-line:var(--so-close);box-shadow:0 0 0 3px var(--so-close),0 3px 0 var(--so-key-edge)}.pz-check.armed,.pz-check.armed small{color:var(--so-close)}.pz-note{position:static}.pz-clear{justify-self:start;background:none;border:0;padding:4px 0;color:var(--so-on-casing-soft);font:700 13px/1.2 var(--so-ui);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.pz-stamprow{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}.pz-stamp{margin:0;white-space:nowrap;flex-shrink:0}.pz-art{font:800 17px/1.2 var(--so-ui);color:var(--so-ink)}.pz-notyet{margin:0;color:var(--so-on-casing);font:700 14px/1.4 var(--so-ui)}.pz-endhead h1{margin:0;font:900 30px/1.05 var(--so-ui)}.pz-endhead p{margin:6px 0 0;color:var(--so-on-casing-soft)}.pz-back{text-decoration:none}.pz-done .pz-nono,.pz-done .pz-sdk{max-width:320px}.pz-seg{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pz-mode{height:50px;font-size:15px;gap:8px}.pz-sw{border-radius:3px;background:currentColor}.pz-dot,.pz-sw{width:16px;height:16px}.pz-dot{display:grid;place-items:center}.pz-dot:after{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.pz-nono{display:grid;grid-template-columns:62px repeat(10,minmax(0,1fr));grid-template-rows:auto repeat(10,minmax(28px,1fr));-webkit-user-select:none;-moz-user-select:none;user-select:none}.pz-nrow{display:contents}.pz-corner{min-height:64px}.pz-cc{flex-direction:column;gap:1px;padding-bottom:4px;font:700 12px/1.05 var(--so-tape-font)}.pz-cc,.pz-rc{display:flex;justify-content:flex-end;align-items:center;color:var(--so-ink)}.pz-rc{padding-right:6px;font:700 13px/1 var(--so-tape-font);white-space:nowrap}.pz-cc.done,.pz-rc.done{color:var(--so-ink-soft);text-decoration:line-through}.pz-cc.bad,.pz-rc.bad{color:var(--so-miss)}.pz-q{position:relative;border:0;padding:0;background:var(--so-tape);border-right:1px solid var(--so-cell-rule);border-bottom:1px solid var(--so-cell-rule);aspect-ratio:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.pz-nrow:first-of-type .pz-q{border-top:2px solid var(--so-ink)}.pz-rc+.pz-q{border-left:2px solid var(--so-ink)}.pz-q.l5{border-right:2px solid var(--so-ink)}.pz-q.b5{border-bottom:2px solid var(--so-ink)}.pz-q.f{background:var(--so-ink)}.pz-q.e:after{content:"";position:absolute;left:50%;top:50%;width:5px;height:5px;margin:-2.5px;border-radius:50%;background:var(--so-ink-soft)}.pz-q.bad:not(.f){background:var(--so-refused-wash)}.pz-q.bad.f{background:var(--so-miss)}.pz-q.sel{box-shadow:inset 0 0 0 3px var(--so-select-ring)}.pz-q.wrong:before{content:"";position:absolute;right:0;top:0;border-style:solid;border-width:0 9px 9px 0;border-color:transparent var(--so-miss) transparent transparent;z-index:1}.pz-q:disabled{cursor:default}@media (min-width:700px){.pz-c,.pz-c.g{font-size:32px}.pz-key{height:64px;font-size:30px}.pz-nono{grid-template-columns:76px repeat(10,minmax(0,1fr))}.pz-cc{font-size:13px}.pz-rc{font-size:14px}.pz-title{font-size:32px}}@media (min-width:1024px){.pz-nonogram,.pz-sudoku{grid-template-columns:minmax(0,560px) minmax(0,1fr);-moz-column-gap:48px;column-gap:48px;align-items:start;grid-template-areas:"meta meta" "paper side" "paper keys" "paper acts" "paper note" "paper clear" "paper kbd" "paper ad" "paper .";grid-template-rows:auto auto auto auto auto auto auto auto 1fr}.pz-nonogram>.pz-side,.pz-sudoku>.pz-side{grid-area:side;position:static;width:auto;height:auto;clip:auto;overflow:visible;white-space:normal;margin-top:8px}.pz-side h1{margin:0;font:900 34px/1.1 var(--so-ui)}.pz-side p{margin:8px 0 4px;color:var(--so-on-casing-soft);font:600 16px/1.45 var(--so-ui);max-width:44ch}.pz-nonogram>.so-meta,.pz-sudoku>.so-meta{grid-area:meta}.pz-nonogram>.pz-paper,.pz-sudoku>.pz-paper{grid-area:paper;padding:20px}.pz-nonogram>.pz-seg,.pz-sudoku>.pz-keys{grid-area:keys;margin-top:8px}.pz-nonogram>.pz-acts,.pz-sudoku>.pz-acts{grid-area:acts}.pz-nonogram>.pz-note,.pz-sudoku>.pz-note{grid-area:note}.pz-nonogram>.pz-clear,.pz-sudoku>.pz-clear{grid-area:clear}.pz-nonogram>.so-kbd,.pz-sudoku>.so-kbd{grid-area:kbd;display:block}.pz-key{height:72px;font-size:32px}.pz-done,.pz-intro{max-width:640px}}.pz-k5{grid-template-columns:repeat(5,1fr)}.pz-k2{grid-template-columns:repeat(2,1fr)}.pz-k2 .pz-key{font-size:30px}.pz-g5{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,1fr);border:2.5px solid var(--so-ink);aspect-ratio:1}.pz-g5 .pz-c:nth-child(5n){border-right:0}.pz-g5 .pz-c:nth-child(n+21){border-bottom:0}.pz-c.ct{border-top:2.5px solid var(--so-ink)}.pz-c.cl{border-left:2.5px solid var(--so-ink)}.pz-lab{position:absolute;left:4px;top:3px;display:inline-flex;align-items:center;gap:2px;font:800 12px/1 var(--so-ui);color:var(--so-ink);--i-fill:var(--so-exact);--i-line:var(--so-exact-ink)}.pz-lab.done{color:var(--so-exact-ink)}.pz-lab.bad{color:var(--so-miss);--i-line:var(--so-miss)}.pz-c.cagebad{background:var(--so-refused-wash)}.pz-fz{display:grid;grid-template-columns:1fr 22px 1fr 22px 1fr 22px 1fr 22px 1fr;grid-template-rows:1fr 22px 1fr 22px 1fr 22px 1fr 22px 1fr;aspect-ratio:1}.pz-c.fz{border:1.5px solid var(--so-cell-rule);border-radius:6px}.pz-c.fz,.pz-c.fz.g{font-size:24px}.pz-sg{display:grid;place-items:center;font:900 18px/1 var(--so-ui);color:var(--so-ink)}.pz-sg.bad{color:var(--so-miss)}.pz-sg.bad i{font-style:normal;width:22px;height:22px;display:grid;place-items:center;border:2px dashed var(--so-miss);border-radius:50%;background:var(--so-refused-wash)}.pz-g8{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);border:2.5px solid var(--so-ink);aspect-ratio:1}.pz-g8 .pz-c{font-size:21px}.pz-g8 .pz-c.g{font-size:22px}.pz-g8 .pz-c:nth-child(8n){border-right:0}.pz-g8 .pz-c:nth-child(n+57){border-bottom:0}.pz-g8 .pz-c.bb4{border-bottom:2px solid var(--so-ink-soft)}.pz-c.br4{border-right:2px solid var(--so-ink-soft)}.pz-c.dup{background:var(--so-refused-wash);color:var(--so-miss)}.pz-g8 .pz-c.t:after{bottom:9%;width:12px;margin-left:-6px}@media (min-width:700px){.pz-c.fz,.pz-c.fz.g,.pz-g5 .pz-c,.pz-g5 .pz-c.g{font-size:32px}.pz-g8 .pz-c,.pz-g8 .pz-c.g{font-size:27px}.pz-lab{font-size:14px}.pz-sg{font-size:22px}}@media (min-width:1024px){.pz-binary,.pz-cages,.pz-futoshiki{grid-template-columns:minmax(0,560px) minmax(0,1fr);-moz-column-gap:48px;column-gap:48px;align-items:start;grid-template-areas:"meta meta" "paper side" "paper keys" "paper acts" "paper note" "paper clear" "paper kbd" "paper ad" "paper .";grid-template-rows:auto auto auto auto auto auto auto auto 1fr}:is(.pz-cages,.pz-futoshiki,.pz-binary)>.so-meta{grid-area:meta}:is(.pz-cages,.pz-futoshiki,.pz-binary)>.pz-paper{grid-area:paper;padding:20px}:is(.pz-cages,.pz-futoshiki,.pz-binary)>.pz-side{grid-area:side;position:static;width:auto;height:auto;clip:auto;overflow:visible;white-space:normal;margin-top:8px}:is(.pz-cages,.pz-futoshiki,.pz-binary)>.pz-keys{grid-area:keys;margin-top:8px}:is(.pz-cages,.pz-futoshiki,.pz-binary)>.pz-acts{grid-area:acts}:is(.pz-cages,.pz-futoshiki,.pz-binary)>.pz-note{grid-area:note}:is(.pz-cages,.pz-futoshiki,.pz-binary)>.pz-clear{grid-area:clear}:is(.pz-cages,.pz-futoshiki,.pz-binary)>.so-kbd{grid-area:kbd;display:block}}.pz-bonus-h{margin:4px 0;font:800 12px/1.2 var(--so-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--so-ink-soft)}.pz-bonus ul{list-style:none;margin:0;padding:0}.pz-bonus-ln{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;min-height:44px;border-top:1.5px dashed var(--so-tape-rule);color:var(--so-ink);text-decoration:none;font:700 15px/1.2 var(--so-ui);--i-line:var(--so-ink-soft)}.pz-bonus li:first-child .pz-bonus-ln{border-top:0}.pz-bonus-st{display:inline-flex;align-items:center;gap:6px;font:800 13px/1 var(--so-ui)}.pz-bonus-st.prog,.pz-bonus-st.todo{color:var(--so-ink-soft);--i-line:var(--so-todo)}.pz-bonus-st.done{color:var(--so-exact-ink);--i-fill:var(--so-exact);--i-line:var(--so-exact-ink)}.pz-bonus-st.help{color:var(--so-close);--i-fill:var(--so-close);--i-line:var(--so-close)}.pz-bonus-paper{margin-top:8px;padding-bottom:8px}@media (min-width:1024px){.so-end>.so-endbonus{grid-area:bonus}.so-end{grid-template-areas:"meta meta" "head head" "roll globe" "roll cd" "roll bonus" "roll keys" "roll ad" "roll .";grid-template-rows:auto auto auto auto auto auto auto 1fr}.so-end>.so-adend{grid-area:ad}}.so-gm{position:fixed;left:0;right:0;bottom:0;z-index:30;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:var(--so-casing-deep);border-top:1px solid hsla(0,0%,100%,.07);box-shadow:0 -6px 16px rgba(0,0,0,.24)}.so-gm ul{list-style:none;margin:0 auto;padding:0;display:flex;gap:4px;max-width:680px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.so-gm ul::-webkit-scrollbar{display:none}.so-gm li{flex:1 0 auto}.so-gm-k{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:52px;height:52px;padding:0 5px;border-radius:10px;color:var(--so-on-casing-soft);text-decoration:none;font:800 11px/1 var(--so-ui);letter-spacing:-.01em;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:background .12s ease-out,transform 80ms ease-out}.so-gm-k.done{--i-fill:var(--so-exact);--i-line:#ffe7a6;color:var(--so-on-casing)}.so-gm-k.help{--i-fill:#9db8ff;--i-line:#9db8ff;color:var(--so-on-casing)}.so-gm-k.prog{--i-line:var(--so-on-casing-soft)}.so-gm-k.todo{--i-line:var(--so-todo-casing)}.so-gm-st{display:inline-flex}.so-gm-k[aria-current]{background:var(--so-select-wash);color:var(--so-key-ink);box-shadow:inset 0 0 0 2px var(--so-select)}.so-gm-k[aria-current].done{--i-line:var(--so-exact-ink)}.so-gm-k[aria-current].help{--i-fill:var(--so-close);--i-line:var(--so-close)}.so-gm-k[aria-current]:is(.todo,.prog){--i-line:var(--so-todo)}.so-gm-l{display:none}body.so-has-gm{padding-bottom:calc(64px + env(safe-area-inset-bottom))}html:has(body.so-has-gm){scroll-padding-bottom:calc(72px + env(safe-area-inset-bottom))}@media (min-width:700px){.so-gm-k{flex-direction:row;gap:7px;height:48px;padding:0 12px;font-size:13px}.so-gm-l{display:inline}.so-gm-s{display:none}body.so-has-gm{padding-bottom:calc(60px + env(safe-area-inset-bottom))}}@media (min-width:1024px){.so-gm{position:sticky;top:0;bottom:auto;padding:10px 32px 12px;background:var(--so-casing);border-top:0;border-bottom:1px solid var(--so-casing-deep);box-shadow:0 8px 14px -12px rgba(0,0,0,.5)}.so-gm ul{max-width:1096px;gap:8px;overflow:visible}.so-gm li{flex:0 0 auto}.so-gm-k{height:40px;padding:0 14px 0 11px;font-size:14px;background:var(--so-casing-deep);color:var(--so-on-casing);box-shadow:0 3px 0 #04211e,inset 0 1px 0 hsla(0,0%,100%,.08)}.so-gm-k:hover{background:#0b4943}.so-gm-k[aria-current]{background:var(--so-select-wash);color:var(--so-key-ink);box-shadow:0 0 0 3px var(--so-select),0 1px 0 #a87800;transform:translateY(2px)}body.so-has-gm{padding-bottom:0}html:has(body.so-has-gm){scroll-padding-bottom:0;scroll-padding-top:72px}}@media (prefers-reduced-motion:reduce){.so-gm-k{transition:none}}.so-nextgame{text-decoration:none}.so-nextgame-t{display:grid;gap:3px;text-align:left}.so-nextgame-t b{font:900 22px/1.1 var(--so-ui)}.so-nextgame-t small{font:800 13px/1.2 var(--so-ui);color:#4a3500}.pz-done .so-nextgame{min-height:72px}.so-endkeys .so-nextgame{margin-top:10px}.so-ad{margin:20px auto 0}.so-ad-strip{width:320px;max-width:100%;height:50px}.so-ad-side{display:none}.so-ad-rect{width:300px;height:250px}.so-ad[data-dev]{position:relative;outline:1.5px dashed rgba(242,245,243,.32);outline-offset:-1.5px;border-radius:4px}.so-ad[data-dev]:after{content:"pub · " attr(data-dev);position:absolute;inset:0;display:grid;place-items:center;font:800 11px/1 var(--so-ui);letter-spacing:.06em;text-transform:uppercase;color:rgba(242,245,243,.5)}@media (min-width:1024px){.so-ad-strip{width:728px;height:90px;margin-top:32px}.so-ad-side{display:block;grid-area:ad;width:300px;height:250px;margin:16px 0 0}}.so-foot{display:flex;justify-content:center;padding:8px 16px 28px}.so-alldle{display:inline-flex;border-radius:10px}.so-alldle img{display:block}