.kb{--pn:linear-gradient(180deg,#ffffffb3 0%,#eef1f8eb 100%);--key:#e2e5ed;--fn:#cbcfdb;--tx:#14101c;--onbg:#14101c;--ontx:#fff;--go:#14101c;--pop:#fff;--ksh:#14101c33;z-index:70;max-width:640px;padding:10px 4px calc(var(--sab,env(safe-area-inset-bottom,0px)) + 2px);background:var(--pn);color:var(--tx);font-family:var(--ui),-apple-system,BlinkMacSystemFont,system-ui,"Segoe UI",Roboto,sans-serif;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;visibility:hidden;will-change:transform;margin:0 auto;transition:transform .3s cubic-bezier(.22,1,.36,1),visibility 0s .3s;position:fixed;bottom:0;left:0;right:0;transform:translateY(105%)}.kb-light{bottom:2px}.kb.fx{-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4)}.kb[data-open="1"]{visibility:visible;transition:transform .3s cubic-bezier(.22,1,.36,1);transform:translate(0,0)}.kb-dark{--pn:linear-gradient(180deg,#1a0f36b8 0%,#2c1c58e0 100%);--key:#ffffff2b;--fn:#ffffff17;--tx:#fff;--onbg:#fff;--ontx:#1a0f36;--go:#fff;--pop:#44396a;--ksh:#0006}.kb-dark .k.ret.kgo{color:#1a0f36}.kb-light{left:2px;right:2px}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.kb{background:#fff}.kb-dark{background:#1a0f36}}@media (prefers-reduced-transparency:reduce){.kb,.kb.fx{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}.kb-dark{background:#1a0f36}}@media (pointer:fine) and (hover:hover){.kb{display:none}}.kb-rows{gap:11px;display:grid}.kb-row{gap:6px;height:43px;display:flex}.grp{flex:7;gap:6px;display:flex}.sp{flex:.5}.k{background:var(--key);min-width:0;color:var(--tx);font:500 24px/1 var(--ui),-apple-system,BlinkMacSystemFont,system-ui,"Segoe UI",Roboto,sans-serif;font-variant-numeric:tabular-nums;box-shadow:0 1px 0 var(--ksh);touch-action:none;-webkit-font-smoothing:antialiased;border:0;border-radius:9px;flex:1;place-items:center;padding:0;transition:background 60ms,transform 60ms,color .12s;display:grid;position:relative}.k.fn{background:var(--fn);flex:1.4;font-size:16px;font-weight:600}.k.w{flex:1.4}.grp .k.w{flex:1}.k.fn.on{background:var(--onbg);color:var(--ontx)}.k.fn.on.lock{box-shadow:0 0 0 2px var(--acc,#ff7ab8) inset}.k.l{flex:2.3}.k.space{flex:6.2}.k.space.sp2{flex:4.5}.k.l2{flex:1.9}.k.pc{flex:1;font-size:26px}.k.ret.kgo{background:var(--go);color:#fff;font-weight:600}.k.ret.koff{opacity:.3}.k.ret.koff.dn{transform:none}.k.dn{background:var(--fn)}.k.fn.dn{background:var(--key);transform:scale(.96)}.k.space.dn{background:var(--fn)}.kb.trk .k{color:#0000}.kb.trk .k svg{opacity:0}.kb.trk .k.space{background:var(--fn)}.pop{background:var(--pop);width:calc(100% + 22px);height:60px;color:var(--tx);pointer-events:none;z-index:2;border-radius:12px 12px 5px 5px;place-items:center;font-size:32px;display:grid;position:absolute;bottom:calc(100% - 2px);left:50%;transform:translate(-50%);box-shadow:0 3px 10px #00000059}.pop:after{content:"";background:var(--pop);border-radius:0 0 9px 9px;height:75%;position:absolute;top:calc(100% - 3px);left:11px;right:11px}.pop.el{left:-6px;transform:none}.pop.el:after{left:6px;right:16px}.pop.er{left:auto;right:-6px;transform:none}.pop.er:after{left:16px;right:6px}.alts{background:var(--pop);z-index:3;border-radius:12px;gap:2px;padding:5px;display:flex;position:absolute;bottom:calc(100% + 8px);left:-4px;box-shadow:0 3px 14px #0006}.alts.r{flex-direction:row-reverse;left:auto;right:-4px}.alts i{min-width:36px;height:46px;color:var(--tx);border-radius:8px;place-items:center;font-size:24px;font-style:normal;display:grid}.alts i.on{background:var(--acc,#ff7ab8);color:#fff}.kb-bar{justify-content:space-between;align-items:center;height:46px;margin-top:3px;padding:0 6px;display:flex}.kb-bar button{color:var(--tx);touch-action:manipulation;background:0 0;border:0;border-radius:10px;place-items:center;min-width:44px;height:44px;display:grid}.kb-bar .ico{opacity:.9;min-width:54px}.kb-bar .ico svg{width:32px;height:32px}.kb-bar .ico:active{background:var(--fn);opacity:1}.kb-bar .abc{padding:0 8px;font-size:16px;font-weight:600}.cats{gap:2px;display:flex}.cats button{opacity:.55;filter:grayscale(.2);font-size:20px}.cats button.on{opacity:1;background:var(--fn)}.emo{overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:none;grid-template-columns:repeat(8,1fr);align-content:start;gap:2px 0;height:202px;padding:0 2px;display:grid;overflow:hidden auto}.emo::-webkit-scrollbar{display:none}.emo button{touch-action:manipulation;background:0 0;border:0;border-radius:10px;height:46px;padding:0;font-size:30px}.emo button:active{background:var(--fn);transform:scale(.9)}@media (prefers-reduced-motion:reduce){.kb,.k{transition:none}}@media (prefers-contrast:more){.kb-dark{--key:#ffffff4d;--fn:#ffffff2e}.kb-light{--key:#d9dce4;--fn:#b9bdc9}}.kb-sug{align-items:stretch;height:38px;margin:-2px 2px 6px;display:flex}.kb-sug button{min-width:0;color:var(--tx);font:500 17px/1 var(--ui),system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap;touch-action:manipulation;background:0 0;border:0;border-radius:9px;flex:1;padding:0 6px;position:relative;overflow:hidden}.kb-sug button+button:before{content:"";background:var(--tx);opacity:.14;width:1px;position:absolute;top:9px;bottom:9px;left:0}.kb-sug button{transition:background .1s}.kb-sug button:active{background:var(--fn)}.kb-sug button.lit{opacity:.7}.kb-sug button:first-child:not(.lit):not(:only-child){font-weight:600}.kb-bar{position:relative}.kb-bar .lft{display:flex}.kb-bar .k.ico{box-shadow:none;width:54px;height:44px;color:var(--tx);background:0 0;flex:none;font-size:16px}.kb-bar .k.ico.dn{background:var(--fn)}.kb-menu{background:var(--pop);z-index:5;border-radius:14px;min-width:210px;padding:6px;display:grid;position:absolute;bottom:calc(100% + 4px);left:6px;box-shadow:0 6px 24px #00000059}.kb-menu button{text-align:left;height:42px;font:500 16px/1 var(--ui),system-ui,sans-serif;color:var(--tx);border-radius:9px;padding:0 12px}.kb-menu button:active{background:var(--fn)}.kb.hand-left,.kb.hand-right{width:84%;margin:0}.kb.hand-left{right:auto}.kb.hand-right{left:auto}.kb-light.hand-left{left:2px}.kb-light.hand-right{right:2px}.kb-exp{width:19%;color:var(--tx);opacity:.7;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:0;bottom:0}.hand-left .kb-exp{left:100%}.hand-right .kb-exp{right:100%}.kb.big .kb-row{height:52px}.kb.big .k{font-size:27px}.kb.big .k.fn{font-size:18px}.kb.big .kb-sug{height:42px}.alts.tone{z-index:80;position:fixed;bottom:auto;right:auto;transform:translate(-50%)}.alts.tone i{min-width:42px;font-size:26px}@media (orientation:landscape) and (max-height:520px){.kb{padding-top:6px}.kb-rows{gap:6px}.kb-row{height:34px}.k{font-size:20px}.kb-sug{display:none}.kb-bar{height:34px;margin-top:0}.kb-bar .k.ico{height:34px}.emo{height:136px}.emo button{height:38px;font-size:24px}}.kb-mood{--pn:var(--cmb);--key:#ffffff2b;--fn:#ffffff17;--tx:#fff;--onbg:#fff;--ontx:#14101c;--go:#fff;--pop:color-mix(in srgb,var(--cmb) 65%,#fff);--ksh:#0006;padding-left:10px;padding-right:10px;bottom:0;left:0;right:0}.kb-mood .k.ret.kgo{color:#14101c}.kb-mood.hand-left{left:0}.kb-mood.hand-right{right:0}@media (prefers-contrast:more){.kb-mood{--key:#ffffff4d;--fn:#ffffff2e}}.kb{--edge:#ffffff24;--bloom:#fff}.kb-light{--edge:#14101c1f;--bloom:#6c7595}.k{box-shadow:0 1px 0 var(--ksh),inset 0 0 0 1px var(--edge)}.kb-bar .k.ico{box-shadow:none}.pop{transform-origin:50% 100%;animation:.2s cubic-bezier(.3,1.5,.5,1) both kbpop}.pop.el,.pop.er{animation-name:kbpope}@keyframes kbpop{0%{opacity:0;transform:translate(-50%)scale(.82)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes kbpope{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}.k .bl{border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.k .bl:before,.k .bl:after{content:"";border-radius:50%;width:26px;height:26px;margin:-13px 0 0 -13px;animation:.36s cubic-bezier(.22,1,.36,1) both kbbloom;position:absolute;top:50%;left:50%}.k .bl:before{background:color-mix(in srgb,var(--bloom) 30%,transparent)}.k .bl:after{border:1.5px solid color-mix(in srgb,var(--bloom) 55%,transparent)}@keyframes kbbloom{0%{opacity:1;transform:scale(.45)}to{opacity:0;transform:scale(3.4)}}.kb-poolbox{border-radius:inherit;pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.kb-pool{opacity:0;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--bloom) 17%,transparent) 0,transparent 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:0;left:0}.kb.wave .kb-row .k,.kb.wave .kb-row .sp{animation:.42s cubic-bezier(.22,1,.36,1) both kbwave}.kb.wave .kb-row:nth-child(2) .k{animation-delay:40ms}.kb.wave .kb-row:nth-child(3) .k{animation-delay:80ms}.kb.wave .kb-row:nth-child(4) .k{animation-delay:.12s}@keyframes kbwave{0%{opacity:0;transform:translateY(10px)scale(.94)}to{opacity:1;transform:none}}.kb-sug button{animation:.12s ease-out both kbsug}@keyframes kbsug{0%{opacity:0}to{opacity:1}}.kb-sug.ph{visibility:hidden}.kb-menu{transform-origin:62px 100%}.kb-menu button{background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;display:flex}.kb-menu button b{margin-left:14px;font-weight:700}.kb-menu.in{animation:.5s cubic-bezier(.3,1.25,.4,1) both kbmenuin}.kb-menu.out{pointer-events:none;animation:.24s cubic-bezier(.5,0,.9,.4) both kbmenuout}@keyframes kbmenuin{0%{opacity:0;transform:translateY(36px)scale(.18,.06)}35%{opacity:1}65%{transform:translateY(-3px)scale(1.04,1.06)}to{opacity:1;transform:none}}@keyframes kbmenuout{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(36px)scale(.18,.06)}}@media (prefers-reduced-motion:reduce){.kb.wave .kb-row .k,.kb.wave .kb-row .sp,.k .bl,.pop,.kb-sug button{animation:none}.kb-menu.in{animation:.15s ease-out both kbsug}.kb-menu.out{animation:.12s ease-in reverse both kbsug}}.kb-mono{--pn:#0a0a0a;--key:#ffffff29;--fn:#ffffff17;--tx:#fff;--onbg:#fff;--ontx:#000;--go:#fff;--pop:#2b2b2b;--ksh:#00000080;border-top:1px solid #ffffff1a;padding-left:6px;padding-right:6px;bottom:0;left:0;right:0}.kb-mono .k.ret.kgo{color:#000}.kb-mono .k.pc{font-size:22px}.kb-mono .k.pc[aria-label=underscore]{padding-bottom:15px}
