body[data-touch]{overflow:hidden;overscroll-behavior:none;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}body[data-touch] *{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}body[data-touch] #screen{touch-action:none;width:var(--cw, min(100cqw, calc(100cqh * 4 / 3)));height:var(--ch, auto)}body[data-touch]{--mb: 48px;--gap: 6px}body[data-touch] #pageMenuBtn svg{width:26px;height:26px}body[data-touch] #pageMenu .pm-panel{min-width:260px}body[data-touch] #pageMenu .pm-panel>button{min-height:48px;font-size:16px;border-radius:10px;touch-action:manipulation}body[data-touch] #pageMenu .pm-zoom button{min-height:44px;min-width:52px;font-size:18px}body[data-touch] #zoomChip{font-size:15px}body[data-touch] #infoDlg{touch-action:pan-y;-webkit-user-select:text;user-select:text;padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}body[data-touch] #infoDlg .panel{overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}body[data-touch] #infoDlg button,body[data-touch] #infoDlg select{min-height:44px;font-size:16px;padding:8px 14px}body[data-touch] #infoDlg textarea{font-size:16px;-webkit-user-select:text;user-select:text}body[data-touch] #infoClose{min-width:48px;font-size:20px}body[data-touch] #startOverlay{touch-action:manipulation}@media(orientation:portrait){body[data-touch] #touchRotate{display:flex}body[data-touch][data-zoomed] #touchRotate{display:none}}#touchLayer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;pointer-events:none;overflow:hidden}#touchLayer canvas{width:44px;height:44px;image-rendering:pixelated;display:block}#touchWheel .tw-item{position:absolute;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#080c16db;border:2px solid rgba(143,180,255,.55);box-shadow:0 2px 10px #000a;transition:transform .08s,border-color .08s,background .08s}#touchWheel .tw-item.cur{border-color:#ffd36b}#touchWheel .tw-item.on{transform:scale(1.22);background:#283e78f2;border-color:#fff}#touchWheel .tw-hub{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#ffffff59}#touchWheel .tw-label{position:absolute;transform:translate(-50%);padding:3px 12px;border-radius:14px;background:#080c16e0;color:#fff;font:600 15px/1.2 system-ui,-apple-system,sans-serif;white-space:nowrap}#touchToast{position:absolute;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:5px 14px 5px 8px;border-radius:22px;background:#080c16db;color:#fff;font:600 15px/1.2 system-ui,-apple-system,sans-serif;white-space:nowrap;border:1px solid rgba(143,180,255,.5)}#touchToast[hidden],#touchWheel[hidden],#touchVerbBtn[hidden],#touchRotate[hidden]{display:none!important}#touchToast canvas{width:33px;height:33px}#touchVerbBtn{position:absolute;pointer-events:auto;touch-action:none;padding:0;border-radius:50%;background:#080c1694;border:2px solid rgba(143,180,255,.6);display:flex;align-items:center;justify-content:center;opacity:.72;min-width:0;min-height:0}#touchVerbBtn:active{opacity:1}#touchVerbBtn canvas{width:44px;height:44px}#touchRotate{position:absolute;top:max(6px,env(safe-area-inset-top));left:calc(max(6px,env(safe-area-inset-left)) + var(--menuw, 48px) + 12px);right:12px;display:none;align-items:center;justify-content:center;gap:10px;padding:9px 14px;border-radius:12px;background:#283e78f0;color:#fff;font:600 15px/1.25 system-ui,-apple-system,sans-serif;text-align:left}#touchRotate svg{width:30px;height:30px;flex:0 0 auto}
