.m-only{display:none}.mpanel-grab{display:none}.case-full{display:none}.msheet{display:none}.msheet-grab{flex-shrink:0;display:grid;place-items:center;padding:9px 0 4px;cursor:grab;touch-action:none}.msheet-bar{width:46px;height:4px;border-radius:4px;background:var(--border2)}.msheet-tabs{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:2px 12px 9px;touch-action:none}.msheet-tab{font-family:var(--ui);font-size:13px;font-weight:600;color:var(--mut);background:var(--bg2);border:1px solid var(--border);padding:8px 18px;border-radius:8px;cursor:pointer;transition:.15s;touch-action:manipulation}.msheet-tab.active{color:#06170d;background:linear-gradient(135deg,var(--acc),#34d399);border-color:transparent;box-shadow:0 0 12px rgba(74,222,128,.3)}.msheet-body{flex:1;min-height:0;display:flex}.msheet-pane{width:100%;display:none;flex-direction:column;min-height:0}.msheet-pane.active{display:flex}body[data-viewport=mobile]{overscroll-behavior:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}body[data-viewport=mobile] .app{height:100vh;height:100dvh}body[data-viewport=mobile] header{flex-wrap:wrap;gap:7px 8px;padding:8px 10px}body[data-viewport=mobile] .logo{font-size:13px;gap:8px}body[data-viewport=mobile] .logo small{display:none}body[data-viewport=mobile] .logo .mark{width:22px;height:22px;border-radius:6px}body[data-viewport=mobile] .hbtn{padding:6px 10px;font-size:12px;touch-action:manipulation}body[data-viewport=mobile] #render3dBtn{display:none}body[data-viewport=mobile] #userWidget{order:6}body[data-viewport=mobile] .mode-switch{display:none}body[data-viewport=mobile] .m-row2{display:flex;order:2;margin-left:auto;gap:7px;flex:0 0 auto;min-width:0;max-width:100%}body[data-viewport=mobile] #modeSel{display:inline-block;flex:1;min-width:144px}body[data-viewport=mobile] #modeSel .sel-trigger{padding:7px 10px;font-size:12.5px}body[data-viewport=mobile] #modeSel .sel-menu{max-height:min(46vh,320px)}body[data-viewport=mobile] #modeSel .sel-opt{padding:10px 12px;font-size:13px;white-space:nowrap}body[data-viewport=mobile] .hbtn.m-case{display:inline-block;flex-shrink:0;font-weight:700;color:#06170d;background:linear-gradient(135deg,var(--acc),#34d399);border-color:transparent;box-shadow:0 0 12px rgba(74,222,128,.25)}body[data-viewport=mobile][data-morient=portrait] .m-row2{order:7;margin-left:0;flex-basis:100%}body[data-viewport=mobile] .hbtn.m-ico{display:inline-flex;align-items:center;justify-content:center;padding:7px 9px;order:4}body[data-viewport=mobile] #mSetBtn{order:5}body[data-viewport=mobile] .hbtn.m-ico svg{width:17px;height:17px;display:block}body[data-viewport=mobile] #uploadEntry .ue-lbl{display:none}body[data-viewport=mobile] #uploadEntry{order:5;padding:7px 9px}body[data-viewport=mobile] #uploadEntry svg{width:17px;height:17px;margin-right:0;display:block}body[data-viewport=mobile] main{flex-direction:column}body[data-viewport=mobile] .left{display:none}body[data-viewport=mobile] .resize-handle,body[data-viewport=mobile] .resize-handle-left{display:none}body[data-viewport=mobile] .hint{display:none}body[data-viewport=mobile] .plot-wrap{flex:1;min-height:0;touch-action:none}body[data-viewport=mobile] aside.right{display:flex;flex-shrink:0;height:50%;width:auto;min-width:0;max-width:none;max-height:none}body[data-viewport=mobile] .mpanel-grab{display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--panel);cursor:grab;touch-action:none}body[data-viewport=mobile][data-morient=portrait] .mpanel-grab{position:relative;height:calc(24px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--border)}body[data-viewport=mobile][data-morient=portrait] .mpanel-grab::after{content:'';position:absolute;left:0;right:0;top:-14px;bottom:0}body[data-viewport=mobile][data-morient=landscape] .mpanel-grab{position:relative;width:18px;border-left:1px solid var(--border)}body[data-viewport=mobile][data-morient=landscape] .mpanel-grab::after{content:'';position:absolute;top:0;bottom:0;left:-12px;right:-8px}body[data-viewport=mobile][data-morient=landscape] .mpanel-grab .msheet-bar{width:4px;height:44px}body[data-viewport=mobile] .mpanel-grab.mpanel-anim,body[data-viewport=mobile] aside.right.mpanel-anim{transition:transform .26s cubic-bezier(.4,0,.2,1);will-change:transform}body[data-viewport=mobile].m-panel-collapsed aside.right{display:none}body[data-viewport=mobile][data-morient=landscape].m-panel-collapsed .mpanel-grab{margin-right:env(safe-area-inset-right)}body[data-viewport=mobile][data-morient=landscape] main{flex-direction:row}body[data-viewport=mobile][data-morient=landscape] aside.right{width:50%;height:auto;border-left:1px solid var(--border)}body[data-viewport=mobile] .toolbar{top:10px;left:10px;padding:5px;gap:3px}body[data-viewport=mobile] .tbtn{width:38px;height:38px;touch-action:manipulation}body[data-viewport=mobile] .tbtn svg{width:18px;height:18px}body[data-viewport=mobile] .status{display:none}body[data-viewport=mobile] .msheet{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;flex-direction:column;overflow:hidden;background:var(--panel);border:1px solid var(--border2);border-bottom:none;border-radius:16px 16px 0 0;box-shadow:0 -10px 34px rgba(0,0,0,.5);padding-bottom:env(safe-area-inset-bottom);transition:height .3s cubic-bezier(.4,0,.2,1)}body[data-viewport=mobile] .msheet.dragging{transition:none}body[data-viewport=mobile] .msheet-tabs{display:none}body[data-viewport=mobile] #mPaneParams{display:none!important}body[data-viewport=mobile][data-morient=landscape] .msheet{right:50vw;left:env(safe-area-inset-left)}body[data-viewport=mobile][data-morient=landscape].m-panel-collapsed .msheet{right:0}body[data-viewport=mobile] .msheet .left-search{padding:8px 12px;border-bottom:1px solid var(--border)}body[data-viewport=mobile] .msheet .tree{flex:1;overflow-y:auto;padding:8px 8px 22px;-webkit-overflow-scrolling:touch}body[data-viewport=mobile] .case-full.show{display:flex;flex-direction:column;position:fixed;inset:0;z-index:80;background:var(--bg);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}body[data-viewport=mobile] .case-hd{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--border);background:var(--panel)}body[data-viewport=mobile] .case-title{flex:1;font-family:var(--ui);font-size:15px;font-weight:700;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body[data-viewport=mobile] .case-back,body[data-viewport=mobile] .case-x{display:inline-flex;align-items:center;gap:2px;font-family:var(--ui);font-size:13px;color:var(--mut);background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:8px 11px;cursor:pointer;transition:.15s;touch-action:manipulation}body[data-viewport=mobile] .case-back svg,body[data-viewport=mobile] .case-x svg{width:15px;height:15px;display:block}body[data-viewport=mobile] .case-back:active,body[data-viewport=mobile] .case-x:active{border-color:var(--acc);color:var(--acc)}body[data-viewport=mobile] .case-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:10px 12px 26px}body[data-viewport=mobile] .case-empty{padding:48px 0;text-align:center;color:var(--mut);font-size:13px;line-height:1.8}body[data-viewport=mobile] .case-group{display:flex;align-items:center;gap:10px;width:100%;text-align:left;font-family:var(--ui);font-size:14px;font-weight:600;color:var(--txt);background:var(--bg2);border:1px solid var(--border);border-radius:11px;padding:15px 14px;margin:9px 0;cursor:pointer;transition:.15s;touch-action:manipulation}body[data-viewport=mobile] .case-group .cg-cnt{margin-left:auto;font-size:12px;font-weight:400;color:var(--mut2)}body[data-viewport=mobile] .case-group .cg-arrow{width:15px;height:15px;color:var(--mut);flex-shrink:0}body[data-viewport=mobile] .case-group:active{border-color:var(--acc);box-shadow:0 0 0 3px rgba(74,222,128,.13)}body[data-viewport=mobile] .case-full .folder{margin:0}body[data-viewport=mobile] .case-full .folder-hd{display:none}body[data-viewport=mobile] .case-full .folder-bd{grid-template-rows:1fr}body[data-viewport=mobile] .case-full .folder-bd-in{visibility:visible;opacity:1;transition:none}body[data-viewport=mobile][data-morient=landscape] .case-body{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;align-content:start}body[data-viewport=mobile][data-morient=landscape] .case-body>.case-empty,body[data-viewport=mobile][data-morient=landscape] .case-body>.folder{grid-column:1/-1}body[data-viewport=mobile][data-morient=landscape] .case-full .folder-bd-in{display:grid;grid-template-columns:1fr 1fr;column-gap:8px}body[data-viewport=mobile] aside.right{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}body[data-viewport=mobile] aside.right .param-scroll{overflow:visible;flex:none;min-height:0}body[data-viewport=mobile] aside.right .asection{padding:12px}body[data-viewport=mobile] aside.right .param-scroll{padding:12px}body[data-viewport=mobile] aside.right .save-sec{padding:10px 12px}body[data-viewport=mobile] aside.right .def-admin-sec{padding:10px 12px}body[data-viewport=mobile] aside.right .fn-name-bar{padding:9px 12px}body[data-viewport=mobile] .srow{flex-wrap:wrap;gap:5px 7px;margin:10px 0}body[data-viewport=mobile] .srow label,body[data-viewport=mobile] .srow.brow label,body[data-viewport=mobile] .srow.crow label{flex:0 0 100%;width:auto;font-size:12.5px}body[data-viewport=mobile] .srow label.switch{flex:0 0 auto;width:38px}body[data-viewport=mobile] input[type=range]{height:6px}body[data-viewport=mobile] input[type=range]::-webkit-slider-thumb{width:22px;height:22px}body[data-viewport=mobile] input[type=range]::-moz-range-thumb{width:20px;height:20px}body[data-viewport=mobile] .sval{width:64px;padding:6px 7px;font-size:16px}body[data-viewport=mobile] .srow .range-btn{opacity:.55;width:28px;height:28px}body[data-viewport=mobile] .srow.crow .cval{font-size:12px}body[data-viewport=mobile] .color-swatch{width:42px;height:26px}body[data-viewport=mobile] .btns-item{padding:8px 13px;font-size:12.5px}body[data-viewport=mobile] .rst-btn{padding:5px 11px}body[data-viewport=mobile] .folder-hd{padding:11px 12px;font-size:13px}body[data-viewport=mobile] .leaf{padding:10px 12px}body[data-viewport=mobile] .leaf .ln{font-size:13px}body[data-viewport=mobile] .leaf .adm-more{opacity:.7}body[data-viewport=mobile] .search-box{padding:10px 12px}body[data-viewport=mobile] .search-input{font-size:16px}body[data-viewport=mobile] .modal-mask.show{align-items:flex-end}body[data-viewport=mobile] .modal-card{width:100%;max-width:640px;border-radius:16px 16px 0 0;border-bottom:none;padding-bottom:env(safe-area-inset-bottom)}body[data-viewport=mobile] .modal-card.detail{min-width:0;width:100%;max-width:640px;min-height:min(420px,62vh);max-height:82vh}body[data-viewport=mobile] .rm-row label{font-size:13px}body[data-viewport=mobile] .rm-row input{padding:10px 12px;font-size:16px}body[data-viewport=mobile] .modal-foot button{padding:10px 16px;font-size:13px}body[data-viewport=mobile] .modal-mask:has(.pc-only).show{align-items:center;justify-content:center}body[data-viewport=mobile] .modal-card.pc-only{width:auto;max-width:min(86vw,340px);border-radius:16px;border-bottom:1px solid var(--border2);padding-bottom:0;text-align:center}body[data-viewport=mobile] .pc-only .pco-ico{display:flex;justify-content:center}body[data-viewport=mobile] .pc-only .pco-ico svg{width:44px;height:44px;color:var(--acc2)}body[data-viewport=mobile] .pc-only .pco-msg{font-size:15px;font-weight:600;color:var(--txt)}body[data-viewport=mobile] .pc-only .pco-sub{font-size:12px;color:var(--mut);line-height:1.6}body[data-viewport=mobile] .r3d-row{flex-direction:column;align-items:stretch;gap:8px}body[data-viewport=mobile] .r3d-row .switch{align-self:flex-start}body[data-viewport=mobile] .r3d-row .ver-switch{white-space:normal;flex-wrap:wrap;justify-content:flex-start}body[data-viewport=mobile] .r3d-row .ver-btn{padding:8px 12px;font-size:12px}body[data-viewport=mobile] .cp-mask{align-items:flex-end}body[data-viewport=mobile] .cp-card{width:100%;max-width:640px;border-radius:16px 16px 0 0;border-bottom:none;padding-bottom:env(safe-area-inset-bottom)}body[data-viewport=mobile] .cp-body{flex-direction:column;align-items:center;gap:14px}body[data-viewport=mobile] .cp-ctrls{width:100%}body[data-viewport=mobile] .cp-hex,body[data-viewport=mobile] .cp-rgba{font-size:16px}body[data-viewport=mobile] #expr{font-size:16px;padding:11px 12px}body[data-viewport=mobile] .draw-btn{padding:0 16px}body[data-viewport=mobile] .syn-btn{padding:0 12px;font-size:13px;touch-action:manipulation}body[data-viewport=mobile] .toast{max-width:calc(100vw - 24px);min-width:0}body[data-viewport=mobile] .save-btn{padding:12px 0;font-size:13px}body[data-viewport=mobile] .anim-ctrl input[type=range]{height:6px}body[data-viewport=mobile] .ai-code-hd{margin-bottom:8px}body[data-viewport=mobile] .ai-code-hd .hd-btns .copy-btn{padding:8px 11px}body[data-viewport=mobile] .ai-code{white-space:pre-wrap;word-break:break-all}body[data-viewport=mobile][data-morient=landscape] header{padding:6px 10px;gap:5px 8px;padding-left:calc(6px + env(safe-area-inset-left));padding-right:calc(6px + env(safe-area-inset-right))}body[data-viewport=mobile][data-morient=landscape] .hbtn{padding:5px 9px}body[data-viewport=mobile][data-morient=landscape] .hbtn.m-ico{padding:6px 8px}body[data-viewport=mobile][data-morient=landscape] #modeSel .sel-trigger{padding:6px 10px}body[data-viewport=mobile][data-morient=landscape] .toolbar{top:8px;left:8px;padding:4px;gap:2px}body[data-viewport=mobile][data-morient=landscape] .tbtn{width:34px;height:34px}body[data-viewport=mobile][data-morient=landscape] .msheet-grab{padding:5px 0 2px}body[data-viewport=mobile][data-morient=landscape] .srow{margin:7px 0}body[data-viewport=mobile][data-morient=landscape] aside.right .asection{padding:10px 12px}body[data-viewport=mobile][data-morient=landscape] aside.right .param-scroll{padding:10px 12px}body[data-viewport=mobile][data-morient=landscape] .modal-mask.show{align-items:center;justify-content:center}body[data-viewport=mobile][data-morient=landscape] .modal-card{max-width:min(52vw,560px);max-height:84vh;overflow-y:auto;border-radius:16px;border-bottom:1px solid var(--border2)}