.media-editor{width:min(1100px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px)}
.media-editor .scene-dialog-body{padding:0;min-height:0;overflow:auto}.media-edit-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:24px;padding:20px}
.media-edit-preview{min-width:0;display:flex;flex-direction:column;align-items:center;gap:12px}.media-stage{position:relative;width:min(100%,calc(420px * var(--media-aspect)));aspect-ratio:var(--media-aspect);background:var(--panel);touch-action:none;user-select:none;overflow:hidden}
.media-stage>img,.media-stage>video{display:block;width:100%;height:100%;object-fit:fill;pointer-events:none}.media-crop{position:absolute;border:2px solid var(--accent);box-shadow:0 0 0 1000px #0005;cursor:move;min-width:1px;min-height:1px;touch-action:none}.media-crop:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.media-crop [data-crop-handle]{position:absolute;width:20px;height:20px;background:var(--panel);border:2px solid var(--accent);border-radius:2px}.media-crop [data-crop-handle=nw]{left:-6px;top:-6px;cursor:nwse-resize}.media-crop [data-crop-handle=ne]{right:-6px;top:-6px;cursor:nesw-resize}.media-crop [data-crop-handle=sw]{left:-6px;bottom:-6px;cursor:nesw-resize}.media-crop [data-crop-handle=se]{right:-6px;bottom:-6px;cursor:nwse-resize}
.media-edit-caption{font-size:13px;color:var(--muted);align-self:flex-start}.media-edit-fields{display:flex;flex-direction:column;gap:20px;min-width:0}.media-edit-fields fieldset{border:0;border-bottom:1px solid var(--line);padding:0 0 16px;margin:0;min-width:0}.media-edit-fields legend{font-weight:600;padding:0 0 12px;font-size:15px}
.media-ratios{display:flex;gap:0;margin-bottom:14px}.media-editor .media-ratios button{flex:1;min-width:0;border-radius:0;padding:8px 5px;font-size:13px}.media-ratios button[aria-pressed=true]{background:var(--accent-bg);color:var(--accent);border-color:var(--accent)}
.media-param-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.media-param-grid label{display:flex;flex-direction:column;gap:6px;min-width:0}.media-param-grid label>span{font-size:12px;color:var(--muted)}.media-param-grid input{width:100%;min-width:0;font-size:16px;min-height:40px}.media-component-consent{display:flex;gap:8px;font-size:13px;color:var(--muted);align-items:flex-start}.media-component-consent input{flex:0 0 18px;width:18px;min-height:18px;margin-top:2px}
.media-edit-footer{position:sticky;bottom:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 20px;border-top:1px solid var(--line);background:var(--panel);z-index:1}.media-edit-footer>span{flex:1}.media-editor .plain-btn{border-radius:6px;min-height:42px}.media-editor .scene-dialog-status{display:flex;gap:8px;align-items:center;font-size:13px;min-height:36px;margin:0;padding:8px 20px}.media-edit-processing .scene-dialog-status svg{animation:media-processing-spin 1.2s linear infinite;flex:0 0 18px}@keyframes media-processing-spin{to{transform:rotate(360deg)}}
[data-media-result]{width:100%}[data-media-result]>img,[data-media-result]>video{max-width:100%;max-height:250px;display:block;margin:auto}[data-media-result]>p{font-size:13px;color:var(--muted)}
@media(max-width:700px){.media-edit-layout{grid-template-columns:minmax(0,1fr);padding:14px;gap:18px}.media-stage{width:min(100%,calc(300px * var(--media-aspect)))}.media-edit-footer{padding:10px 14px;gap:8px}.media-edit-footer>span{display:none}.media-edit-footer button{flex:1}.media-edit-fields{gap:14px}.media-editor .scene-dialog-status{padding:8px 14px}.media-editor{max-height:calc(100dvh - 24px - env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.media-edit-processing .scene-dialog-status svg{animation:none}}
.media-editor .scene-dialog-status{color:var(--muted)}.media-editor .scene-dialog-status:empty{display:none}
.media-preview-controls{display:flex;align-items:center;gap:10px;width:100%;min-width:0}.media-preview-controls input{flex:1;min-width:0;accent-color:var(--accent)}.media-preview-controls output{font-size:13px;color:var(--muted);white-space:nowrap;min-width:52px}
.annotation-toolbar{display:flex;flex-wrap:wrap;gap:4px;width:100%;align-items:center;border-bottom:1px solid var(--line);padding-bottom:10px}.annotation-toolbar .icon-btn{width:40px;height:40px;min-height:40px;border-radius:4px}.annotation-toolbar [aria-pressed=true]{color:var(--accent);background:var(--accent-bg)}.annotation-toolbar input[type=range]{width:90px;min-width:50px;min-height:32px}.annotation-color{display:flex;align-items:center}.annotation-color input{width:32px;height:32px;padding:0;border:0;background:none}.annotation-canvas{position:absolute;inset:0;touch-action:none}.annotation-text{width:100%;display:grid;gap:8px}.annotation-text[hidden]{display:none}.annotation-text textarea{width:100%;min-height:64px;resize:vertical}.media-edit-processing .annotation-toolbar,.media-edit-processing .annotation-canvas{pointer-events:none}
.annotation-layers{width:100%;font-size:14px}.annotation-layers>summary{cursor:pointer;min-height:40px;padding:10px 0}.annotation-layer{display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--line);padding:6px 0}.annotation-layer>.plain-btn{flex:1;min-width:0;text-align:left;overflow-wrap:anywhere}.annotation-text input[type=range]{max-width:240px}
.media-ai-crop legend{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.media-ai-crop legend>span{display:flex;align-items:center;gap:6px}.media-ai-crop legend svg{width:16px;height:16px;color:var(--accent)}.media-ai-status{display:flex;align-items:flex-start;gap:6px;color:var(--muted);font-size:13px;overflow-wrap:anywhere}.media-ai-status:empty{display:none}.media-ai-suggestion{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line);min-width:0}.media-ai-suggestion>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;overflow-wrap:anywhere}.media-ai-suggestion strong{font-size:14px}.media-ai-suggestion span{font-size:13px;color:var(--muted)}.media-ai-suggestion button{flex-shrink:0;font-size:13px;padding:6px 10px}.media-ai-crop legend .plain-btn svg{width:16px;height:16px}
