/* Media layer — controles de señal fuera del master; la imagen vive en GPU. */
.mi-mode,.mi-layer-edit{border:1px solid rgba(255,255,255,.14);border-radius:4px;background:rgba(20,20,26,.7);color:#666;padding:3px 6px;font:800 7px 'DM Mono',monospace;letter-spacing:.06em;cursor:pointer;white-space:nowrap;transition:.12s border-color,.12s color,.12s background;}
.mi-mode.on{border-color:rgba(102,255,170,.48);background:rgba(102,255,170,.08);color:#66ffaa;}
.mi-layer-edit{border-color:rgba(139,92,246,.38);color:var(--luma2);}
.mi-layer-edit:hover,.mi-mode:hover{border-color:var(--luma);color:#fff;}
.mi.layer-media{border-left:2px solid rgba(102,255,170,.5);}
.mi.layer-active{box-shadow:inset 3px 0 0 #66ffaa,0 0 10px rgba(102,255,170,.12);}

.vpad-layer-badge{position:absolute;top:2px;left:2px;z-index:3;padding:1px 4px;border-radius:3px;background:rgba(5,12,10,.82);border:1px solid rgba(102,255,170,.48);color:#66ffaa;font:900 6px 'DM Mono',monospace;letter-spacing:.08em;pointer-events:none;}
.vpad-layer-edit{position:absolute;top:2px;right:2px;z-index:4;width:16px;height:16px;border-radius:4px;border:1px solid rgba(139,92,246,.5);background:rgba(5,5,9,.82);color:var(--luma2);font-size:10px;line-height:13px;padding:0;cursor:pointer;}
.vpad.layer-active,.cv-vpad.layer-active{border-color:rgba(102,255,170,.75);box-shadow:0 0 12px rgba(102,255,170,.28),inset 0 0 8px rgba(102,255,170,.08);}
.vpad-mode{flex:1;height:16px;border:1px solid rgba(255,255,255,.14);border-radius:4px;background:rgba(20,20,26,.5);color:#555;font:800 7px 'DM Mono',monospace;letter-spacing:.05em;cursor:pointer;}
.vpad-mode.on{border-color:rgba(102,255,170,.5);background:rgba(102,255,170,.08);color:#66ffaa;}
.vpad-chip-row{display:flex;gap:3px;min-width:0;}
.vpad-chip-row>.vpad-auto{flex:1;}

.layer-editor-modal{max-width:880px!important;width:min(94vw,880px)!important;max-height:94vh;overflow-y:auto;padding:22px!important;}
.layer-editor-modal>p{margin-bottom:10px!important;}
.layer-editor-stage{position:relative;width:100%;aspect-ratio:16/9;background:#050507;overflow:hidden;border:1px solid rgba(139,92,246,.35);border-radius:10px;touch-action:none;cursor:crosshair;box-shadow:inset 0 0 30px rgba(0,0,0,.7),0 10px 30px rgba(0,0,0,.3);}
.layer-editor-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;}
.layer-safe{position:absolute;inset:5%;border:1px dashed rgba(255,255,255,.25);pointer-events:none;}
.layer-safe span{position:absolute;top:4px;left:6px;color:rgba(255,255,255,.42);font:700 7px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase;}
.layer-frame{position:absolute;box-sizing:border-box;border:1.5px solid #66ffaa;box-shadow:0 0 0 1px rgba(0,0,0,.7),0 0 12px rgba(102,255,170,.28);cursor:move;touch-action:none;transform-origin:center;min-width:18px;min-height:12px;}
.layer-frame::before,.layer-frame::after{content:'';position:absolute;background:rgba(102,255,170,.45);pointer-events:none;}
.layer-frame::before{left:50%;top:-5%;bottom:-5%;width:1px;}
.layer-frame::after{top:50%;left:-3%;right:-3%;height:1px;}
.layer-frame-name{position:absolute;left:0;bottom:100%;max-width:180px;padding:2px 5px;background:#66ffaa;color:#07100c;font:800 7px 'DM Mono',monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.layer-frame i{position:absolute;right:-7px;bottom:-7px;width:13px;height:13px;border-radius:50%;background:#66ffaa;border:2px solid #08100c;box-shadow:0 0 7px rgba(102,255,170,.65);cursor:nwse-resize;z-index:2;}
.layer-presets{display:flex;align-items:center;gap:10px;margin-top:10px;}
.layer-presets>span{flex:0 0 auto;color:var(--t3);font:800 8px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase;}
.layer-presets>div{display:flex;gap:4px;overflow-x:auto;padding-bottom:2px;}
.layer-presets button,.layer-editor-actions button{border:1px solid rgba(255,255,255,.12);border-radius:5px;background:var(--bg3);color:var(--t2);padding:6px 9px;font:700 8px 'DM Mono',monospace;white-space:nowrap;cursor:pointer;}
.layer-presets button:hover{border-color:rgba(102,255,170,.5);color:#66ffaa;}
.layer-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:10px;}
.layer-editor-grid label{display:grid;grid-template-columns:82px minmax(0,1fr) 38px;align-items:center;gap:7px;color:var(--t3);font:700 8px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.05em;}
.layer-editor-grid label:nth-child(-n+2){grid-template-columns:82px minmax(0,1fr);}
.layer-editor-grid select{width:100%;min-width:0;border:1px solid var(--rule);border-radius:5px;background:var(--bg3);color:var(--text);padding:6px;font:700 9px 'DM Mono',monospace;}
.layer-editor-grid input{width:100%;}
.layer-editor-grid b{color:#66ffaa;text-align:right;font:700 8px 'DM Mono',monospace;}
.layer-fx{display:flex;align-items:flex-start;gap:10px;margin-top:11px;}
.layer-fx>span{flex:0 0 82px;padding-top:7px;color:var(--t3);font:800 8px 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase;}
.layer-fx>div{display:grid;grid-template-columns:repeat(8,minmax(54px,1fr));gap:4px;min-width:0;flex:1;}
.layer-fx-btn{min-width:0;border:1px solid rgba(255,255,255,.12);border-radius:5px;background:var(--bg3);color:var(--t2);padding:6px 4px;font:800 7px 'DM Mono',monospace;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;}
.layer-fx-btn:hover{border-color:rgba(139,92,246,.6);color:#fff;}
.layer-fx-btn.on{border-color:#66ffaa;background:rgba(102,255,170,.09);color:#66ffaa;box-shadow:0 0 9px rgba(102,255,170,.12);}
.layer-auto-hint{margin:7px 0 0 92px!important;color:var(--t3)!important;font:600 7px/1.45 'DM Mono',monospace!important;letter-spacing:.03em;}
.layer-trim-note{margin-top:7px;color:#66ffaa;font:700 8px 'DM Mono',monospace;letter-spacing:.04em;}
.layer-editor-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:12px;}
.layer-editor-actions .layer-hide{margin-right:auto;color:#f59e0b;border-color:rgba(245,158,11,.35);}
.layer-editor-actions .layer-done{color:#07100c;background:#66ffaa;border-color:#66ffaa;font-weight:900;}

@media(max-width:640px){
  .layer-editor-modal{padding:15px!important;width:96vw!important;}
  .layer-editor-grid{grid-template-columns:1fr;}
  .layer-presets{display:block;}
  .layer-presets>div{margin-top:5px;}
  .layer-fx{display:block;}
  .layer-fx>div{grid-template-columns:repeat(4,1fr);margin-top:5px;}
  .layer-auto-hint{margin-left:0!important;}
  .mi-layer-edit{display:none;}
}
