/*!
 * 
 *   react-simple-keyboard v3.8.155
 *   https://github.com/hodgef/react-simple-keyboard
 *
 *   Copyright (c) Francisco Hodge (https://github.com/hodgef) and project contributors.
 *
 *   This source code is licensed under the MIT license found in the
 *   LICENSE file in the root directory of this source tree.
 *
 */
/*!
 * 
 *   simple-keyboard v3.8.107
 *   https://github.com/hodgef/simple-keyboard
 *
 *   Copyright (c) Francisco Hodge (https://github.com/hodgef) and project contributors.
 *
 *   This source code is licensed under the MIT license found in the
 *   LICENSE file in the root directory of this source tree.
 *
 */.hg-theme-default{background-color:#ececec;border-radius:5px;box-sizing:border-box;font-family:HelveticaNeue-Light,Helvetica Neue Light,Helvetica Neue,Helvetica,Arial,Lucida Grande,sans-serif;overflow:hidden;padding:5px;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.hg-theme-default .hg-button span,.hg-theme-default .hg-button span svg{pointer-events:none}.hg-theme-default button.hg-button{border-width:0;font-size:inherit}.hg-theme-default .hg-button{display:inline-block;flex-grow:1}.hg-theme-default .hg-row{display:flex}.hg-theme-default .hg-row:not(:last-child){margin-bottom:5px}.hg-theme-default .hg-row .hg-button-container,.hg-theme-default .hg-row .hg-button:not(:last-child){margin-right:5px}.hg-theme-default .hg-row>div:last-child{margin-right:0}.hg-theme-default .hg-row .hg-button-container{display:flex}.hg-theme-default .hg-button{align-items:center;background:#fff;border-bottom:1px solid #b5b5b5;border-radius:5px;box-shadow:0 0 3px -1px rgba(0,0,0,.3);box-sizing:border-box;cursor:pointer;display:flex;height:40px;justify-content:center;padding:5px;-webkit-tap-highlight-color:rgba(0,0,0,0)}.hg-theme-default .hg-button.hg-standardBtn{width:20px}.hg-theme-default .hg-button.hg-activeButton{background:#efefef}.hg-theme-default.hg-layout-numeric .hg-button{align-items:center;display:flex;height:60px;justify-content:center;width:33.3%}.hg-theme-default .hg-button.hg-button-numpadadd,.hg-theme-default .hg-button.hg-button-numpadenter{height:85px}.hg-theme-default .hg-button.hg-button-numpad0{width:105px}.hg-theme-default .hg-button.hg-button-com{max-width:85px}.hg-theme-default .hg-button.hg-standardBtn.hg-button-at{max-width:45px}.hg-theme-default .hg-button.hg-selectedButton{background:rgba(5,25,70,.53);color:#fff}.hg-theme-default .hg-button.hg-standardBtn[data-skbtn=".com"]{max-width:82px}.hg-theme-default .hg-button.hg-standardBtn[data-skbtn="@"]{max-width:60px}.hg-candidate-box{background:#ececec;border-bottom:2px solid #b5b5b5;border-radius:5px;display:inline-flex;margin-top:-10px;position:absolute;transform:translateY(-100%);-webkit-user-select:none;-moz-user-select:none;user-select:none}ul.hg-candidate-box-list{display:flex;flex:1;list-style:none;margin:0;padding:0}li.hg-candidate-box-list-item{align-items:center;display:flex;height:40px;justify-content:center;width:40px}li.hg-candidate-box-list-item:hover{background:rgba(0,0,0,.03);cursor:pointer}li.hg-candidate-box-list-item:active{background:rgba(0,0,0,.1)}.hg-candidate-box-prev:before{content:"◄"}.hg-candidate-box-next:before{content:"►"}.hg-candidate-box-next,.hg-candidate-box-prev{align-items:center;color:#969696;cursor:pointer;display:flex;padding:0 10px}.hg-candidate-box-next{border-bottom-right-radius:5px;border-top-right-radius:5px}.hg-candidate-box-prev{border-bottom-left-radius:5px;border-top-left-radius:5px}.hg-candidate-box-btn-active{color:#444}.virtual-keyboard{width:100%;background-color:#f8f9fa;border-radius:8px;padding:10px}.virtual-keyboard .simple-keyboard{background-color:transparent;font-family:inherit}.virtual-keyboard .simple-keyboard .hg-button{height:50px;font-size:20px;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);transition:all .1s ease}.virtual-keyboard .simple-keyboard .hg-button:active{background-color:#e0e0e0;transform:scale(.95)}.virtual-keyboard .simple-keyboard .hg-button.hg-red{background-color:#ff6b6b;color:#fff}.virtual-keyboard .simple-keyboard .hg-button.hg-highlight{background-color:#bb5305;color:#fff;font-weight:600}.virtual-keyboard .simple-keyboard .hg-button.hg-highlight:active{background-color:#9a4404}.virtual-keyboard .simple-keyboard .hg-button[data-skbtn="{space}"]{max-width:500px}.virtual-keyboard .pinyin-suggestions{background-color:#fff;border:2px solid #bb5305;border-radius:12px;padding:12px;margin-bottom:10px;box-shadow:0 4px 12px rgba(0,0,0,.15)}.virtual-keyboard .pinyin-buffer{font-size:24px;font-weight:600;color:#bb5305;margin-bottom:8px;padding:8px;background-color:#fff8f0;border-radius:6px}.virtual-keyboard .suggestions-list{display:flex;flex-wrap:wrap;gap:8px}.virtual-keyboard .suggestion-item{display:flex;align-items:center;gap:6px;padding:8px 12px;background-color:#f8f9fa;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:18px}.virtual-keyboard .suggestion-item:hover{background-color:#bb5305;border-color:#bb5305;transform:translateY(-2px);box-shadow:0 4px 8px rgba(187,83,5,.2)}.virtual-keyboard .suggestion-item:hover .suggestion-char,.virtual-keyboard .suggestion-item:hover .suggestion-number{color:#fff}.virtual-keyboard .suggestion-number{font-size:14px;font-weight:600;color:#bb5305;min-width:20px}.virtual-keyboard .suggestion-char{font-size:24px;font-weight:600;color:#1e2938}.virtual-keyboard-dock{position:fixed;left:0;right:0;bottom:14vh;z-index:9999;padding:0 12px;animation:virtual-keyboard-dock-in .15s ease-out}.virtual-keyboard-dock-inner{max-width:1100px;margin:0 auto;background-color:#fff;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.25);padding:12px}@keyframes virtual-keyboard-dock-in{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}