/* Local editor controls: semantic colours preserve both studio themes. */
.me-panel{margin-top:16px;border:1px solid var(--nd-border,var(--nd-color-line));border-radius:12px;padding:16px;background:var(--nd-glass,var(--nd-surface));min-width:0;color:var(--nd-ink,var(--nd-color-text-primary))}
.me-panel:focus-visible{outline:2px solid var(--nd-brand,var(--nd-color-accent));outline-offset:3px}
.me-heading,.me-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.me-label{font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--nd-secondary,var(--nd-color-text-secondary))}
.me-heading output,.me-foot output{font-size:12px;line-height:1.5;font-weight:500;font-variant-numeric:tabular-nums}
.me-timeline{position:relative;margin:12px 0 6px;height:44px;display:flex;align-items:center}
.me-track{position:absolute;inset:13px 0;border-radius:4px;background:var(--nd-control,var(--nd-surface-raised));overflow:hidden;pointer-events:none}
.me-track i{position:absolute;inset-block:0;background:var(--nd-lime,var(--nd-color-accent));opacity:.65}
.me-track b{position:absolute;width:2px;height:100%;background:var(--nd-ink,var(--nd-color-text-primary));transform:translateX(-1px)}
.me-panel .me-timeline input[type=range]{appearance:none;-webkit-appearance:none;width:100%;height:44px;margin:0;padding:0;cursor:ew-resize;accent-color:var(--nd-color-accent);background:transparent!important;border:0;position:relative}
.me-timeline input[type=range]::-webkit-slider-runnable-track{height:12px;background:transparent}
.me-timeline input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;height:22px;width:10px;margin-top:-5px;border:1px solid var(--nd-color-control-border);border-radius:4px;background:var(--nd-color-accent)}
.me-timeline input[type=range]::-moz-range-track{height:12px;background:transparent}
.me-timeline input[type=range]::-moz-range-thumb{height:22px;width:10px;border:1px solid var(--nd-color-control-border);border-radius:4px;background:var(--nd-color-accent)}
.me-transport{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.me-panel .btn{min-height:44px;white-space:nowrap;padding:8px 11px}
.me-panel [data-me=play]{min-width:112px}
.me-panel [aria-pressed=true]{background:var(--nd-lime,var(--nd-color-accent))!important;color:var(--nd-color-on-accent)!important;border-color:var(--nd-color-control-border)!important}
.me-speed{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:12px}
.me-speed select{min-width:70px;min-height:44px;border-radius:7px;padding:5px 8px}
.me-range{display:grid;grid-template-columns:minmax(70px,1fr) auto minmax(70px,1fr) auto;align-items:end;gap:8px;margin:16px 0}
.me-range label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--nd-secondary,var(--nd-color-text-secondary));min-width:0}
.me-range input{font-size:16px;width:100%;min-width:0;min-height:44px;padding:8px;border:1px solid var(--nd-border,var(--nd-color-line));border-radius:7px;font:inherit;font-variant-numeric:tabular-nums}
.me-panel kbd{font:inherit;font-size:12px;border:1px solid var(--nd-border,var(--nd-color-line));border-radius:3px;padding:1px 4px;opacity:.8}
.upscale-source .me-help{margin-top:12px;padding-top:12px;font-size:12px;color:var(--nd-secondary,var(--nd-color-text-secondary))}
.me-help p{line-height:1.8;margin:9px 0 0}
.audio-export-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0;grid-column:1/-1;min-width:0}
.upscale-settings .audio-export-controls .field{margin:0;min-width:0}
.audio-export-controls input[type=number]{width:100%;min-width:0;min-height:44px}
.audio-export-controls .audio-gain,.audio-export-controls .audio-normalize{grid-column:1/-1}
.audio-gain input{width:100%;accent-color:var(--nd-color-accent);min-height:44px}
.audio-normalize{display:flex;gap:9px;align-items:center;font-size:12px;line-height:1.5;min-height:44px}
.audio-normalize input{width:18px;height:18px;accent-color:var(--nd-color-accent);flex-shrink:0}
#audio-result{width:100%;margin:12px 0;grid-column:1/-1}
.editor-capabilities{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:0;list-style:none;font-size:12px;color:var(--nd-secondary,var(--nd-color-text-secondary))}
.editor-capabilities li{padding:5px 9px;border:1px solid var(--nd-border,var(--nd-color-line));border-radius:20px}
.editor-preview-note{padding:12px;border-left:2px solid var(--nd-lime,var(--nd-color-accent));background:var(--nd-glass,var(--nd-surface));border-radius:0 6px 6px 0;font-size:12px;line-height:1.7;grid-column:1/-1}
#image-upscale{grid-column:1/-1}
.image-upscale-panel .actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.image-upscale-panel :is(img,video){display:block;width:100%;height:auto;max-height:280px;object-fit:contain;border-radius:8px;margin:12px 0}
.image-upscale-panel small{font-size:12px;line-height:1.7;color:var(--nd-secondary,var(--nd-color-text-secondary))}
@media(min-width:1001px) and (max-width:1320px){.me-range{grid-template-columns:minmax(70px,1fr) auto}
.me-speed{margin-left:0}}
@media(max-width:600px){.me-panel{padding:12px}
.me-range{grid-template-columns:minmax(70px,1fr) auto}
.me-panel .btn,.me-speed select{min-height:44px}
.me-speed{margin-left:0}
.me-heading output{font-size:12px}
.me-transport{gap:6px}
.me-panel [data-me=play]{min-width:100px}
.me-panel kbd{display:none}
.me-foot .btn{padding-inline:8px;font-size:12px}}
@media(prefers-reduced-motion:no-preference){.me-panel{animation:me-enter .24s ease-out}
.me-track i{transition:left .16s ease,width .16s ease}
.me-playing .me-label{animation:me-pulse 1.8s ease-in-out infinite}
.me-panel .btn{transition:border-color .15s,background-color .15s}
.editor-tab{transition:border-color .2s,color .2s}
@keyframes me-enter{from{opacity:0;transform:translateY(6px)}
to{opacity:1;transform:translateY(0)}}
@keyframes me-pulse{50%{opacity:.55}}}
@media(prefers-reduced-motion:reduce){.me-panel,.me-panel *{animation:none!important;transition:none!important}}
