.app-kb-target{caret-color:#0000;touch-action:none}.form-control.app-kb-target[readonly],.custom-select.app-kb-target[readonly]{background-color:var(--field-bg);color:var(--text-color)}.app-kb{--vk-deck-bg:var(--gray-200);--vk-deck-border:var(--border-color);--vk-key-bg:var(--field-bg);--vk-key-text:var(--text-color);--vk-key-shadow:var(--shadow-card);--vk-func-bg:var(--gray-100);--vk-func-text:var(--text-muted);--vk-active-bg:var(--accent);--vk-active-text:var(--text-on-accent);--vk-accept-bg:var(--accent);--vk-accept-bg-active:var(--accent-dark);--vk-accept-text:var(--text-on-accent);--vk-readout-bg:color-mix(in srgb, var(--accent) 8%, var(--field-bg));--vk-readout-label:var(--text-muted);--vk-readout-text:var(--text-color);--vk-caret:var(--accent);--vk-radius-deck:18px;--vk-radius-key:8px;--vk-key-min-h:clamp(44px, 6.4vh, 54px);--vk-key-min-w:clamp(38px, 4.4vw, 50px);--vk-gap:clamp(5px, .6vw, 8px);--vk-pad:clamp(12px, 1.6vw, 18px);--vk-font-size:clamp(.95rem, 1.6vw, 1.1rem);--vk-stagger:clamp(10px, 1.8vw, 22px);z-index:20000;box-sizing:border-box;width:100%;max-height:58vh;padding:var(--vk-pad) var(--vk-pad) calc(var(--vk-pad) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--vk-deck-border);border-radius:var(--vk-radius-deck) var(--vk-radius-deck) 0 0;background:var(--vk-deck-bg);font-family:var(--font-sans);-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;margin:0;animation:.18s ease-out app-kb-slide-up;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -12px 32px #00000073}.app-kb[hidden]{display:none}.app-kb__toolbar{margin-bottom:calc(var(--vk-pad) * .75);grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(10px,1.4vw,16px);display:grid}.app-kb__preview{box-sizing:border-box;border-radius:var(--vk-radius-key);background:var(--vk-readout-bg);grid-column:2;justify-self:center;align-items:center;gap:clamp(10px,1.4vw,16px);width:clamp(14rem,42vw,28rem);max-width:100%;padding:clamp(8px,1.4vh,12px) clamp(16px,2vw,20px);display:flex}.app-kb__preview-label{text-transform:uppercase;letter-spacing:.1em;color:var(--vk-readout-label);flex:none;font-size:clamp(.7rem,.95vw,.8rem);font-weight:600}.app-kb__preview--invalid{box-shadow:0 0 0 2px var(--danger)}.app-kb__error{margin:0 0 calc(var(--vk-pad) * .5);color:var(--danger);text-align:center;font-size:clamp(.8rem,1.3vw,.95rem);font-weight:600;line-height:1.3}.app-kb__error[hidden]{display:none}.app-kb__preview-text{text-align:start;white-space:nowrap;scrollbar-width:none;font-variant-numeric:tabular-nums;min-width:0;height:1.3em;color:var(--vk-readout-text);touch-action:none;flex:auto;font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:600;line-height:1.2;display:block;overflow:auto hidden}.app-kb__preview-text::-webkit-scrollbar{display:none}.app-kb__caret-marker{vertical-align:-.15em;pointer-events:none;width:0;height:1em;display:inline-block;position:relative}.app-kb__caret-bar{background:var(--vk-caret);width:2px;height:100%;animation:1s step-end infinite app-kb-caret;position:absolute;top:0;left:-1px}.app-kb--caret-dragging .app-kb__caret-bar,.app-kb--space-drag .app-kb__caret-bar{opacity:1;animation:none}.app-kb__caret-handle{margin-inline-start:-10px;background:var(--vk-caret);touch-action:none;cursor:grab;opacity:0;border-radius:0 50% 50%;width:20px;height:20px;margin-top:4px;transition:opacity .1s;position:absolute;top:100%;left:50%;transform:rotate(45deg)}.app-kb--caret-dragging .app-kb__caret-handle{opacity:1;cursor:grabbing}.app-kb__actions{grid-column:3;justify-self:end;align-items:center;gap:clamp(6px,.9vw,10px);display:flex}.app-kb__action{box-sizing:border-box;border-radius:var(--vk-radius-key);min-height:clamp(38px,5.4vh,46px);font-family:var(--font-sans);cursor:pointer;border:none;flex:none;padding:0 clamp(16px,2vw,22px);font-size:clamp(.85rem,1.3vw,.98rem);font-weight:700;transition:background 40ms,transform 30ms}.app-kb__action[hidden]{display:none}.app-kb__action--dismiss{background:var(--vk-func-bg);color:var(--vk-func-text)}.app-kb__action--dismiss.app-kb__key--touched{transform:scale(.96)}.app-kb__action--primary{background:var(--vk-accept-bg);color:var(--vk-accept-text)}.app-kb__action--primary:disabled{opacity:.45;cursor:default;transform:none}.app-kb__action--primary.app-kb__key--touched:not(:disabled){background:var(--vk-accept-bg-active);transform:scale(.96)}.app-kb__rows{align-items:center;gap:var(--vk-gap);flex-direction:column;display:flex}.app-kb__row{justify-content:center;gap:var(--vk-gap);flex-wrap:wrap;width:100%;display:flex}.app-kb:not(.app-kb--numeric) .app-kb__row:nth-of-type(2){margin-inline-start:calc(var(--vk-stagger) * .5)}.app-kb:not(.app-kb--numeric) .app-kb__row:nth-of-type(3){margin-inline-start:var(--vk-stagger)}.app-kb__key{-webkit-tap-highlight-color:transparent;touch-action:manipulation;box-sizing:border-box;min-height:var(--vk-key-min-h);min-width:var(--vk-key-min-w);border-radius:var(--vk-radius-key);background:var(--vk-key-bg);color:var(--vk-key-text);font-family:var(--font-sans);font-size:var(--vk-font-size);box-shadow:0 1px 0 var(--vk-key-shadow);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0 clamp(8px,1vw,14px);font-weight:600;transition:background 40ms,transform 30ms;display:flex}.app-kb__key:focus-visible{outline:2px solid var(--accent-light);outline-offset:2px}@media (hover:hover) and (pointer:fine){.app-kb__key:hover{background:color-mix(in srgb, var(--vk-key-bg) 80%, white 20%)}}.app-kb__key--touched{background:color-mix(in srgb, var(--vk-key-bg) 70%, black 30%);transform:scale(.94)}.app-kb__key--func{background:var(--vk-func-bg);color:var(--vk-func-text)}@media (hover:hover) and (pointer:fine){.app-kb__key--func:hover{background:color-mix(in srgb, var(--vk-func-bg) 80%, white 20%)}}.app-kb__key--func.app-kb__key--touched{background:color-mix(in srgb, var(--vk-func-bg) 70%, black 30%)}.app-kb__key--backspace i{color:color-mix(in srgb, var(--danger) 65%, var(--vk-func-text));font-size:1.1em}.app-kb__key--backspace.app-kb__key--touched i{color:var(--text-on-accent)}.app-kb__key--active{background:var(--vk-active-bg);color:var(--vk-active-text)}.app-kb__key--space{touch-action:none;flex:none;width:clamp(160px,20vw,240px)}.app-kb--space-drag .app-kb__key{color:#0000;transition:color 80ms}.app-kb--space-drag .app-kb__key--backspace i{color:#0000}.app-kb__spacer{min-width:var(--vk-key-min-w);min-height:var(--vk-key-min-h);visibility:hidden;flex:none}.app-kb--numeric{--vk-key-min-h:clamp(58px, 8.4vh, 76px);--vk-key-min-w:clamp(84px, 11vw, 116px);--vk-gap:clamp(8px, 1vw, 12px);--vk-font-size:clamp(1.3rem, 2.4vw, 1.55rem);--vk-radius-key:10px}.app-kb--numeric .app-kb__key{width:var(--vk-key-min-w)}@keyframes app-kb-slide-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes app-kb-caret{0%,49%{opacity:1}50%,to{opacity:0}}.hebrew-keyboard-field{min-width:0;display:block;position:relative}.hebrew-keyboard-field>.form-control,.hebrew-keyboard-field>.msc-editor__input{width:100%;padding-left:34px}.hebrew-keyboard-btn{z-index:2;width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:1.05rem;line-height:1;display:flex;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.hebrew-keyboard-btn:hover{background:var(--accent-tint-subtle);color:var(--accent)}.hebrew-keyboard-btn:focus-visible{outline:2px solid var(--text-color);outline-offset:1px}@media (prefers-reduced-motion:reduce){.app-kb,.app-kb__caret-bar{animation:none}}
