.manual-key-control{display:inline-flex;vertical-align:middle;margin:0 8px 8px 0;font-family:inherit}.manual-key-control button{height:32px;padding:4px 12px;border:1px solid #3f7fbc;border-radius:4px;background:#3f7fbc;color:#fff;display:inline-flex;align-items:center;gap:6px;font:inherit;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.08);transition:.18s}.manual-key-control button:hover{background:#2f6fa9;border-color:#2f6fa9}.manual-key-control button.is-on{background:#269447;border-color:#269447}.manual-key-control__icon{font-size:14px;line-height:1}.manual-key-drawing-host{position:relative!important}.manual-key-drawing{position:absolute;inset:0;z-index:55;display:none;align-items:flex-end;justify-content:stretch;padding:0;pointer-events:none;box-sizing:border-box;overflow:hidden}.manual-key-drawing.is-visible{display:flex}.manual-key-drawing__panel{width:100%;height:var(--manual-keypad-height,28%);min-height:0;max-height:68%;padding:0;border:0;border-top:2px solid #d8ff00;background:rgba(0,0,0,.32);box-shadow:0 -1px 12px rgba(216,255,0,.12);color:#d8ff00;box-sizing:border-box}.manual-key-drawing__grid{width:100%;height:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));border-left:1px solid #d8ff00;box-sizing:border-box}.manual-key-drawing__grid span{min-width:0;min-height:0;display:grid;place-items:center;border-right:1px solid #d8ff00;border-bottom:1px solid #d8ff00;background:rgba(0,0,0,.12);font-size:clamp(15px,calc(var(--manual-key-row-height,48px)*.32),38px);font-weight:700;line-height:1;text-shadow:0 1px 2px #000;box-sizing:border-box}.manual-key-drawing__grid .is-action{font-size:clamp(12px,calc(var(--manual-key-row-height,48px)*.25),30px)}@media(max-width:760px){.manual-key-drawing__grid span{font-size:clamp(14px,calc(var(--manual-key-row-height,42px)*.34),28px)}.manual-key-drawing__grid .is-action{font-size:clamp(11px,calc(var(--manual-key-row-height,42px)*.26),23px)}}@media(prefers-reduced-motion:reduce){.manual-key-control button{transition:none}}
