.stage-wrap{width:100%;position:relative;overflow:hidden}.stage{transform-origin:0 0;--m-bg:#f3f3f5;--m-surface:#fff;--m-surface-2:#f8f8fa;--m-sunken:#ebebef;--m-border:#dcdce2;--m-text:#1c1c1f;--m-text-2:#5c5c66;--m-accent:#2f6fde;--m-accent-soft:#2f6fde1f;--m-ok:#1f7a3d;--m-ok-soft:#e3f4e8;--m-phone:#e9edf4;--m-shadow:0 1px 2px #0000000f, 0 4px 16px #0000000f;--ease:cubic-bezier(.45, .05, .25, 1);color:var(--m-text);text-align:left;-webkit-user-select:none;user-select:none;font:13px/1.4 Segoe UI Variable Text,Segoe UI,system-ui,sans-serif;position:absolute;top:0;left:0}.m-app{background:var(--m-bg);transition:opacity .4s;position:absolute;inset:0;overflow:hidden}.m-app.fading{opacity:0}.m-app.static{background:0 0}.m-title{background:var(--m-surface-2);border-bottom:1px solid var(--m-border);align-items:center;gap:8px;height:32px;padding-left:12px;font-size:12px;display:flex;position:absolute;top:0;left:0;right:0}.m-title-icon{background:var(--m-accent);border-radius:4px;width:14px;height:14px}.m-winctl{height:100%;margin-left:auto;display:flex}.m-winctl i{width:46px;height:100%;position:relative}.m-winctl .min:after{content:"";background:var(--m-text);width:10px;height:1px;position:absolute;top:16px;left:18px}.m-winctl .max:after{content:"";border:1px solid var(--m-text);border-radius:1px;width:9px;height:9px;position:absolute;top:11px;left:18px}.m-winctl .close:before,.m-winctl .close:after{content:"";background:var(--m-text);width:13px;height:1px;position:absolute;top:16px;left:17px;transform:rotate(45deg)}.m-winctl .close:after{transform:rotate(-45deg)}.m-toolbar{background:var(--m-surface);border-bottom:1px solid var(--m-border);align-items:center;gap:8px;height:44px;padding:0 14px;display:flex;position:absolute;top:32px;left:0;right:0}.stage .spacer{flex:1}.stage .btn{border:1px solid var(--m-border);background:var(--m-surface);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:6px;height:28px;padding:0 11px;font-size:12.5px;transition:transform .12s,filter .12s,opacity .2s;display:inline-flex}.stage .btn.ghost{background:0 0;border-color:#0000}.stage .btn.off{opacity:.45}.stage .btn.primary{background:var(--m-accent);border-color:var(--m-accent);color:#fff}.stage .btn.pressed{filter:brightness(.85);transform:scale(.96)}.stage .kbd{color:var(--m-text-2);font-size:10.5px}.device-chip{background:var(--m-surface-2);border:1px solid var(--m-border);border-radius:999px;align-items:center;gap:8px;height:28px;padding:0 10px;font-size:12.5px;display:flex}.dot{background:var(--m-text-2);border-radius:50%;width:8px;height:8px}.dot.ok{background:var(--m-ok)}.m-sidebar{background:var(--m-surface-2);border-right:1px solid var(--m-border);width:180px;position:absolute;top:76px;bottom:44px;left:0;overflow:hidden}.stage .tabs{gap:4px;padding:10px 10px 6px;display:flex}.stage .tab{height:26px;color:var(--m-text-2);border-radius:6px;flex:1;place-items:center;font-size:12px;display:grid}.stage .tab.on{background:var(--m-surface);color:var(--m-text);box-shadow:var(--m-shadow)}.m-search{border:1px solid var(--m-border);background:var(--m-surface);height:28px;color:var(--m-text-2);border-radius:6px;align-items:center;margin:4px 10px 8px;padding:0 10px;font-size:12px;display:flex}.m-list{padding:0 6px}.m-list .list-item{border-radius:6px;align-items:center;gap:7px;height:27px;padding:0 6px;font-size:11.5px;transition:background .2s;display:flex}.m-list .list-item.on{background:var(--m-accent-soft)}.m-list .tile.sm{border-radius:22%;flex:none;width:18px;height:18px;font-size:0}.m-list .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.m-list .meta{color:var(--m-text-2);white-space:nowrap;font-size:10px}.m-canvas-head{align-items:baseline;gap:12px;display:flex;position:absolute;top:90px;left:204px}.m-canvas-head b{font-size:18px;font-weight:600}.m-canvas-head span{color:var(--m-text-2);font-size:12px}.stage .phone-page{background:var(--m-phone);height:368px;color:var(--m-text-2);border:2px solid #0000;border-radius:22px;justify-content:space-between;align-items:flex-start;padding:8px 12px;font-size:12px;font-weight:600;transition:border-color .15s;display:flex;position:absolute}.stage .drop-target{border-color:var(--m-accent)!important}.m-dock-head{color:var(--m-text-2);text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;font-weight:600;position:absolute}.stage .dock{background:var(--m-phone);border:2px solid #0000;border-radius:22px;height:74px;transition:border-color .15s;position:absolute}.m-insert{background:var(--m-accent);z-index:2;border-radius:2px;width:3px;height:40px;position:absolute}.stage .tile{color:#fff;border-radius:22%;place-items:center;width:40px;height:40px;font-size:16px;font-weight:600;transition:transform .16s,box-shadow .16s;display:grid;overflow:hidden}.stage .tile.folder{background:#7f7f8c47;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));place-items:stretch stretch;gap:2px;padding:5px}.stage .tile.folder .mini{border-radius:22%;min-width:0;min-height:0}.cell{z-index:1;width:54px;height:64px;transition:transform var(--t) var(--ease), opacity var(--t);will-change:transform;flex-direction:column;align-items:center;padding-top:4px;display:flex;position:absolute;top:0;left:0}.cell .label{text-overflow:ellipsis;white-space:nowrap;max-width:52px;margin-top:4px;font-size:10px;line-height:1.2;transition:opacity .15s;overflow:hidden}.cell.in-dock .label{display:none}.cell.tucked{opacity:0}.cell.lifted{z-index:20}.cell.lifted .tile{transform:scale(1.08);box-shadow:0 10px 20px #00000040}.cell.lifted .label{opacity:0}.cell.combine .tile{box-shadow:0 0 0 3px var(--m-accent);transform:scale(1.14)}.stage .pending{background:var(--m-surface);border-top:1px solid var(--m-border);align-items:center;gap:10px;height:44px;padding:0 16px;display:flex;position:absolute;bottom:0;left:0;right:0}.stage .pending .note{color:var(--m-text-2)}.stage .btn.review{width:132px;height:30px}.m-overlay{z-index:30;background:#0000004d;animation:.25s both m-fade;position:absolute;inset:0}.m-dialog-pos{position:absolute}.stage .dialog{background:var(--m-surface);height:100%;animation:m-pop .26s var(--ease) both;border-radius:12px;padding:20px 22px;position:relative;box-shadow:0 20px 50px #00000040}.m-app.static .dialog{box-shadow:none;border-radius:0;animation:none}.stage .dialog h4{margin:0 0 4px;font-size:19px;font-weight:600}.stage .change-list{border:1px solid var(--m-border);border-radius:8px;margin:10px 0 0;padding:0;list-style:none}.stage .change-list li{border-top:1px solid var(--m-border);padding:6px 12px;font-size:12.5px}.stage .change-list li:first-child{border-top:0}.stage .kinds{margin-top:10px}.stage .kinds>div{justify-content:space-between;align-items:center;padding:3px 0;font-size:12.5px;display:flex}.stage .pill{border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:600;display:inline-block}.stage .pill.ok{background:var(--m-ok-soft);color:var(--m-ok)}.stage .callout{background:var(--m-surface-2);border:1px solid var(--m-border);border-radius:8px;align-items:center;gap:10px;margin-top:10px;padding:8px 12px;font-size:12.5px;display:flex}.stage .callout.ok{background:var(--m-ok-soft);color:var(--m-ok);border-color:#0000;padding:12px;font-size:13.5px}.stage .callout.done .check{animation:m-pop .4s var(--ease) both;flex:none}.stage .actions{gap:8px;display:flex;position:absolute;bottom:18px;right:22px}.stage .btn.apply{width:124px;height:32px}.spinner{border:2px solid var(--m-accent-soft);border-top-color:var(--m-accent);border-radius:50%;flex:none;width:14px;height:14px;animation:.8s linear infinite m-spin}.m-cursor{z-index:40;transition:transform var(--t) var(--ease);filter:drop-shadow(0 2px 3px #0000004d);position:absolute;top:0;left:0}.m-cursor svg{transform-origin:1px 1px;transition:transform .12s;display:block}.m-cursor.down svg{transform:scale(.86)}.m-cursor.down:before{content:"";background:#2f6fde40;border-radius:50%;width:28px;height:28px;animation:.2s both m-pop;position:absolute;top:-14px;left:-14px}.phone{background:#1d1f24;border-radius:44px;transition:opacity .4s;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #3a3d45}.phone.fading{opacity:0}.screen{background:linear-gradient(165deg,#3d5fd9 0%,#6a4bd8 50%,#c9577e 100%);border-radius:34px;width:240px;height:500px;position:absolute;top:10px;left:10px;overflow:hidden}.status{color:#fff;justify-content:space-between;align-items:center;font-size:12px;font-weight:600;display:flex;position:absolute;top:12px;left:26px;right:26px}.status .bars{border:1.5px solid #ffffffe6;border-radius:3px;width:22px;height:10px}.p-cell{width:54px;height:64px;transition:transform var(--t) var(--ease);flex-direction:column;align-items:center;padding-top:2px;display:flex;position:absolute;top:0;left:0}.p-cell .label{color:#fff;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #0006;max-width:52px;margin-top:3px;font-size:9px;overflow:hidden}.p-cell.lifted{z-index:10}.p-cell.lifted .tile{transform:scale(1.18);box-shadow:0 10px 18px #00000059}.p-cell.lifted .label{opacity:0}.p-cell.main .tile{box-shadow:0 0 0 2.5px #ffd43b}.jiggle{animation:.26s ease-in-out infinite alternate m-jiggle;display:block;position:relative}.minus{background:#46464ee6;border-radius:50%;width:14px;height:14px;position:absolute;top:-5px;left:-5px}.minus:after{content:"";background:#fff;border-radius:1px;width:6px;height:1.6px;position:absolute;top:6px;left:4px}.dots{justify-content:center;gap:7px;display:flex;position:absolute;top:380px;left:0;right:0}.dots i{background:#ffffff73;border-radius:50%;width:6px;height:6px}.dots i.on{background:#fff}.dots i.ping{background:#ffd43b;animation:.6s ease-in-out 3 m-ping}.p-dock{background:#ffffff38;border-radius:26px;justify-content:space-around;align-items:center;height:74px;padding:0 8px;display:flex;position:absolute;top:402px;left:10px;right:10px}.finger{z-index:11;width:38px;height:38px;transition:transform var(--t) var(--ease);background:#ffffff4d;border:2px solid #ffffffbf;border-radius:50%;position:absolute;top:0;left:0}.p-toast{opacity:0;color:#fff;white-space:nowrap;z-index:12;background:#c4314b;border-radius:999px;padding:7px 13px;font-size:12px;font-weight:600;transition:opacity .3s,transform .3s;position:absolute;top:330px;left:50%;transform:translate(-50%,8px);box-shadow:0 6px 16px #0000004d}.p-toast.show{opacity:1;transform:translate(-50%)}.mp-page{background:var(--m-phone);border-radius:18px;width:156px;height:230px;padding:10px;position:absolute;top:10px}.mp-head{color:var(--m-text-2);font-size:11px;font-weight:600;display:block}.mp-grid{grid-template-columns:repeat(4,28px);justify-content:center;gap:9px 8px;margin-top:8px;display:grid}.mp-grid .tile{width:28px;height:28px;font-size:10px}.mp-moved .tile{box-shadow:0 0 0 2.5px var(--m-accent)}.mp-ghost{border:1.5px dashed var(--m-accent);border-radius:22%;width:28px;height:28px;display:block}.mp-arrow{position:absolute;inset:0}.m-snapshots{background:var(--m-surface-2);padding:6px;position:absolute;inset:0}.m-snapshots .snap{background:var(--m-surface);border:1px solid var(--m-border);border-radius:10px;flex-direction:column;gap:2px;margin:6px 10px;padding:10px 14px;display:flex}.m-snapshots .snap b{font-size:14px;font-weight:600}.m-snapshots .meta{color:var(--m-text-2);font-size:12px}.m-snapshots .btn{align-self:flex-start;margin-top:6px}@keyframes m-jiggle{0%{transform:rotate(-2.4deg)}to{transform:rotate(2.4deg)translateY(-.5px)}}@keyframes m-fade{0%{opacity:0}}@keyframes m-pop{0%{opacity:0;transform:scale(.94)}}@keyframes m-spin{to{transform:rotate(360deg)}}@keyframes m-ping{50%{transform:scale(1.8)}}@media (prefers-reduced-motion:reduce){.jiggle,.spinner,.dots i.ping{animation:none!important}}
