*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#111;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,sans-serif;color:#fff;user-select:none}#c{position:fixed;inset:0;width:100%;height:100%;display:block}.hidden{display:none!important}kbd{background:#333;border:1px solid #666;border-radius:4px;padding:0 6px;font-family:monospace}#hud{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:flex-start;padding:18px 26px;pointer-events:none;text-shadow:0 2px 6px rgba(0,0,0,.6)}.hud-left{min-width:0;flex:0 1 auto;max-width:44%}.hud-left #stage-no,.hud-left #stage-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud-left #stage-no{font-size:15px;letter-spacing:.05em;opacity:.8;font-weight:700}.hud-left #stage-name{font-size:26px;font-weight:900}.hud-center{width:42%;max-width:560px}.hp-label{font-size:13px;letter-spacing:.15em;font-weight:700;margin-bottom:4px;display:flex;justify-content:space-between}.hp-bar{height:16px;background:#00000073;border:2px solid rgba(255,255,255,.7);border-radius:4px;overflow:hidden}#hp-fill{height:100%;width:0%;background:linear-gradient(90deg,#35d07f,#a6ff5b);transition:width .25s ease-out}#hp-fill.warn{background:linear-gradient(90deg,#f0a030,#ffd35b)}#hp-fill.crit{background:linear-gradient(90deg,#e03030,#ff6b5b)}.hud-right{text-align:right}#hud-btns{display:flex;gap:6px;justify-content:flex-end;margin:0 0 6px;pointer-events:auto}#hud-btns button{width:32px;height:32px;padding:0;border-radius:8px;cursor:pointer;font-size:15px;line-height:1;color:#fff;background:#0a0c1499;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(4px);-webkit-tap-highlight-color:transparent}#hud-btns button:active{background:#ffd35b40}.hud-right .time{font-size:34px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1}.hud-right .time.warn{color:#ffb020}.hud-right .time.crit{color:#ff5b5b;animation:pulse .5s infinite alternate}#time-label{font-size:16px;margin-right:8px;opacity:.8;vertical-align:middle}.hud-right .time small{font-size:14px;margin-left:2px}.hud-right .score{font-size:14px;letter-spacing:.1em;font-weight:700;margin-top:4px}#combo{font-size:22px;font-weight:900;color:#ffd35b;margin-top:4px;min-height:26px;white-space:nowrap}#feed{font-size:17px;font-weight:900;color:#ffe27a;min-height:22px;line-height:22px;margin-top:2px;white-space:nowrap;opacity:0;text-shadow:0 2px 4px #000,0 0 10px rgba(255,120,0,.6);font-variant-numeric:tabular-nums;transition:opacity .5s}#feed.show{opacity:1;transition:none}#feed.show.fade{opacity:0;transition:opacity .5s}#score{display:inline-block;transform-origin:right center}#combo{transform-origin:right center}#combo-bar{height:4px;margin:2px 0 0 auto;width:84px;border-radius:2px;background:#ffffff2e;overflow:hidden;opacity:0;transition:opacity .2s}#combo-bar.on{opacity:1}#combo-bar i{display:block;height:100%;width:100%;border-radius:2px;background:linear-gradient(90deg,#ff9a3d,#ffd35b);transform-origin:right center}#status{position:fixed;top:13%;left:0;right:0;text-align:center;font-size:min(40px,7.5vw);font-weight:900;letter-spacing:.1em;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.7),0 0 24px rgba(0,0,0,.5);pointer-events:none;animation:pulse .5s infinite alternate;white-space:nowrap;overflow:hidden;padding:0 12px}#status.good{color:#ffd35b;text-shadow:0 2px 8px rgba(0,0,0,.7),0 0 24px rgba(255,170,0,.8)}#status.bad{color:#ff5b5b;text-shadow:0 2px 8px rgba(0,0,0,.7),0 0 24px rgba(255,40,40,.8)}@keyframes pulse{0%{transform:scale(1)}to{transform:scale(1.06)}}.wp{position:fixed;left:0;top:0;max-width:46vw;padding:4px 14px 6px;background:#0a0c14b8;border:2px solid rgba(255,255,255,.35);border-radius:10px;text-align:center;white-space:nowrap;backdrop-filter:blur(6px);box-shadow:0 10px 40px #00000080;transition:transform .1s;pointer-events:none;opacity:.8}.wp.miss{border-color:#ff4040;background:#5a0a0acc;transform:translate(6px)}.wp .wk{font-size:24px;font-weight:900;line-height:1.25;color:#fff}.wp.bonus{border-color:#5be0ff;background:#042234cc;box-shadow:0 0 26px #5be0ff80,0 10px 40px #00000080;opacity:1}.wp.bonus .bt{font-size:13px;font-weight:900;letter-spacing:.08em;color:#5be0ff}.wp.bonus .wk{color:#eaffff}#enemy-words{position:fixed;inset:0;pointer-events:none;overflow:hidden}.eword{position:absolute;transform:translate(-50%,-100%);padding:2px 10px 3px;background:#0a0c14a8;border:2px solid rgba(255,255,255,.3);border-radius:8px;white-space:nowrap;font-size:19px;font-weight:900;line-height:1.25;color:#fff}.eword.miss{border-color:#ff4040}#popups{position:fixed;inset:0;pointer-events:none;overflow:hidden}.popup{position:absolute;transform:translate(-50%,-50%);width:max-content;max-width:min(92vw,560px);text-align:center;white-space:pre-line;line-height:1.05;font-size:30px;font-weight:900;color:#ffe27a;text-shadow:0 2px 4px #000,0 0 12px rgba(255,120,0,.8);animation:rise 1.2s ease-out forwards}.popup.big{font-size:42px;color:#ff9a3d;animation-duration:1.9s}.popup.crit{font-size:52px;color:#ff3d3d;animation-duration:1.9s}@keyframes rise{0%{opacity:0;margin-top:10px;transform:translate(-50%,-50%) scale(.6)}12%{opacity:1;margin-top:0;transform:translate(-50%,-50%) scale(1.12)}22%{transform:translate(-50%,-50%) scale(1)}60%{opacity:1;margin-top:-24px;animation-timing-function:ease-in}to{opacity:0;margin-top:-90px;transform:translate(-50%,-50%) scale(1)}}#paused{position:fixed;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;background:#0009;backdrop-filter:blur(3px);text-align:center}#paused b{display:block;font-size:40px;font-weight:900;letter-spacing:.1em}#paused small{display:block;margin-top:10px;font-size:16px;opacity:.8}#paused button{margin-top:26px;padding:12px 24px;font:inherit;font-size:17px;font-weight:900;color:#fff;background:#ffffff1f;border:2px solid rgba(255,255,255,.5);border-radius:12px;cursor:pointer}#paused button[data-armed]{color:#ffd35b;border-color:#ffd35b;background:#ffd35b24}#nogl{position:fixed;inset:0;z-index:9;display:flex;align-items:center;justify-content:center;background:#111;padding:24px;text-align:center}#nogl b{display:block;font-size:26px;font-weight:900;margin-bottom:12px;color:#ffd35b}#nogl p{font-size:15px;line-height:1.8;max-width:520px;margin:0 auto;opacity:.9}#overlay{position:fixed;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0000008c;text-align:center;padding:20px}#overlay h1{font-size:66px;margin:0;line-height:1;letter-spacing:.04em;font-weight:900;text-shadow:0 6px 0 #c0391b,0 12px 30px rgba(0,0,0,.6)}#overlay h1 span{color:#ffd35b;display:block;font-size:56px}#overlay h2{font-size:46px;margin:8px 0;font-weight:900}#overlay .press{margin-top:14px;font-size:22px;font-weight:700;color:#ffd35b;animation:blink 1.2s infinite}@keyframes blink{50%{opacity:.3}}#overlay .stage-label{font-size:20px;letter-spacing:.4em;font-weight:900;color:#ffd35b;margin:0}#overlay .sub{font-size:18px;opacity:.8;letter-spacing:.1em}.stats{margin:18px auto;border-collapse:collapse;font-size:20px;min-width:360px}.stats td{padding:6px 18px}.stats td:first-child{text-align:left;opacity:.85}.stats td:last-child{text-align:right;font-weight:900;font-variant-numeric:tabular-nums}.stats tr.sep td{border-top:1px solid rgba(255,255,255,.35);padding-top:12px}#overlay .hint{font-size:15px;opacity:.9;line-height:1.8}#overlay .hint b{color:#ffb020}#overlay .ops{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:16px 0 4px}#overlay .op{width:120px;padding:10px 8px;border-radius:12px;cursor:pointer;text-align:center;color:#fff;font-family:inherit;background:#ffffff14;border:2px solid rgba(255,255,255,.3);display:flex;flex-direction:column;align-items:center;gap:2px;opacity:.55}#overlay .op.sel{background:#ffd35b29;border-color:#ffd35b;box-shadow:0 0 24px #ffd35b59;opacity:1}#overlay .op .osign{font-size:30px;font-weight:900;line-height:1.1}#overlay .op.sel .osign{color:#ffd35b}#overlay .op .oname{font-size:14px;font-weight:700}#overlay .opsnote{font-size:13px;opacity:.8;margin:8px 0 0}#overlay .opsnote b{color:#ffb020}#overlay .opsnote.warn{opacity:1;color:#ff9a3d}#overlay .modes{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:12px 0 0}#overlay .mode{padding:7px 18px;border-radius:999px;cursor:pointer;color:#fff;font:700 15px/1 inherit;background:#ffffff14;border:2px solid rgba(255,255,255,.3)}#overlay .mode.sel{background:#ffd35b29;border-color:#ffd35b;color:#ffd35b}#overlay .modes small{flex-basis:100%;font-size:12px;opacity:.8}#overlay .modes small b{color:#ff9a3d}#overlay .best{font-size:15px;margin:10px 0 0;opacity:.9}#overlay .best b{color:#ffd35b;font-size:20px;font-variant-numeric:tabular-nums}#overlay .best small{opacity:.6;margin-left:6px}#overlay.sheet{justify-content:flex-start;padding-top:6vh;overflow-y:auto;background:linear-gradient(#000000d6 0 52%,#0000006b)}.r-S{--rc: #ffd35b;--rg: rgba(255,211,91,.55)}.r-A{--rc: #ff8f5b;--rg: rgba(255,143,91,.5)}.r-B{--rc: #d6dde9;--rg: rgba(214,221,233,.4)}.r-C{--rc: #dba06a;--rg: rgba(219,160,106,.4)}.r-D{--rc: #9aa4b6;--rg: rgba(154,164,182,.3)}.r-E{--rc: #77808f;--rg: rgba(119,128,143,.25)}#overlay .rhead{font-size:34px;margin:4px 0 0}.verdict{display:flex;align-items:center;justify-content:center;gap:26px;margin:12px 0 0}.stampbox{display:flex;flex-direction:column;align-items:center;min-width:140px}.stamp{width:124px;height:124px;border-radius:50%;display:grid;place-items:center;color:var(--rc);border:5px double var(--rc);font-size:80px;font-weight:900;line-height:1;transform:rotate(-8deg);font-variant-numeric:tabular-nums;background:radial-gradient(circle at 35% 30%,#ffffff29,#00000047 70%);box-shadow:inset 0 0 0 4px #00000059,0 0 30px var(--rg);text-shadow:0 3px 0 rgba(0,0,0,.5)}.stamp.in{animation:slam .45s cubic-bezier(.2,1.5,.35,1) both}@keyframes slam{0%{transform:rotate(-32deg) scale(3.2);opacity:0}55%{transform:rotate(-5deg) scale(.9);opacity:1}to{transform:rotate(-8deg) scale(1)}}.rtitle{font-size:21px;font-weight:900;color:var(--rc);margin:8px 0 0;letter-spacing:.04em;text-shadow:0 0 16px var(--rg)}.breakdown{border-collapse:collapse;font-size:17px}.breakdown td{padding:4px 10px}.breakdown td:first-child{text-align:left;opacity:.85;white-space:nowrap}.breakdown td.num{text-align:right;font-weight:900;font-variant-numeric:tabular-nums;min-width:7ch}.total{font-size:20px;letter-spacing:.12em;font-weight:700;margin:12px 0 0;opacity:.95}.total b{display:inline-block;min-width:7ch;text-align:right;font-size:42px;letter-spacing:0;color:#ffd35b;font-variant-numeric:tabular-nums;margin-left:10px;text-shadow:0 0 22px rgba(255,211,91,.5)}.goal{font-size:19px;font-weight:900;color:var(--rc, #ffd35b);margin:8px 0 0}.goal.top{color:#7fd8ff}.advice{font-size:14.5px;opacity:.9;margin:4px 0 0;max-width:600px;line-height:1.6}.unlock{font-size:16px;font-weight:800;color:#7fd8ff;margin:10px 0 0;padding:8px 18px;border-radius:999px;border:1px solid rgba(127,216,255,.55);background:#7fd8ff1f}.unlock small{font-weight:500;opacity:.75;margin-left:6px}.unlock.in{animation:risein .45s ease-out both,glow 1.2s ease-in-out .45s 3}@keyframes glow{0%,to{box-shadow:0 0 #7fd8ff00}50%{box-shadow:0 0 22px 2px #7fd8ff8c}}.pre{visibility:hidden}.rv.in{animation:risein .35s ease-out both}@keyframes risein{0%{opacity:0;transform:translateY(10px)}}.stats .rk-in{font-size:24px;color:var(--rc)}.an.rank .rr{width:2em;text-align:center;font-weight:900;color:var(--rc)}#overlay .best .brank{display:block;font-size:13.5px;margin-top:4px;color:var(--rc)}#overlay .best .brank b{font-size:17px;color:var(--rc)}#overlay .inputs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:14px 0 2px}#overlay .incard{width:250px;max-width:44vw;padding:9px 12px;border-radius:14px;cursor:pointer;text-align:center;color:#fff;font-family:inherit;background:#ffffff0f;border:2px solid rgba(255,255,255,.3);opacity:.75;transition:border-color .12s,background .12s,opacity .12s}#overlay .incard .ic{display:block;font-size:24px;line-height:1.1}#overlay .incard b{display:block;font-size:16px;font-weight:900}#overlay .incard small{display:block;font-size:11px;font-weight:500;opacity:.75;line-height:1.4}#overlay .incard.sel{opacity:1;border-color:#ffd35b;background:#ffd35b29;color:#ffd35b;box-shadow:0 0 24px #ffd35b59}#overlay .incard.bad{border-color:#ff6b5b;color:#ffb9b2;opacity:1}#overlay .incard.bad small i{display:block;font-style:normal;opacity:.8}#overlay .incard .mictest{display:block;font-style:normal;font-size:11.5px;font-weight:700;color:#7fd8ff;margin-top:4px;min-height:1.3em}#overlay .incard .mictest:empty{display:none}#overlay .incard .mictest.ok{color:#a6ff5b}#overlay .styles{display:flex;flex-direction:column;align-items:center;gap:8px;margin:12px 0 0}#overlay .stytog{padding:6px 16px;border-radius:999px;cursor:pointer;color:#fff;font:700 13px/1 inherit;background:#ffffff14;border:1px solid rgba(255,255,255,.35)}#overlay .stytog b{color:#ffd35b}#overlay .stytog span{opacity:.6;margin-left:6px}#overlay .styles.folded .stylist{display:none}#overlay .styles:not(.folded) .stytog span{visibility:hidden}#overlay .stylist{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}#overlay .sty{min-width:118px;padding:7px 12px;border-radius:12px;cursor:pointer;color:#fff;font:700 13.5px/1.3 inherit;text-align:center;background:#ffffff0f;border:2px solid rgba(255,255,255,.25)}#overlay .sty small{display:block;font-size:10.5px;font-weight:500;opacity:.7;letter-spacing:.05em}#overlay .sty.sel{border-color:#ffd35b;background:#ffd35b29;color:#ffd35b;box-shadow:0 0 18px #ffd35b4d}#overlay .sty.locked{opacity:.5;cursor:default}#overlay .sty.locked small{opacity:1;color:#ffb020}@media(max-width:560px){.verdict{gap:14px}.stamp{width:104px;height:104px;font-size:66px}.stampbox{min-width:116px}.breakdown{font-size:15px}.breakdown td{padding:3px 6px}.total b{font-size:36px}}#overlay .newbest{font-size:24px;font-weight:900;color:#ffd35b;margin:2px 0 0;text-shadow:0 0 20px rgba(255,211,91,.7)}#overlay .newbest.rankin{font-size:18px;color:#7fd8ff;text-shadow:none}#overlay .tabs{display:flex;gap:8px;margin:14px 0 0}#overlay .tab{padding:8px 20px;border-radius:999px 999px 0 0;cursor:pointer;color:#fff;font:700 15px/1 inherit;background:#ffffff0f;border:2px solid rgba(255,255,255,.2);border-bottom:none}#overlay .tab.sel{background:#ffd35b29;border-color:#ffd35b;color:#ffd35b}#overlay .pane{width:min(620px,94vw);border-top:2px solid rgba(255,211,91,.5);padding:10px 14px 14px;background:#080a1099;border-radius:0 0 12px 12px}.anlegend{font-size:11.5px;opacity:.6;text-align:left;margin:0 0 4px}.an{width:100%;border-collapse:collapse;font-size:15px;margin:6px 0 10px}.an td{padding:5px 6px;border-bottom:1px solid rgba(255,255,255,.12)}.an .anm{text-align:left}.an .ann,.an .ana,.an .ant{text-align:right;font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.an .ann{opacity:.7;font-weight:400}.an .anw{width:84px}.an tr.thin td{opacity:.45}.wbar{height:8px;border-radius:4px;background:#ffffff24;overflow:hidden}.wbar i{display:block;height:100%;border-radius:4px}.anhead{font-size:14px;letter-spacing:.05em;margin:12px 0 0;opacity:.85;text-align:left}.anhead b{color:#ffd35b;font-size:17px;font-variant-numeric:tabular-nums}.anweak{font-size:15px;margin:6px 0 0;text-align:left}.anweak b{color:#ff9a3d}.anmiss{list-style:none;display:flex;flex-wrap:wrap;gap:6px 10px;padding:0;margin:6px 0 0;font-size:13.5px}.anmiss li{background:#ffffff14;border-radius:999px;padding:3px 12px}.anmiss b{color:#ff6a6a}.antip{font-size:13.5px;line-height:1.7;text-align:left;margin:10px 0 0;padding:10px 14px;border-radius:10px;background:#7fd8ff1a;border:1px solid rgba(127,216,255,.35)}.antip b{color:#7fd8ff}.an.rank .rk{width:2em;text-align:right;font-weight:900;opacity:.6}.an.rank .rs{text-align:right;font-weight:900;font-size:19px;color:#ffd35b;font-variant-numeric:tabular-nums}.an.rank .rd{text-align:right;font-size:13px;opacity:.8;white-space:nowrap}.an.rank tr.mine td{background:#ffd35b24}.wipewrap{margin:14px 0 0}.wipe{padding:6px 16px;border-radius:999px;cursor:pointer;font:700 13px/1 inherit;color:#ff9a9a;background:none;border:1px solid rgba(255,120,120,.5)}.wiped{font-size:13px;opacity:.7}.againwrap{margin:16px 0 0}.again{padding:13px 38px;border-radius:999px;cursor:pointer;font:800 18px/1 inherit;color:#191408;background:linear-gradient(180deg,#ffe08a,#ffc23c);border:none;box-shadow:0 3px 12px #ffbe3c59}.again:active{transform:translateY(1px)}html.qa-calm *,html.qa-calm *:before,html.qa-calm *:after{animation:none!important;transition:none!important}#dlg{position:fixed;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;background:#0000009e;padding:16px}#dlg .box{width:min(92vw,380px);background:#16161c;border:1px solid rgba(255,255,255,.25);border-radius:16px;padding:18px 18px 14px;color:#fff;text-align:center;box-shadow:0 12px 40px #0009}#dlg h3{margin:0 0 8px;font-size:18px;display:flex;align-items:center;justify-content:center;gap:8px}#dlg p{margin:6px 0;font-size:13.5px;line-height:1.55}#dlg p b{color:#ffb020}#dlg .sub{opacity:.75;font-size:12.5px}#dlg .btns{display:flex;gap:8px;justify-content:center;margin-top:12px}#dlg .btn{font:700 14px/1 inherit;color:#fff;padding:10px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.4);background:#ffffff14;cursor:pointer}#dlg .btn.ok{background:#ffd35b;color:#221;border-color:#ffd35b}#dlg .spin{width:18px;height:18px;border:3px solid rgba(127,216,255,.3);border-top-color:#7fd8ff;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}#dlg .dlbar{height:6px;border-radius:3px;background:#ffffff1f;overflow:hidden;margin:4px 0 10px}#dlg .dlbar i{display:block;height:100%;width:40%;background:#7fd8ff;border-radius:3px;animation:dlslide 1.2s ease-in-out infinite}@keyframes dlslide{0%{transform:translate(-100%)}to{transform:translate(250%)}}html,body{touch-action:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}#hud{padding:calc(env(safe-area-inset-top,0px) + 8px) 12px 0}.hud-left{max-width:46%}.hud-left #stage-no{font-size:13px;letter-spacing:0}.hud-left #stage-name{font-size:17px}.hud-center{width:30%}#hud-btns{margin-bottom:4px}#hud-btns button{width:28px;height:28px;font-size:13px}.hp-label{font-size:10px;letter-spacing:.05em}.hp-bar{height:10px}.hud-right .time{font-size:22px}#time-label{font-size:13px;margin-right:4px}.hud-right .score{font-size:11px;margin-top:2px}#combo{font-size:16px;min-height:18px}#feed{font-size:14px;min-height:18px;line-height:18px}#combo-bar{width:64px;height:3px}#status{font-size:min(24px,6.4vw);letter-spacing:.06em;top:18%}#paused b{font-size:30px}#paused small{font-size:14px}#nogl b{font-size:21px}#nogl p{font-size:13.5px}.wp .wk{font-size:20px}.eword{font-size:17px;padding:2px 8px 3px}.popup{font-size:22px}.popup.big{font-size:30px}.popup.crit{font-size:36px}:root{--safe-b: env(safe-area-inset-bottom, 0px);--key: 64px;--keyh: 46px}#keypad{position:fixed;left:50%;bottom:calc(var(--safe-b) + 8px);transform:translate(-50%);z-index:2;width:calc(var(--key) * 3 + 12px);display:flex;flex-direction:column;gap:6px;touch-action:none;user-select:none;-webkit-user-select:none}#kp-display{position:relative;height:42px;border-radius:10px;background:#0a0c14c7;border:2px solid rgba(255,255,255,.35);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;font:900 28px/1 Hiragino Sans,Noto Sans JP,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.12em;color:#fff;transition:border-color .1s,box-shadow .1s,color .1s}#kp-display:empty:before{content:"答えを打ってボードをタップ";font-size:12px;font-weight:700;letter-spacing:.04em;color:#ffffff73}#kp-display.ok{border-color:#ffd35b;color:#ffd35b;box-shadow:0 0 18px #ffd35b8c}#kp-display.hit{animation:kphit .4s ease-out}#kp-display.miss,#kp-display.need{animation:kpmiss .4s ease-out}@keyframes kphit{0%{background:#a6ff5bcc;border-color:#a6ff5b;box-shadow:0 0 26px #a6ff5bcc}to{background:#0a0c14c7}}@keyframes kpmiss{0%,to{transform:none}20%{transform:translate(-6px);background:#ff4040b3;border-color:#ff4040}60%{transform:translate(6px);background:#ff4040b3;border-color:#ff4040}}#voice{position:relative;min-height:26px;padding:3px 24px;box-sizing:border-box;border-radius:14px;background:#0a0c14c7;border:2px solid rgba(127,216,255,.45);backdrop-filter:blur(6px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#7fd8ff;overflow-wrap:anywhere;font:800 13px/1.25 Hiragino Sans,Noto Sans JP,sans-serif;letter-spacing:.04em;transition:color .1s,border-color .1s,box-shadow .1s}#voice .vsub{display:block;font-size:10.5px;font-weight:700;line-height:1.2;color:#ffffffb8;letter-spacing:.02em}#voice .vsub:empty{display:none}#voice .vlv{position:absolute;left:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:2px;height:16px;opacity:.3;transition:opacity .15s}#voice .vlv b{display:block;width:3px;border-radius:2px;background:currentColor;height:calc(3px + var(--lvl, 0) * var(--k, 1) * 13px);transition:height .05s linear}#voice .vlv b:nth-child(1),#voice .vlv b:nth-child(5){--k: .45}#voice .vlv b:nth-child(2),#voice .vlv b:nth-child(4){--k: .75}#voice.listen{color:#bfefff;border-color:#7fd8ff;box-shadow:0 0 16px #7fd8ff99}#voice.listen .vlv{opacity:1}#voice.think .vtxt:after{content:"…";display:inline-block;width:1.1em;text-align:left;animation:vdots 1.2s steps(4,end) infinite}@keyframes vdots{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 -10% 0 0)}}#voice.hot{color:#ffd35b;border-color:#ffd35b;box-shadow:0 0 16px #ffd35b8c}#keypad.solo{width:min(76vw,290px)}#keypad.solo #voice{min-height:36px;font-size:16px}#keypad.solo #voice .vsub{font-size:12px}#voice.ng{color:#ff8f8f;border-color:#ff6b6b;box-shadow:0 0 16px #ff5a5a73}#voice.dead{color:#ffffff73;border-color:#ffffff40}#voice.held{color:#fff9;border-color:#ffffff4d}#voice.held .vlv,#voice.dead .vlv{opacity:.15}#paused.mic-held small:after{content:" · 🎤 ききとりは止めている"}#kp-keys{display:grid;grid-template-columns:repeat(3,var(--key));grid-auto-rows:var(--keyh);gap:6px}.key{padding:0;border-radius:10px;border:2px solid rgba(255,255,255,.6);background:radial-gradient(circle at 35% 30%,#fff4c0,#ffd35b 55%,#d69a1e);color:#1a1408;touch-action:none;-webkit-tap-highlight-color:transparent;font:900 calc(var(--keyh) * .52)/1 "Hiragino Sans","Noto Sans JP",sans-serif;box-shadow:0 3px 8px #00000073,inset 0 -3px 6px #0000002e}.key.fn{background:linear-gradient(#5a5650,#3a3630);color:#fff;font-size:calc(var(--keyh) * .42);border-color:#ffffff59}.key.press{animation:keypress .15s ease-out}@keyframes keypress{0%{transform:scale(.88);filter:brightness(1.35)}to{transform:none}}@media(orientation:landscape){:root{--key: 56px;--keyh: 34px}#keypad{left:auto;right:calc(env(safe-area-inset-right,0px) + 10px);transform:none;bottom:calc(var(--safe-b) + 6px);gap:5px}#kp-display{height:34px;font-size:22px}#voice{min-height:22px;font-size:11px;padding:2px 20px}#voice .vlv{left:6px;height:12px}#voice .vlv b{height:calc(2px + var(--lvl, 0) * var(--k, 1) * 10px)}#keypad.solo{width:min(46vw,260px)}#keypad.solo #voice{min-height:28px;font-size:14px}#kp-keys{gap:5px}}.wp,.eword{pointer-events:auto;touch-action:none;cursor:pointer}.wp:after,.eword:after{content:"";position:absolute;inset:-12px}.wp.ready,.eword.ready{border-color:#ffd35b;box-shadow:0 0 22px #ffd35bb3;opacity:1}.wp{max-width:70vw;padding:3px 12px 4px}.wp.hit{border-color:#a6ff5b;box-shadow:0 0 22px #a6ff5b99}body:has(#keypad.solo) .wp{max-width:80vw}body:has(#keypad.solo) .wp .wk{font-size:24px}body:has(#keypad.solo) .eword{font-size:20.5px}.wp.leaving{border-color:#ffb347;animation:leavepulse .45s ease-in-out infinite alternate}.wp.leaving.ready,.wp.leaving.hit{animation:none}@keyframes leavepulse{0%{box-shadow:0 0 6px #ffb3474d}to{box-shadow:0 0 22px #ffb347f2}}#overlay{padding:14px;overflow-y:auto;justify-content:flex-start;padding-top:calc(env(safe-area-inset-top,0px) + 10vh)}#overlay.title{background:#0000008c;padding-top:calc(env(safe-area-inset-top,0px) + 2vh);justify-content:center}#overlay h1{font-size:40px}#overlay h1 span,#overlay.title h1{font-size:34px}#overlay.title h1 span,#overlay h2{font-size:26px}#overlay .ops{gap:7px;margin:10px 0 0}#overlay .op{width:min(22vw,110px);padding:7px 6px}#overlay .op .osign{font-size:24px}#overlay .op .oname{font-size:12px}#overlay .opsnote{font-size:11.5px;margin:6px 0 0}@media(orientation:portrait)and (max-width:480px){#overlay .op{width:min(42vw,150px)}}#overlay .press{font-size:18px;margin-top:18px;padding:12px 28px;border:2px solid #ffd35b;border-radius:999px;animation:none}#overlay .stage-label{font-size:14px;letter-spacing:.25em}#overlay .sub{font-size:13px}#overlay .hint{font-size:12.5px;line-height:1.6;max-width:92vw}.stats{font-size:14px;min-width:0;width:92vw;max-width:400px;margin:10px auto}.stats td{padding:4px 8px}#title-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 8px}#mobile-quality,#mobile-local{font-size:12px;margin:8px 0 0;padding:5px 14px;border:1px solid rgba(255,255,255,.35);border-radius:999px}#mobile-quality b,#mobile-local b{color:#7fd8ff}#mobile-quality small,#mobile-local small{opacity:.7}#mobile-local.on{border-color:#7fd8ff;background:#7fd8ff1f}#mobile-local.hidden{display:none}#mobile-local.busy{background-image:linear-gradient(90deg,transparent 0,rgba(127,216,255,.3) 50%,transparent 100%);background-size:200% 100%;animation:dlstripe 1.4s linear infinite}@keyframes dlstripe{0%{background-position:200% 0}to{background-position:-200% 0}}#overlay .inputs{gap:8px;margin:10px 0 0}#overlay .incard{width:min(45vw,220px);padding:7px 8px;border-radius:12px}#overlay .incard .ic{font-size:20px}#overlay .incard b{font-size:14px}#overlay .incard small{font-size:10px}#overlay .incard .mictest{font-size:10.5px}#overlay .modes{gap:7px;margin:8px 0 0}#overlay .mode{padding:6px 14px;font-size:13px}#overlay .modes small{font-size:10.5px}#overlay .best{font-size:12.5px;margin:8px 0 0}#overlay .best b{font-size:17px}#overlay.sheet{padding-top:calc(env(safe-area-inset-top,0px) + 4vh);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 20px)}#overlay .newbest{font-size:18px}#overlay .rhead{font-size:24px}.rtitle{font-size:17px}.total{font-size:15px;margin-top:8px}.total b{font-size:32px}.goal{font-size:16px}.advice{font-size:12.5px;max-width:92vw}.unlock{font-size:13.5px;padding:6px 14px}#overlay .styles{gap:6px;margin-top:8px}#overlay .stylist{gap:6px}#overlay .stytog{font-size:12px;padding:5px 14px}#overlay .sty{min-width:0;width:min(23vw,118px);padding:6px 4px;font-size:12px}#overlay .sty small{font-size:9.5px}@media(orientation:portrait)and (max-width:480px){#overlay .sty{width:min(44vw,150px)}}#overlay .best .brank{font-size:12px}#overlay .best .brank b{font-size:15px}#overlay .newbest.rankin{font-size:14px}#overlay .tabs{gap:5px;margin:10px 0 0}#overlay .tab{padding:7px 12px;font-size:12.5px}#overlay .pane{width:96vw}.an{font-size:12.5px}.an td{padding:4px 3px}.an .anw{width:52px}.anhead{font-size:12px}.anhead b{font-size:15px}.anweak{font-size:12.5px}.anmiss{font-size:11.5px}.antip{font-size:11.5px;padding:8px 10px}.an.rank .rs{font-size:16px}.an.rank .rd{font-size:11px}@media(orientation:portrait)and (max-height:720px){#overlay.title h1{font-size:28px}#overlay.title h1 span{font-size:21px}#overlay.title .hint{font-size:10.5px;line-height:1.45;margin-top:8px}#overlay.title .inputs{margin-top:8px}#overlay.title .incard{padding:5px 8px}#overlay.title .incard .ic{font-size:17px}#overlay.title .incard b{font-size:12.5px}#overlay.title .incard small{font-size:9.5px}#overlay.title .ops{margin-top:8px}#overlay.title .op{padding:5px 4px}#overlay.title .op .osign{font-size:20px}#overlay.title .modes{margin-top:6px}#overlay.title .mode{padding:5px 12px}#overlay.title .styles,#overlay.title #mobile-quality,#overlay.title #mobile-local{margin-top:6px}#overlay.title #mobile-quality small,#overlay.title #mobile-local small{display:none}#overlay.title .incard .mictest{font-size:10px;margin-top:2px}#overlay.title .opsnote{margin-top:6px}#overlay.title .press{font-size:16px;margin-top:6px;padding:8px 22px}}@media(orientation:landscape)and (max-height:520px){#overlay.title{display:flex;flex-flow:column wrap;align-content:center;justify-content:flex-start;align-items:center;height:100%;padding:6px 10px;overflow:hidden;column-gap:24px}#overlay.title>*{max-width:min(46vw,420px);margin-top:5px;margin-bottom:0;flex:0 0 auto}#overlay.title h1{font-size:30px;margin-top:0}#overlay.title h1 span{font-size:23px}#overlay.title .hint{font-size:11px;line-height:1.5}#overlay.title .inputs{gap:6px}#overlay.title .incard{width:min(22vw,200px);padding:5px 8px}#overlay.title .incard .ic{font-size:17px}#overlay.title .incard b{font-size:12.5px}#overlay.title .incard small{font-size:9.5px}#overlay.title .incard .mictest{font-size:10px}#overlay.title .ops{gap:6px}#overlay.title .op{width:min(10.5vw,92px);padding:5px 4px}#overlay.title .op .osign{font-size:19px}#overlay.title .op .oname{font-size:11px}#overlay.title .opsnote{font-size:10.5px}#overlay.title .modes{gap:6px}#overlay.title .mode{padding:5px 12px;font-size:12px}#overlay.title .modes small{font-size:10px}#overlay.title .best{font-size:11.5px}#overlay.title .best b{font-size:15px}#overlay.title .styles{margin-top:5px}#overlay.title .stytog{font-size:11.5px;padding:4px 12px}#overlay.title #mobile-quality,#overlay.title #mobile-local{font-size:11px;padding:4px 12px;margin:0}#overlay.title #title-foot{gap:5px 6px}#overlay.title .press{font-size:16px;margin-top:8px;padding:9px 24px}}#tutor{position:fixed;left:50%;transform:translate(-50%);z-index:3;pointer-events:none;max-width:90vw;padding:7px 14px;border-radius:10px;text-align:center;white-space:nowrap;background:#0a0c14db;border:1px solid rgba(255,211,91,.6);box-shadow:0 4px 18px #00000080;color:#ffeec2;font-size:14px;font-weight:700;line-height:1.5}#tutor b{color:#ffd35b;font-size:20px;letter-spacing:.04em}#tutor small{display:block;font-size:10.5px;font-weight:500;opacity:.72;white-space:normal}#tutor-arrow{position:fixed;z-index:3;pointer-events:none;color:#ffd35b;font-size:26px;line-height:1;text-shadow:0 2px 8px rgba(0,0,0,.9);animation:tutbob .75s ease-in-out infinite}@keyframes tutbob{0%,to{transform:translate(-50%,-104%)}50%{transform:translate(-50%,-140%)}}.key.tut{animation:tutkey .8s ease-out infinite}@keyframes tutkey{0%{box-shadow:0 0 #ffffffe6}70%,to{box-shadow:0 0 0 12px #fff0}}
