/* Bone keys use the existing timeline's space and standard semantic coordinates. */
.mpe-host{min-width:0;margin:4px 0;border-top:var(--cb-border-width) solid var(--cb-border);border-bottom:var(--cb-border-width) solid var(--cb-border)}
.mpe-host[hidden]{display:none!important}
.mpe-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--cb-editor-space) * 0.5);min-height:30px;padding:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.05);color:var(--cb-text);cursor:pointer;list-style:none;font-size:calc(11px * var(--cb-type-scale))}
.mpe-panel>summary::-webkit-details-marker{display:none}.mpe-panel>summary strong{font-size:calc(11px * var(--cb-type-scale));font-weight:600;display:flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.3)}.mpe-panel>summary strong::before{content:'›';font-size:calc(16px * var(--cb-type-scale));line-height:12px;transform:rotate(0)}.mpe-panel[open]>summary strong::before{transform:rotate(90deg)}
.mpe-panel>summary>span{font-size:calc(10px * var(--cb-type-scale));color:var(--cb-muted);white-space:nowrap}
.mpe-body{padding:calc(var(--cb-editor-space) * 0.1) 0 calc(var(--cb-editor-space) * 0.35);min-width:0}.mpe-line,.mpe-selection-tools{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.5);margin-bottom:6px;min-width:0}
.mpe-group{display:flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.2);min-width:0;flex-wrap:wrap}.mpe-panel label{display:inline-flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.2);font-size:calc(10px * var(--cb-type-scale));color:var(--cb-text);min-width:0;white-space:nowrap}
.mpe-panel select{max-width:180px;text-overflow:ellipsis}.mpe-panel [data-mpe-field=slot]{max-width:180px}.mpe-panel [data-mpe-field=layer]{max-width:180px}.mpe-panel [data-mpe-field=move]{width:48px}
.mpe-frame{font-size:calc(10px * var(--cb-type-scale));white-space:nowrap;color:var(--cb-muted);font-variant-numeric:tabular-nums}.mpe-layer-note{margin:0 0 7px;font-size:calc(10px * var(--cb-type-scale));color:var(--cb-muted);line-height:calc(1.5 * var(--cb-leading-scale))}
.mpe-transform-row{display:flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.35);margin-bottom:6px;min-width:0}.mpe-transform-row[hidden]{display:none!important}.mpe-transform-row>span{font-size:calc(10px * var(--cb-type-scale));color:var(--cb-text);width:43px;flex-shrink:0}.mpe-transform-row>label{flex:1;min-width:0}.mpe-panel .mpe-transform-row input{width:100%;min-width:40px;font-size:calc(11px * var(--cb-type-scale))}
.mpe-selection-tools{padding-top:calc(var(--cb-editor-space) * 0.2);border-top:var(--cb-border-width) solid var(--cb-border)}.mpe-selection-tools button{padding-left:calc(var(--cb-editor-space) * 0.3);padding-right:calc(var(--cb-editor-space) * 0.3);font-size:calc(10px * var(--cb-type-scale))}
.mpe-key-list{max-height:130px;min-height:25px;overflow:auto;border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 0.33333);background:var(--cb-surface);scrollbar-width:thin;scrollbar-color:#bed0b3 transparent;overscroll-behavior:contain}
.mpe-key-head,.mpe-key-row{display:grid;grid-template-columns:22px minmax(90px,1fr) 53px 64px 44px;align-items:center;gap:5px;min-width:290px;padding:3px 6px;font-size:calc(10px * var(--cb-type-scale));color:var(--cb-muted);min-height:27px;font-variant-numeric:tabular-nums}.mpe-key-head{min-height:23px;position:sticky;top:0;background:var(--cb-inset);border-bottom:var(--cb-border-width) solid var(--cb-border);color:var(--cb-muted);z-index:1;font-size:calc(9px * var(--cb-type-scale))}.mpe-key-row+.mpe-key-row{border-top:var(--cb-border-width) solid var(--cb-border)}.mpe-key-row.is-selected{background:var(--cb-selected)}.mpe-key-row:hover{background:var(--cb-hover)}
.mpe-panel .mpe-key-row input[type=checkbox]{width:13px;min-width:13px;min-height:13px;height:13px;margin:0;padding:0;accent-color:var(--cb-primary);cursor:pointer}
.mpe-panel .mpe-key-row button{border:0;background:transparent;border-radius:calc(var(--cb-radius) * 0.16667);font-size:calc(10px * var(--cb-type-scale));min-height:24px;height:24px;justify-content:flex-start;padding:2px 0;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.mpe-key-row>span{text-align:right}.mpe-key-head>span:nth-child(n+3){text-align:right}.mpe-empty{padding:calc(var(--cb-editor-space) * 0.4);color:var(--cb-muted);font-size:calc(10px * var(--cb-type-scale))}
.mpe-curve-details{margin-top:6px}.mpe-curve-details>summary{padding:calc(var(--cb-editor-space) * 0.15) 0;cursor:pointer;color:var(--cb-muted);font-size:calc(10px * var(--cb-type-scale))}.mpe-curve-details>.mpe-line{margin:4px 0}.mpe-curve{min-height:75px;border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 0.33333);background:var(--cb-surface);overflow:hidden;font-size:calc(10px * var(--cb-type-scale));color:var(--cb-muted);padding:calc(var(--cb-editor-space) * 0.15)}.mpe-curve svg{display:block;width:100%;height:100px;overflow:visible;touch-action:none}.mpe-curve text{fill:var(--cb-muted);font-size:calc(8px * var(--cb-type-scale));font-variant-numeric:tabular-nums}.mpe-zero{stroke:var(--cb-muted);stroke-width:1;stroke-dasharray:3 3}.mpe-curve-path{fill:none;stroke:var(--cb-text);stroke-width:1.6;vector-effect:non-scaling-stroke}.mpe-cursor{stroke:var(--cb-muted);stroke-width:1;stroke-dasharray:4 3;pointer-events:none}.mpe-curve-key{fill:var(--cb-muted);stroke:var(--cb-on-primary);stroke-width:1.5;cursor:ew-resize;touch-action:none}.mpe-curve-key.is-selected{fill:var(--cb-on-selected);stroke:var(--cb-on-selected)}
.mpe-status{font-size:calc(10px * var(--cb-type-scale));color:var(--cb-muted);line-height:calc(1.5 * var(--cb-leading-scale));white-space:pre-wrap;overflow-wrap:anywhere;margin-top:5px}.mpe-status:empty{display:none}.mpe-status[data-error=true]{color:var(--cb-danger-ink)}
.mpe-panel summary:focus-visible{outline:max(2px, var(--cb-border-width)) solid var(--cb-focus);outline-offset:2px}
@media(max-width:500px){.mpe-panel select,.mpe-panel [data-mpe-field=slot],.mpe-panel [data-mpe-field=layer]{max-width:137px}.mpe-transform-row{gap:calc(var(--cb-editor-space) * 0.2)}.mpe-transform-row>span{width:39px}.mpe-key-head,.mpe-key-row{grid-template-columns:20px minmax(90px,1fr) 45px 58px 40px;gap:4px}.mpe-frame{font-size:calc(9px * var(--cb-type-scale))}.mpe-panel .mpe-transform-row input{font-size:calc(10px * var(--cb-type-scale));padding-left:calc(var(--cb-editor-space) * 0.2)}}

/* Docked animation editing uses real joint tracks and a separate inspector. */
.mpe-host.mpe-workspace{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;margin:0;border:0;background:var(--cb-raised);overflow:hidden}
.mpe-tools-host{margin:7px 0;padding-top:calc(var(--cb-editor-space) * 0.35);border-bottom:0}
.mpe-workspace-toolbar,.mpe-workspace-options{display:flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.4);min-width:0;flex-shrink:0;padding:calc(var(--cb-editor-space) * 0.2) calc(var(--cb-editor-space) * 0.45);border-bottom:var(--cb-border-width) solid var(--cb-border)}
.mpe-workspace-toolbar{min-height:33px;background:var(--cb-inset)}
.mpe-view-tabs{display:flex;gap:calc(var(--cb-editor-space) * 0.1);flex-shrink:0;padding:calc(var(--cb-editor-space) * 0.1);border-radius:calc(var(--cb-radius) * 0.41667);background:var(--cb-inset)}
.mpe-workspace .mpe-view-tabs button{border:0;min-height:24px;height:24px;padding:calc(var(--cb-editor-space) * 0.1) calc(var(--cb-editor-space) * 0.5);background:transparent;font-size:calc(11px * var(--cb-type-scale));border-radius:calc(var(--cb-radius) * 0.25)}
.mpe-workspace .mpe-view-tabs button[aria-selected=true]{background:var(--cb-selected);color:var(--cb-on-selected);box-shadow:var(--cb-shadow)}
.mpe-layer-caption{font-size:calc(10px * var(--cb-type-scale));color:var(--cb-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-right:auto}
.mpe-workspace label{display:inline-flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.2);font-size:calc(10px * var(--cb-type-scale));color:var(--cb-text);white-space:nowrap}
.mpe-workspace select{height:25px;min-height:25px;font-size:calc(10px * var(--cb-type-scale));padding:2px 5px;max-width:175px}
.mpe-workspace-options{min-height:31px;flex-wrap:wrap;gap:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.45)}
.mpe-hint{font-size:calc(10px * var(--cb-type-scale));color:var(--cb-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:auto}
.mpe-workspace-content{display:flex;flex:1;min-height:0;min-width:0;overflow:hidden}
.mpe-workspace>.mpe-status{margin:0;padding:calc(var(--cb-editor-space) * 0.1) calc(var(--cb-editor-space) * 0.5) calc(var(--cb-editor-space) * 0.2);flex-shrink:0;line-height:calc(1.3 * var(--cb-leading-scale))}
.mpe-workspace>.mpe-status:empty{display:none}
.mpe-track-scroll{width:100%;height:100%;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#b9cdb0 #f3f7ef;overscroll-behavior:contain}
.mpe-track-ruler,.mpe-track-row{display:grid;grid-template-columns:138px minmax(var(--mpe-lane-width,480px),1fr);min-width:calc(138px + var(--mpe-lane-width,480px));min-height:27px;width:100%;border-bottom:var(--cb-border-width) solid var(--cb-border)}
.mpe-track-ruler{position:sticky;top:0;z-index:3;background:var(--cb-inset);color:var(--cb-muted);font-size:calc(9px * var(--cb-type-scale));min-height:23px}
.mpe-track-ruler>span{position:sticky;left:0;background:var(--cb-inset);z-index:2;padding:4px 8px;border-right:var(--cb-border-width) solid var(--cb-border)}
.mpe-track-ruler>div{position:relative;overflow:hidden;height:23px}
.mpe-track-ruler>div>span{position:absolute;top:5px;transform:translateX(-50%);font-variant-numeric:tabular-nums}
.mpe-track-ruler>div>span:first-child{transform:none;padding-left:3px}.mpe-track-ruler>div>span:last-child{transform:translateX(-100%);padding-right:3px}
.mpe-workspace button.mpe-track-label{position:sticky;left:0;z-index:2;display:flex;justify-content:space-between;gap:6px;width:100%;min-width:0;min-height:27px;height:27px;padding:3px 9px;border:0;border-radius:0;border-right:var(--cb-border-width) solid var(--cb-border);background:var(--cb-raised);color:var(--cb-text);text-align:left;overflow:hidden;text-overflow:ellipsis;font-size:calc(11px * var(--cb-type-scale))}
.mpe-track-label small{font-size:calc(9px * var(--cb-type-scale));color:var(--cb-muted)}
.mpe-track-row.is-active .mpe-track-label{background:var(--cb-selected);color:var(--cb-on-selected);font-weight:600}
.mpe-track-row.is-active .mpe-key-lane{background-color:var(--cb-selected)}
.mpe-key-lane{position:relative;min-height:27px;cursor:crosshair;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 1px),var(--cb-inset) calc(10% - 1px),var(--cb-inset) 10%)}
.mpe-workspace .mpe-key-diamond{position:absolute;top:9px;width:9px;min-width:9px;height:9px;min-height:9px;margin-left:-4px;padding:0;border:var(--cb-border-width) solid var(--cb-border-strong);border-radius:calc(var(--cb-radius) * 0.08333);background:var(--cb-inset);transform:rotate(45deg);cursor:ew-resize;touch-action:none;z-index:1;box-shadow:0 0 0 1px var(--cb-shadow-ink)}
.mpe-workspace .mpe-key-diamond.is-selected{background:var(--cb-selected);border-color:var(--cb-border-strong);box-shadow:0 0 0 2px var(--cb-focus)}
.mpe-workspace .mpe-key-diamond.is-cropped{opacity:.45}
.mpe-workspace .mpe-source-key{fill:var(--cb-muted);background:var(--cb-inset);stroke:var(--cb-on-primary);border-color:var(--cb-border-strong);cursor:pointer}
.mpe-workspace .mpe-source-key.is-cropped{opacity:.3}
.mpe-lane-cursor{position:absolute;top:0;bottom:0;width:1px;background:var(--cb-inset);pointer-events:none;z-index:1}
.mpe-workspace-curve{position:relative;flex:1;min-height:0;min-width:0;width:100%;border:0;border-radius:0;background:var(--cb-surface);padding:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#bed0b3 transparent}
.mpe-workspace-curve svg{display:block;width:100%;height:100%;min-height:150px;overflow:visible}
.mpe-workspace-curve svg text{font-size:calc(8px * var(--cb-type-scale));fill:var(--cb-muted)}
.mpe-workspace-curve .mpe-curve-path{stroke:var(--cb-text);stroke-width:1.8}
.mpe-grid-line{stroke:var(--cb-border);stroke-width:.7;vector-effect:non-scaling-stroke}
.mpe-curve-empty{display:flex;align-items:center;justify-content:center;gap:calc(var(--cb-editor-space) * 0.5);width:100%;height:100%;min-height:100px;color:var(--cb-muted);font-size:calc(11px * var(--cb-type-scale))}
.mpe-inspector{font-size:calc(11px * var(--cb-type-scale));color:var(--cb-text)}
.mpe-inspector .mpe-line{margin-bottom:7px;gap:calc(var(--cb-editor-space) * 0.25)}
.mpe-inspector label{font-size:calc(11px * var(--cb-type-scale))}
.mpe-inspector [data-mpe-field=slot]{max-width:160px}
.mpe-inspector [data-mpe-field=layer]{max-width:190px}
.mpe-inspector .mpe-transform-row{gap:calc(var(--cb-editor-space) * 0.25)}
.mpe-inspector .mpe-transform-row input{min-width:0;width:100%;font-size:calc(11px * var(--cb-type-scale))}
.mpe-inspector .mpe-selection-tools{gap:calc(var(--cb-editor-space) * 0.3);margin-top:7px;padding-top:calc(var(--cb-editor-space) * 0.35)}
.mpe-inspector .mpe-layer-note{font-size:calc(10px * var(--cb-type-scale));margin:2px 0 0;color:var(--cb-muted)}
.mpe-workspace .mpe-curve-key:focus-visible{outline:0;stroke:var(--cb-text);stroke-width:3}
@media(max-width:700px){.mpe-track-ruler,.mpe-track-row{grid-template-columns:116px minmax(var(--mpe-lane-width,480px),1fr);min-width:calc(116px + var(--mpe-lane-width,480px))}.mpe-workspace-toolbar{gap:calc(var(--cb-editor-space) * 0.25)}.mpe-workspace .mpe-view-tabs button{padding-left:calc(var(--cb-editor-space) * 0.35);padding-right:calc(var(--cb-editor-space) * 0.35)}.mpe-hint{display:none}}

/* One tree stays beside either the frame grid or the pixel-sized curve plot. */
.mpe-workspace-toolbar{flex-wrap:wrap;gap:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.45)}.mpe-auto-key{gap:calc(var(--cb-editor-space) * 0.2)!important;color:var(--cb-text)!important}.mpe-auto-key input{width:13px!important;min-width:13px!important;height:13px!important;min-height:13px!important;margin:0;padding:0;accent-color:var(--cb-primary)}
.mpe-bone-tree{flex:0 0 190px;width:190px;min-width:130px;max-width:35%;min-height:0;overflow:auto;border-right:var(--cb-border-width) solid var(--cb-border);background:var(--cb-inset);scrollbar-width:thin;scrollbar-color:#b9cdb0 #f3f7ef;overscroll-behavior:contain}
.mpe-tree-heading,.mpe-grid-ruler{box-sizing:border-box;height:25px;min-height:25px;position:sticky;top:0;z-index:3;background:var(--cb-inset);border-bottom:var(--cb-border-width) solid var(--cb-border);color:var(--cb-muted);font-size:calc(10px * var(--cb-type-scale))}
.mpe-tree-heading{padding:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.45)}.mpe-tree-row{box-sizing:border-box;display:flex;align-items:center;height:28px;min-height:28px;border-bottom:var(--cb-border-width) solid var(--cb-border);padding-left:calc(var(--mpe-depth)*10px);white-space:nowrap;overflow:hidden}
.mpe-tree-row.is-active{background:var(--cb-selected)}.mpe-tree-row.is-unmapped{opacity:.5}
.mpe-workspace .mpe-tree-toggle,.mpe-tree-spacer{flex:0 0 18px;width:18px;min-width:18px;padding:0;border:0;background:transparent;text-align:center;color:var(--cb-text);font-size:calc(13px * var(--cb-type-scale))}
.mpe-workspace .mpe-tree-toggle{height:25px;min-height:25px;border-radius:0}.mpe-workspace .mpe-tree-label{display:flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.2);justify-content:space-between;flex:1;min-width:0;height:27px;min-height:27px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:0;border-radius:0;padding:calc(var(--cb-editor-space) * 0.15) calc(var(--cb-editor-space) * 0.35) calc(var(--cb-editor-space) * 0.15) calc(var(--cb-editor-space) * 0.1);background:transparent;color:var(--cb-text);text-align:left;font-size:calc(11px * var(--cb-type-scale))}
.mpe-tree-label small{font-size:calc(9px * var(--cb-type-scale));color:var(--cb-muted);flex-shrink:0}.mpe-tree-row.is-active .mpe-tree-label{font-weight:600;color:var(--cb-on-selected)}
.mpe-workspace-content>.mpe-track-scroll{flex:1;min-width:0;width:auto}.mpe-grid-content{min-width:var(--mpe-lane-width,420px);width:100%}.mpe-grid-ruler{overflow:hidden}.mpe-grid-ruler>span{position:absolute;top:5px;transform:translateX(-50%);font-variant-numeric:tabular-nums}.mpe-grid-ruler>span:first-child{transform:none;padding-left:calc(var(--cb-editor-space) * 0.15)}.mpe-grid-ruler>span:last-child{transform:translateX(-100%);padding-right:calc(var(--cb-editor-space) * 0.15)}
.mpe-grid-row{height:28px;min-height:28px;box-sizing:border-box;border-bottom:var(--cb-border-width) solid var(--cb-border)}.mpe-grid-row .mpe-key-lane{height:27px;min-height:27px;background-image:linear-gradient(to right,var(--cb-inset) 1px,transparent 1px);background-size:var(--mpe-grid-step,4.1667%) 100%;background-repeat:repeat-x}.mpe-grid-row.is-active .mpe-key-lane{background-color:var(--cb-selected)}
.mpe-workspace-curve{flex:1;min-width:0;width:auto;overscroll-behavior:contain}.mpe-workspace-curve svg{max-width:none;max-height:none;min-height:0;overflow:hidden;flex-shrink:0}.mpe-workspace-curve svg text{font:calc(11px * var(--cb-type-scale)) var(--cb-font);fill:var(--cb-muted);letter-spacing:0}
.mpe-picker-row{display:flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.4);margin-bottom:6px;min-width:0}.mpe-picker-row>span{font-size:calc(11px * var(--cb-type-scale));color:var(--cb-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mpe-inspector .mpe-picker-button{font-size:calc(11px * var(--cb-type-scale));padding:calc(var(--cb-editor-space) * 0.2) calc(var(--cb-editor-space) * 0.45);min-height:28px;white-space:nowrap;flex-shrink:0}
.mpe-inspector [data-mpe-bone-label]{font-size:calc(11px * var(--cb-type-scale));font-weight:600;color:var(--cb-text)}.mpe-transform-group{border-top:var(--cb-border-width) solid var(--cb-border);margin:5px 0;padding-top:calc(var(--cb-editor-space) * 0.2)}.mpe-transform-group h4{font-size:calc(10px * var(--cb-type-scale) * var(--cb-heading-scale));line-height:16px;font-weight:var(--cb-heading-weight);margin:0 0 1px;color:var(--cb-heading)}
.mpe-inspector .mpe-axis-control{display:flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.35);min-width:0;width:100%;height:25px;margin:2px 0;font-size:calc(11px * var(--cb-type-scale))}.mpe-axis{width:15px;flex:0 0 15px;font-weight:600}.mpe-axis-x{color:var(--cb-axis-x)}.mpe-axis-y{color:var(--cb-axis-y)}.mpe-axis-z{color:var(--cb-axis-z)}
.mpe-inspector .mpe-axis-control input[type=range]{flex:1;min-width:35px;width:auto;height:18px;min-height:18px;padding:0;border:0;background:transparent;accent-color:var(--cb-primary);cursor:ew-resize}.mpe-inspector .mpe-axis-control input[type=number]{flex:0 0 68px;width:68px;min-width:0;min-height:24px;height:24px;padding:calc(var(--cb-editor-space) * 0.1) calc(var(--cb-editor-space) * 0.25);font-size:calc(11px * var(--cb-type-scale))}
.mpe-inspector .mpe-axis-control input:disabled{opacity:.42}.mpe-inspector .mpe-selection-tools{margin-top:6px;padding-top:calc(var(--cb-editor-space) * 0.3)}.mpe-tree-label:focus-visible,.mpe-tree-toggle:focus-visible{outline:max(2px, var(--cb-border-width)) solid var(--cb-focus);outline-offset:-2px}
@media(max-width:700px){.mpe-bone-tree{flex-basis:150px;width:150px;min-width:115px;max-width:40%}.mpe-tree-row{padding-left:calc(var(--mpe-depth)*7px)}.mpe-workspace-options{gap:calc(var(--cb-editor-space) * 0.2) calc(var(--cb-editor-space) * 0.35)}.mpe-workspace-options select{max-width:145px}.mpe-workspace-toolbar .mpe-layer-caption{display:none}.mpe-transform-group{margin-top:4px}}

.mpe-curve-processing{display:flex;align-items:center;flex-wrap:wrap;gap:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.45);padding:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.4);border-bottom:var(--cb-border-width) solid var(--cb-border);flex-shrink:0;font-size:calc(10px * var(--cb-type-scale))}.mpe-curve-processing label{display:flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.2);white-space:nowrap}.mpe-curve-processing input[type=number]{width:44px}.mpe-curve-processing input[type=range]{width:74px;min-width:45px;height:18px;accent-color:var(--cb-primary)}.mpe-curve-processing input[type=checkbox]{width:12px;height:12px}.mpe-curve-processing button,.mpe-curve-processing select,.mpe-curve-processing input[type=number]{font:inherit;padding:3px 5px;border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 0.33333);background:var(--cb-surface);color:inherit}.mpe-curve-processing small{margin-left:auto;color:var(--cb-muted);font-size:calc(9px * var(--cb-type-scale))}.mpe-curve-processing output{min-width:28px;font-variant-numeric:tabular-nums}
.mpe-curve-processing [data-mpe-processing-help]{flex-basis:100%;margin:0;line-height:calc(1.5 * var(--cb-leading-scale));white-space:normal}.mpe-curve-processing .mpe-process-primary{background:var(--cb-primary);border-color:var(--cb-primary);color:var(--cb-on-primary)}.mpe-curve-processing button:disabled{opacity:.45;cursor:default}

/* Absolute keyframe clips expose their stored TRS channels without adding keys. */
.mpe-workspace[data-mpe-source=clip]{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#b9cdb0 #f3f7ef}
.mpe-workspace[data-mpe-source=clip]>.mpe-workspace-toolbar,.mpe-workspace[data-mpe-source=clip]>.mpe-workspace-options{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;min-height:34px;scrollbar-width:thin}
.mpe-workspace[data-mpe-source=clip]>.mpe-workspace-toolbar>*,.mpe-workspace[data-mpe-source=clip]>.mpe-workspace-options>*{flex-shrink:0}
.mpe-workspace[data-mpe-source=clip] .mpe-layer-caption,.mpe-workspace[data-mpe-source=clip] .mpe-hint{display:none}
.mpe-workspace[data-mpe-source=clip]>.mpe-workspace-content{flex:1 0 140px;min-height:140px}
.mpe-clip-processing{gap:calc(var(--cb-editor-space) * 0.2);padding:calc(var(--cb-editor-space) * 0.15) calc(var(--cb-editor-space) * 0.4);align-items:flex-start}.mpe-clip-processing>button,.mpe-clip-processing summary{box-sizing:border-box;min-height:24px;height:24px;line-height:16px;font-size:calc(10px * var(--cb-type-scale));padding:calc(var(--cb-editor-space) * 0.15) calc(var(--cb-editor-space) * 0.3)}.mpe-process-settings{font-size:calc(10px * var(--cb-type-scale));color:var(--cb-text)}.mpe-process-settings summary{cursor:pointer;white-space:nowrap;border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 0.33333);background:var(--cb-raised)}.mpe-process-settings[open]{flex-basis:100%;order:2}.mpe-process-settings[open]>summary{width:max-content}.mpe-process-settings>div{display:flex;flex-wrap:wrap;align-items:center;gap:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.45);padding:calc(var(--cb-editor-space) * 0.3) 0 calc(var(--cb-editor-space) * 0.15)}.mpe-process-settings summary:focus-visible{outline:max(2px, var(--cb-border-width)) solid var(--cb-focus);outline-offset:2px}
.mpe-workspace-options [data-mpe-field=snap-frames]{width:12px;min-width:12px;height:12px;min-height:12px;margin:0;accent-color:var(--cb-primary)}
.mpe-workspace-toolbar>.mpe-clip-toolbar{flex-wrap:nowrap;white-space:nowrap;padding:0;border:0;background:transparent}
.mpe-workspace-toolbar>.mpe-clip-toolbar button{order:-1}
.mpe-clip-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.45);padding:calc(var(--cb-editor-space) * 0.25) calc(var(--cb-editor-space) * 0.45);border-bottom:var(--cb-border-width) solid var(--cb-border);background:var(--cb-inset);flex:0 0 auto;font-size:calc(10px * var(--cb-type-scale));color:var(--cb-text)}.mpe-clip-toolbar button{font:inherit;min-height:25px;padding:calc(var(--cb-editor-space) * 0.15) calc(var(--cb-editor-space) * 0.35);border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 0.33333);background:var(--cb-surface);color:var(--cb-text);cursor:pointer}.mpe-clip-toolbar button:disabled{opacity:.5;cursor:default}.mpe-clip-toolbar button:focus-visible{outline:max(2px, var(--cb-border-width)) solid var(--cb-focus);outline-offset:2px}.mpe-clip-lock{padding:calc(var(--cb-editor-space) * 0.1) calc(var(--cb-editor-space) * 0.25);border-radius:calc(var(--cb-radius) * 0.25);background:var(--cb-inset)}.mpe-clip-lock[data-mpe-clip-locked=true]{background:var(--cb-inset);color:var(--cb-text)}.mpe-clip-legend{display:inline-flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.2);white-space:nowrap;margin-left:auto}.mpe-clip-legend i{width:7px;height:7px;border-radius:calc(var(--cb-radius) * 0.08333);display:inline-block;background:var(--cb-inset)}.mpe-clip-legend i[data-path=rotation]{background:var(--cb-inset)}.mpe-clip-legend i[data-path=scale]{background:var(--cb-inset)}
.mpe-workspace[data-mpe-source=clip] .mpe-grid-row,.mpe-workspace[data-mpe-source=clip] .mpe-tree-row{height:52px;min-height:52px}.mpe-workspace[data-mpe-source=clip] .mpe-grid-row .mpe-key-lane{height:51px;min-height:51px;background-image:linear-gradient(to right,var(--cb-inset) 1px,transparent 1px),linear-gradient(to bottom,transparent 16px,var(--cb-inset) 16px,var(--cb-inset) 17px,transparent 17px,transparent 33px,var(--cb-inset) 33px,var(--cb-inset) 34px,transparent 34px)}.mpe-workspace[data-mpe-source=clip] .mpe-key-diamond[data-mpe-clip-path=translation]{top:4px;background:var(--cb-inset);border-color:var(--cb-border-strong)}.mpe-workspace[data-mpe-source=clip] .mpe-key-diamond[data-mpe-clip-path=rotation]{top:21px;background:var(--cb-inset);border-color:var(--cb-border-strong)}.mpe-workspace[data-mpe-source=clip] .mpe-key-diamond[data-mpe-clip-path=scale]{top:38px;background:var(--cb-inset);border-color:var(--cb-border-strong)}.mpe-workspace[data-mpe-source=clip] .mpe-key-diamond.is-selected{box-shadow:0 0 0 2px var(--cb-focus);border-color:var(--cb-border-strong)}.mpe-workspace[data-mpe-source=clip] .mpe-key-diamond.is-locked{border-color:var(--cb-border-strong);border-width:calc(var(--cb-border-width) * 2);cursor:pointer}.mpe-workspace[data-mpe-source=clip] .mpe-curve-key.is-locked{stroke:var(--cb-text);stroke-width:2;cursor:pointer}.mpe-workspace[data-mpe-source=clip] .mpe-curve-key.is-selected{fill:var(--cb-on-selected);stroke:var(--cb-on-selected);stroke-width:2.5}.mpe-workspace[data-mpe-source=clip] .mpe-curve-processing small{color:var(--cb-muted)}
.mpe-workspace-curve{position:relative}.mpe-curve-before{fill:none;stroke:var(--cb-muted);stroke-width:1.5;stroke-dasharray:5 4;vector-effect:non-scaling-stroke;pointer-events:none}.mpe-curve-comparison{position:absolute;top:3px;right:18px;z-index:2;display:flex;align-items:center;gap:calc(var(--cb-editor-space) * 0.45);background:color-mix(in srgb, var(--cb-surface) 92.94118%, transparent);padding:calc(var(--cb-editor-space) * 0.1) calc(var(--cb-editor-space) * 0.25);border-radius:calc(var(--cb-radius) * 0.33333);font-size:calc(10px * var(--cb-type-scale));color:var(--cb-text)}.mpe-curve-comparison strong{font-weight:500;color:var(--cb-text)}.mpe-workspace .mpe-curve-comparison button{min-height:18px;height:18px;min-width:18px;padding:0;border:0;background:transparent;color:var(--cb-muted);font-size:calc(15px * var(--cb-type-scale));line-height:18px}
.mpe-process-dialog{box-sizing:border-box;width:min(780px,calc(100vw - 28px));max-width:calc(100vw - 28px);max-height:calc(100dvh - 36px);padding:0;border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 1);background:var(--cb-raised);color:var(--cb-text);box-shadow:var(--cb-shadow);font:calc(13px * var(--cb-type-scale))/calc(1.55 * var(--cb-leading-scale)) var(--cb-font);overflow:auto;overscroll-behavior:contain}.mpe-process-dialog::backdrop{background:color-mix(in srgb, var(--cb-overlay-ink) 39.60784%, transparent)}.mpe-process-heading{padding:calc(var(--cb-editor-space) * 0.85) calc(var(--cb-editor-space) * 1.05) calc(var(--cb-editor-space) * 0.6);border-bottom:var(--cb-border-width) solid var(--cb-border);background:var(--cb-inset)}.mpe-process-heading h2{margin:0;font-size:calc(17px * var(--cb-type-scale) * var(--cb-heading-scale));font-weight:var(--cb-heading-weight);line-height:calc(1.4 * var(--cb-leading-scale))}.mpe-process-body{padding:calc(var(--cb-editor-space) * 0.75) calc(var(--cb-editor-space) * 1.05) calc(var(--cb-editor-space) * 0.9)}.mpe-process-summary{margin:0 0 14px;font-size:calc(12px * var(--cb-type-scale));color:var(--cb-text)}.mpe-process-dialog progress{display:block;width:100%;height:13px;margin:18px 0 12px;accent-color:var(--cb-primary)}.mpe-process-dialog [data-mpe-process-status]{margin:7px 0 3px;font-variant-numeric:tabular-nums}.mpe-process-current{min-height:20px;margin:3px 0;color:var(--cb-text);font-size:calc(12px * var(--cb-type-scale))}.mpe-process-note{margin:10px 0 0;font-size:calc(11px * var(--cb-type-scale));line-height:calc(1.65 * var(--cb-leading-scale));color:var(--cb-muted);overflow-wrap:anywhere}.mpe-process-result{margin:0 0 14px;color:var(--cb-text)}.mpe-process-stats{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:calc(var(--cb-editor-space) * 0.45);margin:0 0 18px}.mpe-process-stats>div{padding:calc(var(--cb-editor-space) * 0.6);background:var(--cb-inset);border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 0.58333)}.mpe-process-stats dt{font-size:calc(11px * var(--cb-type-scale));color:var(--cb-muted)}.mpe-process-stats dd{margin:5px 0 2px;font-size:calc(21px * var(--cb-type-scale));font-weight:600;line-height:calc(1.3 * var(--cb-leading-scale));font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.mpe-process-stats small{display:block;font-size:calc(10px * var(--cb-type-scale));color:var(--cb-muted)}.mpe-process-table{overflow:auto;border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 0.58333)}.mpe-process-table table{width:100%;border-collapse:collapse;font-size:calc(11px * var(--cb-type-scale));font-variant-numeric:tabular-nums;white-space:nowrap}.mpe-process-table caption{padding:calc(var(--cb-editor-space) * 0.45) calc(var(--cb-editor-space) * 0.55);background:var(--cb-inset);text-align:left;color:var(--cb-text);font-weight:600}.mpe-process-table th,.mpe-process-table td{padding:calc(var(--cb-editor-space) * 0.45) calc(var(--cb-editor-space) * 0.5);border-top:var(--cb-border-width) solid var(--cb-border);text-align:right}.mpe-process-table th{font-weight:500;color:var(--cb-text)}.mpe-process-table th:first-child{text-align:left}.mpe-process-skipped{margin-top:15px;padding:calc(var(--cb-editor-space) * 0.5) calc(var(--cb-editor-space) * 0.6);background:var(--cb-raised);border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 0.5);font-size:calc(12px * var(--cb-type-scale));color:var(--cb-text)}.mpe-process-skipped summary{cursor:pointer;font-weight:600}.mpe-process-skipped ul{margin:9px 0 0;padding-left:calc(var(--cb-editor-space) * 0.85);max-height:230px;overflow:auto}.mpe-process-skipped li+li{margin-top:8px}.mpe-process-skipped strong,.mpe-process-skipped span{display:block;font-size:calc(11px * var(--cb-type-scale));overflow-wrap:anywhere}.mpe-process-skipped strong{font-weight:500}.mpe-process-dialog footer{display:flex;justify-content:flex-end;padding:calc(var(--cb-editor-space) * 0.6) calc(var(--cb-editor-space) * 1.05);border-top:var(--cb-border-width) solid var(--cb-border);background:var(--cb-inset)}.mpe-process-dialog button{padding:calc(var(--cb-editor-space) * 0.35) calc(var(--cb-editor-space) * 0.9);border:var(--cb-border-width) solid var(--cb-border-strong);border-radius:calc(var(--cb-radius) * 0.5);background:var(--cb-primary);color:var(--cb-on-primary);font:inherit;cursor:pointer}.mpe-process-dialog button:disabled{opacity:.5;cursor:default}.mpe-process-dialog button:focus-visible{outline:max(3px, var(--cb-border-width)) solid var(--cb-focus);outline-offset:3px}
@media(max-width:560px){.mpe-process-stats{grid-template-columns:1fr 1fr}.mpe-process-stats>div:first-child{grid-column:1/-1}.mpe-process-heading,.mpe-process-body,.mpe-process-dialog footer{padding-left:calc(var(--cb-editor-space) * 0.7);padding-right:calc(var(--cb-editor-space) * 0.7)}.mpe-process-stats dd{font-size:calc(19px * var(--cb-type-scale))}.mpe-curve-comparison{right:5px;font-size:calc(9px * var(--cb-type-scale));gap:calc(var(--cb-editor-space) * 0.3)}}
