#touch-coordinates[hidden],#touch-input-panel[hidden]{display:none!important}
#touch-input-panel{position:fixed;z-index:65;right:10px;width:min(560px,calc(100vw - 20px));overflow:auto;background:#203240f5;border:1px solid #608398;border-radius:10px;box-shadow:0 8px 32px #0008;padding:8px}
#touch-input-panel>header,#touch-number-pad header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 4px 8px;color:#8cddff;font-size:13px}
#touch-input-panel>header button,#touch-number-pad header button{min-width:36px;min-height:32px;font-size:20px}
#touch-input-panel>p{font-size:13px;line-height:1.6;padding:6px;color:#c1d3df}
.mobile-studio #touch-input-panel #input-dock{max-height:none;overflow:visible}
.mobile-studio #touch-input-panel #drawing-input{grid-template-columns:1fr auto;padding:4px;gap:8px}
.mobile-studio #touch-input-panel .drawing-fields{flex-wrap:wrap;gap:8px}
.mobile-studio #touch-input-panel .drawing-fields label{flex:1 1 80px;display:flex;flex-direction:column;align-items:stretch;gap:3px}
.mobile-studio #touch-input-panel .drawing-fields input{height:38px;min-height:38px;cursor:pointer}
.mobile-studio #touch-input-panel #operation-panel form{display:flex;flex-wrap:wrap;gap:8px}
.mobile-studio #touch-input-panel #operation-panel form label{display:flex;align-items:center;gap:6px}
#touch-number-pad{width:min(380px,calc(100vw - 20px));max-height:calc(100dvh - 16px)!important;border:1px solid #65889e;border-radius:14px;background:#172935;color:#ecf6fc;padding:12px;overflow:auto;box-shadow:0 16px 65px #0009}
#touch-number-pad::backdrop{background:#05111c88}
#touch-number-pad form{display:block;margin:0}
#touch-number-pad output{display:block;text-align:right;overflow-wrap:anywhere;min-height:46px;padding:8px 12px;background:#0d1d27;border:1px solid #567587;border-radius:7px;font:26px ui-monospace,monospace}
#touch-number-pad .number-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}
#touch-number-pad .number-keys button{min-height:44px;font-size:20px;border:1px solid #557489;border-radius:7px;background:#2b4354;color:#fff;touch-action:manipulation}
#touch-number-pad .number-keys button:last-child{grid-column:span 2}
#touch-number-pad footer{display:flex!important;height:auto!important;min-height:0!important;gap:8px;padding:0}
#touch-number-pad footer button{flex:1;min-height:40px;font-size:13px}
#touch-number-pad [data-apply]{background:#146280;border:1px solid #60d2fb;color:#fff}
#touch-number-pad [role=status]{min-height:16px;font-size:12px;color:#ffcf86;margin:5px 0}
@media(max-height:480px){#touch-number-pad{padding:8px;width:360px}#touch-number-pad .number-keys{gap:4px;margin-top:6px}#touch-number-pad .number-keys button{min-height:34px;font-size:18px}#touch-number-pad output{min-height:35px;font-size:22px;padding:4px 10px}#touch-number-pad header{padding-bottom:4px}#touch-number-pad footer button{min-height:34px}}
/* Phone toolbar stays compact; XYZ is immediately after Delete. */
.mobile-studio:not(.tablet-studio) .toolbar{height:32px;min-height:32px;gap:2px}
.mobile-studio:not(.tablet-studio) .toolbar button{min-width:29px;width:29px;height:29px;padding:3px}
.mobile-studio:not(.tablet-studio) .toolbar button img{width:21px;height:21px}
.mobile-studio #touch-coordinates{font-size:11px;letter-spacing:-.5px;font-weight:700}
/* Tablet: desktop-style Scene/Properties, permanent precision mouse, no bottom navigation. */
.tablet-studio{--tablet-bottom:0px;--tablet-sidebar:clamp(220px,25vw,300px);--tablet-top:128px}
.tablet-studio #mobile-studio{height:0!important;min-height:0!important;padding:0!important;border:0!important;overflow:visible;background:none!important}
.tablet-studio #mobile-studio .mobile-navigation{display:none!important}
.tablet-studio .categories{display:flex!important;position:relative!important;inset:auto!important;width:100%!important;height:44px;min-height:44px;padding:0 8px!important}
.tablet-studio .tools{display:flex!important;position:relative!important;inset:auto!important;flex:0 0 80px;width:80px!important;max-width:80px!important;padding:0!important;overflow:auto}
.tablet-studio .tools .tool-grid{grid-template-columns:1fr!important;padding:5px;gap:5px}
.tablet-studio .tools .tool-grid button{height:65px!important;min-height:65px!important}
.tablet-studio .tools .toolbox-title{font-size:10px;padding:5px}
.tablet-studio .properties,.tablet-studio[data-mobile-panel=properties] .properties{display:flex!important;flex-direction:column;position:relative!important;inset:auto!important;flex:0 0 var(--tablet-sidebar);width:var(--tablet-sidebar)!important;max-width:var(--tablet-sidebar)!important;padding:0!important;box-shadow:none;overflow:hidden}
.tablet-studio .properties .scene-panel{height:34%;min-height:160px;overflow:auto}
.tablet-studio .properties .props-panel{flex:1;min-height:0;overflow:auto}
.tablet-studio .properties .prop-row{min-width:0}
.tablet-studio .properties input{min-width:0;max-width:100%;box-sizing:border-box}
.tablet-studio #mobile-close{display:none!important}
.tablet-studio .mobile-mouse,.tablet-studio[data-mobile-panel] .mobile-mouse,.tablet-studio.mobile-typing .mobile-mouse{display:grid!important;right:calc(var(--tablet-sidebar) + 8px);bottom:26px;width:min(440px,calc(100vw - var(--tablet-sidebar) - 96px));height:124px;grid-template-columns:1fr 1fr}
.tablet-studio .mobile-modes{flex-wrap:wrap;gap:2px}
.tablet-studio .mobile-modes button{min-height:26px!important;font-size:11px!important;flex:1 1 28%}
.tablet-studio .mobile-actions button{font-size:10px!important;min-height:32px!important}
.tablet-studio #mobile-cursor{visibility:visible}
.tablet-studio .mobile-pad span{font-size:10px}
.tablet-studio #touch-input-panel{right:calc(var(--tablet-sidebar) + 8px);width:min(560px,calc(100vw - var(--tablet-sidebar) - 24px))}
