:where(.pos-entry){box-sizing:border-box;display:block;min-width:0;min-height:2.75rem;padding:.65rem .75rem;border:1px solid #7894aa;border-radius:6px;background:#fff;color:inherit;font:inherit;line-height:1.3;white-space:pre-wrap;overflow-wrap:anywhere;cursor:default;user-select:none;touch-action:manipulation}
.pos-entry:empty::before{content:attr(placeholder);color:#637080;pointer-events:none}
.pos-entry:focus{outline:3px solid #0078d4;outline-offset:2px}
.pos-entry[aria-disabled=true]{opacity:.6;background:#edf0f3;cursor:not-allowed}
.pos-entry[aria-invalid=true]{border-color:#b51d2a}
.pos-entry[aria-multiline=true]{min-height:6rem;white-space:pre-wrap}
.pos-entry-error{color:#9b1922;font-size:.9rem}
[data-pos-entry-notice]{padding:.6rem;background:#fff2ce;color:#4e3900}
.touch-input-overlay{position:fixed;inset:0;z-index:10000;background:#1238;display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box}
.touch-input-overlay[hidden]{display:none}
.touch-input-panel{box-sizing:border-box;width:min(720px,100%);max-height:90vh;overflow:auto;border-radius:12px;background:white;color:#123b5d;padding:1rem;font:20px system-ui}
.touch-input-panel header,.touch-input-panel footer{display:flex;gap:.5rem;justify-content:space-between;align-items:center}
.touch-input-panel button{min-height:44px;padding:.5rem;border:1px solid #7894aa;border-radius:6px;background:#e7f2fa;color:#123b5d;font:inherit}
#touch-input-preview{display:block;min-height:2rem;padding:.5rem;overflow-wrap:anywhere;border:2px solid #0078d4;margin:.5rem 0;white-space:pre-wrap}
.touch-keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem;margin:.5rem 0}
.touch-keys.text,.touch-keys.email,.touch-keys.address,.touch-keys.password,.touch-keys.instructions{grid-template-columns:repeat(6,minmax(0,1fr))}
.alpha-key-rows{grid-column:1/-1}.alpha-key-row{display:flex;justify-content:center;gap:.2rem}.alpha-key-row button{flex:1;min-width:0;padding:.3rem}
.pos-entry-editing{outline:3px solid #0078d4;outline-offset:2px}
