/* On-Screen Keyboard */
.osk-window .resize-handle { display: none; }
.osk-body { flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 3px; padding: 5px; background: #ece9d8; font: 11px Tahoma, Verdana, Arial, sans-serif; overflow: auto; }
.osk-row { display: flex; gap: 3px; }
.osk-key {
    flex: 1 1 0; min-width: 0; height: 30px; padding: 0; cursor: pointer; font: 12px Tahoma, sans-serif; color: #000;
    background: linear-gradient(180deg, #fff, #dcdad0); border: 1px solid #7f7d70; border-radius: 3px;
}
.osk-key:hover { border-color: #e68b2c; }
.osk-key:active, .osk-key[aria-pressed="true"] { background: #c1d2ee; border-color: #316ac5; }
.osk-key.wide { flex: 1.7 1 0; }
.osk-key.space { flex: 6 1 0; }
.osk-status { margin: 0; color: #555; min-height: 14px; }
