.app{--fs:30px;--lh:54px;--ku-max:52px;--col:min(1040px, calc(100vw - 160px));--kw:12.3;--ku:min(var(--ku-max), calc(var(--col) / var(--kw)));--kg:6px;--k-hj:.34;--k-lat:.22;--k-sh:.22;--slot:60px;grid-template-rows:auto auto 1fr auto;min-height:100vh;display:grid}.app.sent{--kw:12.7}@media (max-height:840px){.app{--fs:28px;--lh:50px;--ku-max:46px;--kg:5px}}@media (max-height:620px){.app{--fs:24px;--lh:44px;--ku-max:38px;--kg:4px;--slot:56px}}.sink{opacity:0;pointer-events:none;border:0;width:1px;height:1px;padding:0;position:fixed;top:0;left:0}.chrome{transition:opacity .3s}.app.typing .chrome{opacity:0;pointer-events:none}.app.typing .chrome:focus-within{opacity:1;pointer-events:auto}.app header{width:var(--col);justify-content:space-between;align-items:center;height:64px;margin:0 auto;padding-top:16px;display:flex;position:relative}.brand{-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:15px;font-weight:800;display:flex}.dot{background:var(--accent);border-radius:50%;width:7px;height:7px;transition:background .35s;animation:1.6s ease-in-out infinite breathe}.app.running .dot{background:var(--ink);animation-duration:.4s}@keyframes breathe{0%,to{transform:scale(.84)}50%{transform:scale(1)}}.pill{border:1px solid var(--hair);height:34px;color:var(--ink-soft);border-radius:999px;align-items:center;gap:7px;padding:0 14px 0 12px;font-size:14px;font-weight:500;display:inline-flex}.pill:hover,.pill[aria-expanded=true]{border-color:#1313124d}.pill svg{width:15px;height:15px}.how{z-index:5;border-radius:var(--radius);width:340px;box-shadow:var(--card-shadow), 0 0 0 1px var(--card-stroke);animation:rise .35s var(--spring) both;background:#fff;gap:10px;padding:14px 18px 16px;display:grid;position:absolute;top:66px;right:0}.how ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.how li{color:var(--ink-soft);grid-template-columns:18px 1fr;gap:6px;font-size:14px;line-height:1.45;display:grid}.how li>span:first-child{color:var(--ink-2s);font-size:12px;font-weight:700;line-height:20px}.how b{color:var(--ink);font-weight:600}.how .legal{border-top:1px solid var(--hair);color:var(--ink-2s);flex-wrap:wrap;align-items:center;gap:6px 12px;padding-top:10px;font-size:12.5px;display:flex}.how .legal a,.how .legal button{color:var(--ink-2s);text-underline-offset:2px;text-decoration:underline}.how .legal a:hover,.how .legal button:hover{color:var(--ink)}.config{justify-self:center;align-items:center;gap:16px;margin-top:10px;display:flex}.grp{align-items:center;gap:10px;display:flex}.seg{gap:6px;display:flex}.chip{background:var(--fill);height:34px;color:var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:15px;font-weight:500;display:inline-flex}.chip:hover{background:var(--fill-h)}.chip.on{background:var(--ink);color:#fff;font-weight:700}.tog{color:var(--ink-2s)}.tog[aria-pressed=true]{color:var(--ink)}.tog svg{opacity:0;width:0;height:13px;transition:width .22s var(--spring), margin .22s var(--spring), opacity .18s ease;flex:none;margin-left:0;margin-right:-6px;display:block}.tog[aria-pressed=true] svg{opacity:1;width:13px;margin-left:-2px;margin-right:0}.vr{background:var(--hair);width:1px;height:20px}.seg[data-text] .chip{padding:0 11px}.app footer{width:var(--col);color:var(--ink-2s);justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:0 0 22px;font-size:13px;display:flex}.app main{place-items:center;min-height:0;padding-bottom:3vh;display:grid}.app.show-result main{align-items:start;padding:44px 0 0}#test{width:var(--col);--kbo:1;flex-direction:column;align-items:center;display:flex}.stats{align-self:stretch;align-items:flex-end;gap:14px;height:34px;display:flex}.stats #clock{color:var(--accent);font-size:26px;font-weight:700;line-height:1;transition:opacity .25s}.stats #live{color:var(--ink-2s);padding-bottom:2px;font-size:14px;font-weight:500}.app:not(.running) .stats #clock,.app:not(.running) .stats #live{opacity:0}.viewport{height:calc(var(--lh) * 3);align-self:stretch;margin-top:8px;position:relative;overflow:hidden}.inner{transition:transform .32s var(--spring);will-change:transform;position:relative}#words{font-family:var(--font-ko);font-size:var(--fs);color:var(--ink-2);word-break:keep-all;-webkit-user-select:none;user-select:none;flex-wrap:wrap;font-weight:500;display:flex}.w{height:var(--lh);white-space:nowrap;align-items:center;margin-right:.58em;display:flex;position:relative}.c{border-radius:4px 4px 0 0;line-height:1.3;transition:color 80ms,background .12s;display:inline-block}.c.ok{color:var(--ink)}.c.pend{color:var(--accent)}.c.bad{color:var(--bad-ink);background:var(--bad-16);box-shadow:inset 0 -2px var(--bad)}.w.err .c:not(.bad){box-shadow:inset 0 -2px #ff3b3099}.c[data-ghost]{color:#0000;transition:none}.c[data-typed]{color:#0000;position:relative}.c[data-typed]:after{content:attr(data-typed);text-align:center;color:var(--accent);position:absolute;top:0;left:0;right:0}.c.bad[data-typed]:after{color:var(--bad-ink)}#ghost{visibility:hidden;font-family:var(--font-ko);font-size:var(--fs);text-align:center;color:var(--accent);pointer-events:none;font-weight:500;line-height:1.3;position:absolute;top:0;left:0}#ghost.on{visibility:visible}#ghost.bad{color:var(--bad-ink)}#ghost b{font-weight:inherit}#ghost i{color:var(--ink-2s);font-size:max(11px,.44em);font-style:normal;font-weight:600;line-height:1;position:absolute;top:-.64em;left:0;right:0}#preload{font-family:var(--font-ko);font-weight:500}.x{color:var(--bad-ink);line-height:1.3}.app.away #words,.app.away #caret,.app.away #ghost{opacity:.4;transition:opacity .3s}.x:not(:empty){border-radius:4px 4px 0 0;box-shadow:inset 0 -2px #ff3b3059}#caret{width:2.5px;height:calc(var(--fs) * 1.16);background:var(--accent);pointer-events:none;transition:transform .1s var(--spring);border-radius:2px;position:absolute;top:0;left:0}.app:not(.running) #caret{animation:1s ease-in-out infinite caret}@keyframes caret{0%,to{opacity:1}50%{opacity:0}}#hint{height:var(--slot);justify-content:center;align-self:stretch;align-items:flex-start;padding-top:4px;display:flex;position:relative}.tip{background:var(--ink);color:#fff;white-space:nowrap;animation:tip-in .35s var(--spring) both;border-radius:12px;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:500;line-height:1.35;display:inline-flex;position:absolute;bottom:10px;left:50%;translate:-50%;box-shadow:0 10px 30px #0000002e}.tip:after{content:"";left:var(--ax,50%);background:var(--ink);border-radius:2px;width:12px;height:12px;margin-left:-6px;position:absolute;bottom:-6px;transform:rotate(45deg)}.tip.flat{text-align:center;max-width:100%;min-height:44px;line-height:24px;display:block;position:static;translate:none}.tip.flat .kc{margin:0 3px}.tip.flat:after{display:none}.tip .kc{box-shadow:none;color:#fff;background:#ffffff29}.tip .kc i{color:#ffffffb8}.fix{height:44px;box-shadow:var(--card-shadow), 0 0 0 1px var(--card-stroke);white-space:nowrap;animation:tip-in .3s var(--spring) both;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:0 7px 0 16px;font-size:15px;font-weight:500;display:inline-flex}.fix .sdot{background:var(--bad);margin-right:2px}.fix .what{color:var(--ink-2s);line-height:26px;display:inline-block}.fix .what .kc,.note .kc{margin:0 3px 0 5px}.fix .what b.wd{font-family:var(--font-ko);color:var(--ink);margin-right:8px;font-size:16px;font-weight:700}.fix .sep{background:var(--hair);width:1px;height:20px;margin:0 4px}.fix.slip{padding-right:16px}.note{color:var(--ink-2s);white-space:nowrap;animation:tip-in .3s var(--spring) both;margin-top:9px;font-size:15px;line-height:26px;display:inline-block}.note .idot{background:var(--accent);vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:9px;display:inline-block}.note b{font-family:var(--font-ko);color:var(--ink);font-weight:700}.gloss{color:var(--ink-2s);white-space:nowrap;margin-top:9px;font-size:15px;line-height:26px}.gloss b{font-family:var(--font-ko);color:var(--ink-soft);margin-right:8px;font-weight:600}.gloss.s{min-width:0;max-width:min(100%, calc(var(--ku) * var(--kw)));display:flex}.gloss.s .m{text-overflow:ellipsis;min-width:0;overflow:hidden}.gloss .by{color:var(--ink-2s);flex:none;font-size:13px}.gloss .by:before{content:"";vertical-align:-2px;background:var(--hair);width:1px;height:14px;margin:0 10px 0 12px;display:inline-block}.gloss .by i{font-style:italic}#hint.clr{--clr:calc((var(--col) - var(--ku) * var(--kw)) / 2 + var(--ku) * 1.05 - var(--kg) + 8.5px);grid-template-columns:minmax(var(--clr), 1fr) auto 1fr;place-items:start;display:grid}#hint.clr>:not(.tip),#hint.clr>.tip.flat{grid-column:2}#hint.clr>.gloss.s{max-width:calc(var(--ku) * (var(--kw) - 1.05) + var(--kg) - 8.5px)}@keyframes tip-in{0%{opacity:0;transform:translateY(6px)}}.kc{height:26px;box-shadow:inset 0 0 0 1px var(--hair);font-family:var(--font-ko);color:var(--ink);vertical-align:middle;background:#fff;border-radius:8px;align-items:center;gap:5px;padding:0 8px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.kc b{font-size:15px;font-weight:600}.kc i{color:var(--ink-2s);letter-spacing:.04em;font-size:12px;font-style:normal;font-weight:700}.kc.bad b{color:var(--bad-ink)}.kc.ink{background:var(--ink);color:#fff;box-shadow:none}.kc.ink i{color:#ffffffbf}.kc small{color:var(--ink-2s);margin-left:1px;font-size:12px;font-weight:600}#keymap{font-family:var(--font-ko);-webkit-user-select:none;user-select:none;height:calc(var(--ku) * 3 + var(--ku) * .7);width:calc(var(--ku) * var(--kw));transition:opacity .22s var(--spring), visibility 0s;position:relative}.app.km-off #keymap{opacity:0;visibility:hidden;transition:opacity .14s,visibility 0s .14s}.app.boot #keymap,.app.boot .tog,.app.boot .tog svg{transition:none}.k{width:calc(var(--ku) - var(--kg));height:calc(var(--ku) - var(--kg));background:var(--fill);transition:opacity .3s ease, background .12s, color .12s, transform .28s var(--pop);border-radius:10px;position:absolute}.k:not(.next){opacity:var(--kbo)}#keymap:hover .k{opacity:1}.k .lat{left:calc(var(--ku) * .15);top:calc(var(--ku) * .12);font-size:calc(var(--ku) * var(--k-lat));color:var(--ink-2s);font-weight:700;line-height:1;position:absolute}.k .hj,.k .sh2{padding-top:calc(var(--ku) * .18);font-size:calc(var(--ku) * var(--k-hj));color:var(--ink);place-items:center;font-weight:500;line-height:1;display:grid;position:absolute;inset:0}.k .sh2{display:none}.k .sh{right:calc(var(--ku) * .15);top:calc(var(--ku) * .12);font-size:calc(var(--ku) * var(--k-sh));color:var(--ink-2s);font-weight:500;line-height:1;position:absolute}.k .ico{color:var(--ink-2s);place-items:center;display:grid;position:absolute;inset:0}.k .ico svg{width:calc(var(--ku) * .36);height:calc(var(--ku) * .36)}.k.home:after{content:"";background:var(--ink-3);border-radius:1px;width:10px;height:2px;margin-left:-5px;position:absolute;bottom:6px;left:50%}.k.next,.k.next.hit,.k.next.miss{background:var(--ink);opacity:1;transition:opacity 0s, background .12s, transform .28s var(--pop);transform:translateY(-2px)}.k.next .hj,.k.next .lat,.k.next .sh,.k.next .ico,.k.next .sh2{color:#fff}.k.next.home:after{background:#ffffff80}.k.next.shift .hj,.k.next.shift .sh{display:none}.k.next.shift .sh2{font-weight:700;display:grid}.k.pk .hj,.k.pk .sh2{font-family:var(--font);font-size:calc(var(--ku) * .44);padding-top:0;font-weight:600}.k.pk .sh{font-family:var(--font);font-weight:600;font-size:calc(var(--ku) * .24)}.k.pk .lat{display:none}.k.pk.next.shift .lat{display:block}.k.pk.next.shift .sh2{padding-top:calc(var(--ku) * .14)}.k.stub{z-index:1}.k.stub:not(.need){visibility:hidden}.k.hit{background:var(--fill-2)}.k.miss{background:var(--bad-16)}.kbnote{height:48px;color:var(--ink-2s);align-items:center;gap:8px;font-size:14px;display:none}.kbnote svg{width:16px;height:16px}.below{justify-content:center;align-items:center;height:44px;margin-top:8px;display:flex}.ghost{height:36px;color:var(--ink-2s);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.ghost:hover{background:var(--fill);color:var(--ink)}.ghost svg{width:14px;height:14px}#restart{white-space:nowrap;width:36px;transition:width .25s var(--spring), background .2s, color .2s;justify-content:flex-start;padding:0;overflow:hidden}#restart svg{flex:none;margin-left:11px}#restart .lbl,#restart kbd{display:none}#restart.armed{background:var(--ink);color:#fff;outline:2px solid var(--accent);outline-offset:2px;padding:0 8px 0 0}#restart.armed .lbl{display:inline}#restart.armed kbd{color:#ffffffd9;background:#ffffff29;height:20px;display:inline-flex}#result{width:var(--col);gap:22px;display:grid}#result>*{animation:rise .5s var(--spring) both}#result>:nth-child(3){animation-delay:55ms}#result>:nth-child(4){animation-delay:.11s}#result>:nth-child(5){animation-delay:.165s}@keyframes rise{0%{opacity:0;transform:translateY(10px)scale(.98)}}.app.show-result footer{display:none}.r-top{grid-template-columns:250px 1fr;align-items:stretch;gap:32px;display:grid}.status{align-items:center;height:20px;display:flex}.status.good .caps{color:var(--good-ink)}.big .lbl{margin-top:18px}.big .val{letter-spacing:-.03em;margin-top:6px;font-size:76px;font-weight:700;line-height:1}.big .val.acc{font-size:52px}.big .val small{letter-spacing:0;color:var(--ink-2s);margin-left:3px;font-size:.42em;font-weight:600}.big .help{color:var(--ink-2s);margin-top:8px;font-size:13px;line-height:1.4}.big .help b{color:var(--ink);font-weight:600}.chartbox{grid-template-rows:auto 1fr;gap:8px;min-width:0;display:grid}.chartbox .axes{justify-content:space-between;align-items:center;display:flex}.chartbox .legend{color:var(--ink-2s);gap:16px;font-size:12px;display:flex}.chartbox .legend span{align-items:center;gap:6px;display:inline-flex}.chartbox .legend i{background:var(--accent);border-radius:2px;width:14px;height:2.5px}.chartbox .legend i.raw{background:var(--ink-3)}.chartbox .legend i.err{background:var(--bad);border-radius:50%;width:7px;height:7px}#chart{width:100%;height:232px}.r-row{border-top:1px solid var(--hair);grid-template-columns:repeat(5,1fr);gap:0;padding-top:14px;display:grid}.r-row .it{padding-right:16px}.r-row .it+.it{border-left:1px solid var(--hair);padding-left:16px}.r-row .v{white-space:nowrap;margin-top:6px;font-size:24px;font-weight:700;line-height:1.15}.r-row .v small{color:var(--ink-2s);margin-left:2px;font-size:13px;font-weight:600}.r-row .h{color:var(--ink-2s);margin-top:3px;font-size:12.5px;line-height:1.35}.r-bottom{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.card{border-radius:var(--radius);box-shadow:var(--card-shadow), 0 0 0 1px var(--card-stroke);background:#fff;flex:0 auto;gap:10px;min-width:440px;max-width:720px;padding:14px 16px 16px;display:grid}.card .head{color:var(--ink-2s);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.card .head .pos{color:var(--ink-2s);margin-left:auto;font-size:12px;font-weight:500}.sdot{background:var(--bad);border-radius:50%;flex:none;width:9px;height:9px}.sdot.maybe{background:var(--maybe)}.sdot.good{background:var(--good)}.mrows{display:grid}.mr{grid-template-columns:auto minmax(64px,1fr) auto;align-items:center;gap:14px;padding:8px 0;display:grid}.mr+.mr{border-top:1px solid var(--hair)}.mr .diff{font-family:var(--font-ko);white-space:nowrap;align-items:center;gap:7px;font-size:19px;font-weight:600;line-height:1.3;display:flex}.mr .diff s{color:var(--ink-2s);-webkit-text-decoration-color:var(--bad);text-decoration-color:var(--bad);text-decoration-thickness:2px}.mr .diff .arr{color:var(--ink-3);font-weight:500}.mr .diff b{color:var(--good-ink);font-weight:700}.mr .en{color:var(--ink-2s);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.mr .why{color:var(--ink-2s);white-space:nowrap;align-items:center;gap:5px;font-size:13px;display:flex}.mr .why .kc,.foot .kc{height:24px;padding:0 7px;font-size:12px}.mr .why .kc b,.foot .kc b{font-size:14px}.mr .why .kc i,.foot .kc i{font-size:11px}.card .foot{border-top:1px solid var(--hair);align-items:center;gap:8px;padding-top:10px;display:flex}.card .foot .caps{margin-right:4px}.card .more{color:var(--ink-2s);padding:2px 0 0;font-size:12px}.fchip{background:var(--fill);height:32px;color:var(--ink);border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.fchip:hover{background:var(--fill-2)}.fchip svg{width:12px;height:12px}.clean{color:var(--ink-2s);font-size:14px}.r-actions{flex:none;align-items:center;gap:10px;display:flex}.primary{background:var(--ink);color:#fff;border-radius:999px;justify-content:center;align-items:center;gap:10px;height:44px;padding:0 10px 0 22px;font-size:15px;font-weight:800;display:inline-flex}.primary kbd{color:#ffffffd9;background:#ffffff29;height:22px}.r-actions .ghost{height:44px;padding:0 14px;font-size:15px}@media (max-height:840px){#chart{height:190px}.big .val{font-size:64px}.big .val.acc{font-size:44px}.big .lbl{margin-top:12px}#result{gap:16px}.app.show-result main{padding-top:28px}.mr{padding:6px 0}}@media (max-height:760px){.app header{height:56px;padding-top:12px}#chart{height:150px}.big .val{font-size:52px}.big .val.acc{font-size:38px}.big .lbl{margin-top:8px}#result{gap:10px}.app.show-result main{padding-top:16px}.mr{padding:5px 0}.card .foot{padding-top:8px}}@media (max-height:620px){.app header{height:52px;padding-top:8px}.app footer{display:none}}@media (max-height:540px){.app header{height:44px;padding-top:4px}.config{margin-top:6px}.stats{height:26px}.viewport{margin-top:4px}.app main{padding-bottom:0}}@media (hover:none) and (pointer:coarse){.app:not(.haskb) #keymap,.app:not(.haskb) #tKeymap{display:none}.app:not(.haskb) .kbnote{display:flex}}@media (max-width:599px){#keymap,#tKeymap{display:none}}@media (max-width:899px){.app{--col:calc(100vw - 32px);--fs:24px;--lh:44px}.app header{height:56px}.config{width:var(--col);flex-wrap:wrap;justify-content:center;gap:8px 12px}.vr{display:none}.fix{white-space:normal;border-radius:18px;flex-wrap:wrap;height:auto;min-height:44px;padding:8px 14px}.tip.flat{white-space:normal}.r-top{grid-template-columns:1fr}.r-row{grid-template-columns:repeat(2,1fr);row-gap:14px}.r-row .it:nth-child(odd){border-left:0;padding-left:0}.r-bottom{flex-direction:column;align-items:stretch}}
.r-actions #bShare svg{width:15px;height:15px}.r-actions #bShare{gap:8px;padding:0 22px 0 18px}.r-actions .ghost:hover kbd{background:var(--fill-2)}@media (min-width:900px){.r-actions{max-width:calc(var(--col) - 472px);flex-wrap:wrap;justify-content:flex-end;row-gap:8px}}.sheet{border-radius:var(--radius);width:min(560px,100vw - 32px);max-height:calc(100vh - 32px);color:var(--ink);box-shadow:0 24px 64px #00000029, 0 0 0 1px var(--card-stroke);overscroll-behavior:contain;background:#fff;border:0;margin:auto;padding:0;overflow:auto}.sheet[open]{animation:sheet-in .42s var(--spring) both}.sheet::backdrop{background:#00000040;animation:.3s both scrim-in}@keyframes sheet-in{0%{opacity:0;transform:translateY(18px)scale(.985)}}@keyframes scrim-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.sheet::backdrop{animation:none}}.sheet .in{gap:14px;padding:20px 24px 22px;display:grid}.sheet .top{justify-content:space-between;align-items:center;gap:12px;display:flex}.sheet h2{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:800;line-height:1.2}.sheet .shx{height:30px;color:var(--ink-2s);border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 4px;font-size:13px;display:inline-flex}.sheet .shx:hover{background:var(--fill);color:var(--ink)}.sheet .shx kbd{height:20px}.sheet .cols{gap:14px;display:grid}.sheet .col{align-content:start;gap:10px;min-width:0;display:grid}.sheet .col+.col{border-top:1px solid var(--hair);padding-top:14px}.see{background:var(--fill);border-radius:14px;gap:4px;padding:10px 14px 11px;display:grid}.see .line{color:var(--ink-2s);font-size:15px;font-weight:500}.see .line b{color:var(--ink);font-weight:600}.see .wds{font-family:var(--font-ko);color:var(--ink-2s);white-space:nowrap;text-overflow:ellipsis;word-spacing:.3em;font-size:17px;font-weight:500;overflow:hidden}.see .wds b{color:var(--ink);font-weight:500}.sheet .cap{color:var(--ink-2s);margin:-2px 0 0;font-size:13px;line-height:1.4}.sheet .url{height:36px;box-shadow:inset 0 0 0 1px var(--hair);color:var(--ink-2s);white-space:nowrap;border-radius:10px;align-items:center;gap:8px;padding:0 12px;font-size:13px;display:flex;overflow:hidden}.sheet .url svg{flex:none;width:14px;height:14px}.sheet .url span{text-overflow:ellipsis;overflow:hidden}.sheet .url b{color:var(--ink);font-weight:600}.srow{grid-template-columns:64px 1fr;align-items:start;gap:10px;display:grid}.srow>.caps{align-items:center;height:32px;display:flex}.srow:has(.lead)>.caps{height:36px}.srow .chips{flex-wrap:wrap;gap:6px;display:flex}.schip{background:var(--fill);height:32px;color:var(--ink);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.schip:hover{background:var(--fill-2)}.schip svg{flex:none;width:13px;height:13px}.schip .ext{width:10px;height:10px;color:var(--ink-2s);margin-left:-2px}.schip.lead{height:36px;box-shadow:inset 0 0 0 1.5px var(--ink);background:#fff;padding:0 14px;font-size:14px}.schip.lead:hover{background:var(--fill)}.schip.done{color:var(--good-ink)}.sheet .manual{gap:6px;display:grid}.sheet .manual textarea{resize:none;width:100%;box-shadow:inset 0 0 0 1px var(--accent);font:500 12.5px/1.45 var(--font);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all;background:#fff;border:0;border-radius:10px;padding:8px 10px}.sheet .manual textarea:focus{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.sheet .manual span{color:var(--ink-2s);font-size:12px}.sheet .pv{aspect-ratio:1200/630;background:var(--fill);width:100%;box-shadow:0 0 0 1px var(--hair);border-radius:12px;display:block;overflow:hidden}.sheet .pv img{width:100%;height:100%;display:block}.sheet .pv img:not([src]){visibility:hidden}.sheet .desc{color:var(--ink-2s);margin:0;font-size:12.5px}@media (max-height:880px) and (min-width:1000px){.sheet{width:min(1040px,100vw - 48px)}.sheet .cols{grid-template-columns:minmax(0,1fr) minmax(480px,1fr);column-gap:28px}.sheet .col+.col{border-top:0;padding-top:0}}.stats{position:relative}#chal{color:var(--ink-2s);white-space:nowrap;font-size:15px;font-weight:500;transition:opacity .25s;position:absolute;bottom:2px;left:0}#chal b{color:var(--ink);font-weight:600}.app.running #chal{opacity:0}.chartbox .legend i.tgt{border-top:2px dashed var(--ink-2s);background:0 0;border-radius:0;height:0}
#field,#panel,.app.game .stats,.app.game .viewport,.app.game .config .len,.config .lvl{display:none}.app.game .config .grp.lvl{display:flex}.app.game .config .vr.lvl{display:block}.step .chip{width:34px;padding:0;font-size:18px;line-height:1}.step .lvv{font-variant-numeric:tabular-nums;width:auto;min-width:42px;padding:0 12px;font-size:15px}.step .chip[aria-disabled=true]{opacity:.35;pointer-events:none}@media (max-width:899px){.app.game .config .vr.lvl{display:none}}.app.game.km-off #keymap{display:none}.app.game:not(.show-result) main{align-items:stretch}.app.game #test>*{flex-shrink:0}.app.game #field{flex:1 1 0;display:block}.app.game #panel{display:grid}.app.game{--ku-max:36px;--kg:4px;--k-hj:.4;--k-lat:.25;--k-sh:.25}.app.game .k{border-radius:8px}.app.game .k .lat{left:calc(var(--ku) * .1);top:calc(var(--ku) * .07)}.app.game .k .sh{right:calc(var(--ku) * .1);top:calc(var(--ku) * .07)}.app.game .k .hj,.app.game .k .sh2{padding-top:calc(var(--ku) * .26)}.app.game .k.home:after{bottom:2px}@media (max-height:840px){.app.game{--ku-max:32px;--kg:4px}}@media (max-height:620px){.app.game{--ku-max:30px;--kg:3px}}#field{border-top:8px solid var(--fill);border-radius:var(--radius);background:var(--fill);min-height:160px;font-family:var(--font-ko);-webkit-user-select:none;user-select:none;align-self:stretch;margin-top:8px;position:relative;overflow:hidden}#gFlash{left:var(--radius);right:var(--radius);z-index:1;background:var(--bad);opacity:0;border-radius:1px;height:2px;position:absolute;bottom:0}.drop{left:calc(16px + var(--x) * (100% - 32px));translate:calc(var(--x) * -100%) 0;font-size:calc(var(--fs) - 4px);color:var(--ink-2s);white-space:nowrap;will-change:transform;font-weight:500;line-height:1.3;position:absolute;top:0}.drop .s.ink{color:var(--ink)}.drop.tgt:after{content:"";background:var(--accent);border-radius:1px;height:2px;position:absolute;bottom:-2px;left:0;right:0}#gToast{z-index:2;background:var(--ink);color:#fff;font-family:var(--font);white-space:nowrap;opacity:0;pointer-events:none;border-radius:12px;padding:8px 14px;font-size:15px;font-weight:700;position:absolute;top:38%;left:50%;translate:-50% -50%;box-shadow:0 10px 30px #0000002e}#gToast.on{opacity:1}#gStart{font-family:var(--font);color:var(--ink-2s);white-space:nowrap;pointer-events:none;align-items:center;gap:8px;font-size:15px;font-weight:500;display:flex;position:absolute;top:calc(50% - 4px);left:50%;translate:-50% -50%}#gStart kbd,.app.game .tip kbd{background:var(--paper)}.app.game .tip.flat kbd{margin:0 3px}.app.away #field{opacity:.4;transition:opacity .3s}@media (forced-colors:active){#field{border-top-color:canvas}}#panel{border-radius:var(--radius);background:var(--fill);grid-template-rows:40px 6px;grid-template-columns:1fr minmax(0,360px) 1fr;align-self:stretch;align-items:center;gap:10px 16px;margin-top:10px;padding:10px 14px 12px}#panel .score{justify-self:start;align-items:baseline;gap:10px;display:flex}#panel .level{justify-self:end}#panel b{color:var(--ink);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;line-height:1}#gBox{background:var(--paper);height:40px;box-shadow:inset 0 0 0 1px var(--hair);font-family:var(--font-ko);color:var(--ink);white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;gap:2px;padding:0 14px;font-size:22px;font-weight:600;display:flex;overflow:hidden}#gBox i{background:var(--accent);border-radius:1px;flex:none;width:2px;height:24px;animation:1s ease-in-out infinite caret}.app.running #gBox i{animation:none}#gBox.off{color:var(--bad-ink)}#gLives{grid-column:1/-1;grid-template-columns:repeat(5,1fr);gap:6px;height:6px;display:grid}#gLives i{background:var(--hair);border-radius:3px;transition:background .3s}#gLives i.on{background:var(--accent)}.gloss.go{align-items:center;display:inline-flex}.gloss.go .sep{background:var(--hair);width:1px;height:20px;margin:0 12px 0 4px}.gloss.go .or{margin:0 6px;font-size:13px}@media (max-height:540px){#field{margin-top:4px}}#gresult{width:var(--col);gap:22px;display:grid}#gresult>*{animation:rise .5s var(--spring) both}#gresult>:nth-child(2){animation-delay:55ms}#gresult>:nth-child(3){animation-delay:.11s}.g-top{grid-template-columns:250px 1fr;align-items:start;gap:32px;display:grid}.gname{color:var(--ink);margin:0;font-size:15px;font-weight:800;line-height:20px}.g-top .status{margin-top:10px}#gresult .card{min-width:0;max-width:none}.lws{flex-wrap:wrap;gap:8px;display:flex}.lw{background:var(--fill);height:34px;color:var(--ink-2s);border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:13px;display:inline-flex}.lw b{font-family:var(--font-ko);color:var(--ink);font-size:17px;font-weight:600}.r-row.g4{grid-template-columns:repeat(4,1fr)}#gresult .g-actions{justify-content:flex-end;justify-self:end;max-width:none}@media (max-height:760px){#gresult{gap:12px}}@media (max-width:899px){.g-top{grid-template-columns:1fr}.r-row.g4{grid-template-columns:repeat(2,1fr)}}#gStart{animation:tip-in .22s var(--spring) both}.drop{animation:.18s ease-out both drop-in}@keyframes drop-in{0%{opacity:0}}
