@import"https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap";body{font-family:Roboto,sans-serif;margin:0;padding:0;box-sizing:border-box}h1,h2,h3,h4,h5,h6{font-family:Roboto,sans-serif}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes glow{0%{box-shadow:0 0 5px #d4af3780}50%{box-shadow:0 0 20px #d4af37cc}to{box-shadow:0 0 5px #d4af3780}}.pantalla-publica-elemento{animation:fadeInUp .6s ease-out;transition:all .3s ease}.pantalla-publica-elemento.tipo-video{z-index:100;box-shadow:0 8px 32px #0000004d}.pantalla-publica-elemento.tipo-imagen{z-index:50;overflow:hidden;box-shadow:0 4px 16px #0003}.pantalla-publica-elemento.tipo-texto{z-index:75;text-shadow:2px 2px 8px rgba(0,0,0,.7)}.pantalla-publica-video{border:none;border-radius:8px;overflow:hidden;box-shadow:0 8px 32px #0006}.pantalla-publica-imagen{border-radius:8px;transition:transform .3s ease;object-fit:cover;width:100%;height:100%}.pantalla-publica-imagen:hover{transform:scale(1.02)}.pantalla-publica-texto{display:flex;align-items:center;justify-content:center;padding:16px;color:#fff!important;text-shadow:2px 2px 8px rgba(0,0,0,.8);word-wrap:break-word;hyphens:auto}.pantalla-publica-texto *{color:inherit!important;text-shadow:inherit!important}.controles-superiores{backdrop-filter:blur(15px);background:#000000d9;border-bottom:1px solid rgba(212,175,55,.3)}.control-button{transition:all .2s ease;backdrop-filter:blur(10px)}.control-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #d4af3766}.control-button:active{transform:translateY(0)}.live-indicator{animation:pulse 2s infinite;background:linear-gradient(45deg,#f44,#f66);box-shadow:0 0 15px #ff444480}.loading-container{background:radial-gradient(circle,#000000e6,#000)}.loading-spinner{animation:glow 2s infinite}.error-container{backdrop-filter:blur(20px);background:#000000f2;border:1px solid rgba(212,175,55,.3)}@media (max-width: 768px){.pantalla-publica-elemento.tipo-texto{font-size:.9em}.controles-superiores{padding:8px 12px}.control-button{width:40px;height:40px}}@media (max-width: 480px){.pantalla-publica-elemento.tipo-texto{font-size:.8em;padding:8px}.control-button{width:36px;height:36px;margin:0 2px}}.elemento-entrada{animation:fadeInUp .8s ease-out forwards}.elemento-entrada.delay-1{animation-delay:.1s}.elemento-entrada.delay-2{animation-delay:.2s}.elemento-entrada.delay-3{animation-delay:.3s}.pantalla-completa{background:#000;overflow:hidden}.pantalla-completa .controles-superiores{position:fixed;top:0;left:0;right:0;z-index:1000}.ayuda-teclas{backdrop-filter:blur(10px);background:#000000b3;transition:opacity .3s ease}.pantalla-publica-elemento{will-change:transform,opacity;backface-visibility:hidden;perspective:1000px}.pantalla-publica-container{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.pantalla-publica-video,.pantalla-publica-elemento.tipo-video iframe{pointer-events:auto}.cursor-oculto{cursor:none}.cursor-visible{cursor:default}@media print{@page{size:A4 portrait;margin:10mm}body{background-color:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important;margin:0!important;padding:0!important}.print-section{width:100%!important;position:relative!important;page-break-after:avoid;break-after:avoid;background-color:#fff!important}.print-section table{width:100%!important;page-break-inside:auto!important;break-inside:auto!important;border-collapse:collapse!important}.print-section tr{page-break-inside:avoid!important;break-inside:avoid!important;page-break-after:auto!important;break-after:auto!important}.print-section thead{display:table-header-group!important}.print-section tfoot{display:table-footer-group!important}.print-section .MuiTableCell-root{display:table-cell!important;border:1px solid #ddd!important;padding:8px!important;visibility:visible!important}.print-header{display:block!important;margin-bottom:20px!important;text-align:center!important}.no-print,button,.print-button,.MuiAppBar-root,footer,nav,header,.navigation-bar{display:none!important}.MuiSvgIcon-root{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}.MuiPaper-root,.MuiCard-root{box-shadow:none!important;background-color:#fff!important;border:1px solid #eee!important;margin-bottom:20px!important}.MuiTableBody-root tr{display:table-row!important;visibility:visible!important;page-break-inside:avoid!important;break-inside:avoid!important}.MuiTable-root{display:table!important}img{max-width:100%!important;height:auto!important}*{color:#000!important}}.print-button{display:flex;justify-content:center;margin:20px 0}.canvas-container{display:flex;width:100%;height:100vh;min-height:unset;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;box-sizing:border-box}.barra-lateral{width:var(--sidebar-width);background:linear-gradient(135deg,var(--color-bg-sidebar) 0%,#34495e 100%);padding:var(--spacing-lg) 0;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);border-right:1px solid var(--color-border)}.barra-lateral button{background:var(--color-primary);border:none;color:var(--color-text-dark);cursor:pointer;width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);box-shadow:var(--shadow-sm);font-weight:var(--font-weight-medium);position:relative;overflow:hidden}.barra-lateral button:hover{background:var(--color-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.barra-lateral button:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.barra-lateral button:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.barra-lateral button:hover:after{width:100%;height:100%}.canvas{flex:1;position:relative;background:var(--color-bg-canvas);background-image:radial-gradient(circle at 20px 20px,rgba(212,175,55,.1) 1px,0),radial-gradient(circle at 80px 80px,rgba(212,175,55,.05) 1px,0);background-size:100px 100px;overflow:hidden;height:100%}.guardar-btn{background:var(--color-success)!important;color:var(--color-text-white)!important;border:none!important;border-radius:var(--radius-md)!important;font-weight:var(--font-weight-bold)!important;box-shadow:var(--shadow-sm)!important;transition:all var(--transition-normal)!important;margin-top:auto!important}.guardar-btn:hover{background:var(--color-success-hover)!important;transform:translateY(-1px)!important;box-shadow:var(--shadow-md)!important}.guardar-btn:active{transform:translateY(0)!important}.barra-lateral button[title]:hover:before{content:attr(title);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:var(--color-text-dark);color:var(--color-text-white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;z-index:var(--z-tooltip);animation:fadeIn .2s ease}.limpiar-btn{background:red;border:none;color:#fff;cursor:pointer;margin-top:10px}.limpiar-btn:hover{opacity:.8}@keyframes fadeIn{0%{opacity:0;transform:translateY(-50%) translate(-5px)}to{opacity:1;transform:translateY(-50%) translate(0)}}@media (max-width: 768px){.canvas-container{min-height:500px;border-radius:var(--radius-md)}.barra-lateral{width:60px;padding:var(--spacing-md) 0;gap:var(--spacing-sm)}.barra-lateral button{width:40px;height:40px}}.ql-editor .ql-size-14px{font-size:14px}.ql-editor .ql-size-18px{font-size:18px}.ql-editor .ql-size-24px{font-size:24px}.ql-editor .ql-size-36px{font-size:36px}.ql-editor .ql-size-48px{font-size:48px}.ql-editor .ql-size-60px{font-size:60px}.ql-editor .ql-size-72px{font-size:72px}.ql-editor .ql-size-96px{font-size:96px}.ql-editor .ql-size-120px{font-size:120px}.ql-toolbar{border:none!important;border-bottom:1px solid var(--color-border)!important;background:var(--color-bg-light)!important;padding:var(--spacing-md)!important;border-radius:var(--radius-md) var(--radius-md) 0 0!important}.ql-toolbar .ql-picker-label{border:1px solid var(--color-border)!important;border-radius:var(--radius-sm)!important;padding:var(--spacing-xs) var(--spacing-sm)!important;transition:all var(--transition-fast)!important}.ql-toolbar .ql-picker-label:hover{border-color:var(--color-primary)!important;background:var(--color-primary-light)!important}.ql-toolbar button{border:1px solid!important;border-radius:var(--radius-sm)!important;margin:0 2px!important;padding:var(--spacing-xs)!important;transition:all var(--transition-fast)!important}.ql-toolbar button:hover{border-color:var(--color-primary)!important;background:var(--color-primary-light)!important;color:var(--color-primary)!important}.ql-toolbar button.ql-active{background:var(--color-primary)!important;color:var(--color-text-dark)!important;border-color:var(--color-primary)!important}.ql-container{border:none!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;border-radius:0 0 var(--radius-md) var(--radius-md)!important;background:var(--color-bg-white)!important}.ql-editor{padding:var(--spacing-lg)!important;min-height:200px!important;line-height:1.6!important;color:var(--color-text-dark)!important}.ql-editor:focus{outline:none!important}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:attr(data-value)!important;font-size:13px!important;font-weight:var(--font-weight-medium)!important}.ql-picker-options{background:var(--color-bg-white)!important;border:1px solid var(--color-border)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important;padding:var(--spacing-xs)!important;z-index:var(--z-dropdown)!important}.ql-picker-item{border-radius:var(--radius-sm)!important;margin:2px 0!important;padding:var(--spacing-xs) var(--spacing-sm)!important;transition:all var(--transition-fast)!important}.ql-picker-item:hover{background:var(--color-primary-light)!important;color:var(--color-primary)!important}.ql-picker-item.ql-selected{background:var(--color-primary)!important;color:var(--color-text-dark)!important}.editor-texto:focus-within .ql-toolbar{background:#d4af370d!important}.ql-tooltip{background:var(--color-text-dark)!important;color:var(--color-text-white)!important;border-radius:var(--radius-sm)!important;box-shadow:var(--shadow-md)!important;border:none!important;font-size:13px!important;padding:var(--spacing-xs) var(--spacing-sm)!important}.ql-tooltip input{border:1px solid var(--color-border)!important;border-radius:var(--radius-sm)!important;padding:var(--spacing-xs)!important;background:var(--color-bg-white)!important;color:var(--color-text-dark)!important}.ql-tooltip a{color:var(--color-primary)!important;text-decoration:none!important;padding:var(--spacing-xs) var(--spacing-sm)!important;border-radius:var(--radius-sm)!important;transition:all var(--transition-fast)!important}.ql-tooltip a:hover{background:var(--color-primary)!important;color:var(--color-text-dark)!important}@media (max-width: 768px){.ql-toolbar{padding:var(--spacing-sm)!important}.ql-toolbar button{margin:0 1px!important;padding:6px!important}.ql-editor{padding:var(--spacing-md)!important;min-height:150px!important;font-size:14px!important}.ql-toolbar .ql-picker-label{padding:4px 6px!important;font-size:12px!important}}.elemento{position:absolute;user-select:none;transition:all var(--transition-normal);z-index:var(--z-base);border-radius:var(--radius-sm);overflow:hidden}.elemento-overlay{position:absolute;inset:0;display:none;z-index:var(--z-base);border-radius:var(--radius-sm)}.elemento:hover .elemento-overlay,.elemento.seleccionado .elemento-overlay{display:block}.elemento.seleccionado{background:var(--color-bg-white);border:2px solid var(--color-primary);box-shadow:var(--shadow-selected),var(--shadow-lg);z-index:calc(var(--z-base) + 1);transform:scale(1.02)}.elemento:hover:not(.seleccionado){box-shadow:var(--shadow-hover);transform:translateY(-2px)}.handle{position:absolute;width:var(--handle-size);height:var(--handle-size);background:var(--color-primary);border:2px solid var(--color-bg-white);border-radius:var(--radius-round);z-index:calc(var(--z-base) + 2);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.handle:hover{background:var(--color-primary-hover);transform:scale(1.2);box-shadow:var(--shadow-md)}.handle-bottom-right{bottom:-6px;right:-6px;cursor:se-resize}.elemento.imagen{background:var(--color-bg-white);border:1px solid var(--color-border-light)}.elemento.imagen img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-sm)}.elemento.texto{background:#fffffff2;border:1px solid var(--color-border-light);backdrop-filter:blur(5px)}.elemento.texto>div:not(.handle){padding:var(--spacing-sm);width:100%;height:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;align-items:center;justify-content:center;color:var(--color-text-dark);line-height:1.4}.elemento.video{background:var(--color-bg-dark);border:1px solid var(--color-border-dark);box-shadow:var(--shadow-lg)}.elemento.video iframe{border-radius:var(--radius-sm)}.boton-cerrar,.boton-editar{position:absolute;border:none;border-radius:var(--radius-round);width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--color-text-white);cursor:pointer;padding:0;z-index:calc(var(--z-base) + 2);box-shadow:var(--shadow-sm);transition:all var(--transition-fast);opacity:0;transform:scale(.8);font-size:14px}.elemento.seleccionado .boton-cerrar,.elemento.seleccionado .boton-editar,.elemento:hover .boton-cerrar,.elemento:hover .boton-editar{opacity:1;transform:scale(1)}.boton-cerrar{top:-8px;right:-8px;background:var(--color-danger)}.boton-cerrar:hover{background:var(--color-danger-hover);transform:scale(1.1);box-shadow:var(--shadow-md)}.boton-editar{top:-8px;left:-8px;background:var(--color-info)}.boton-editar:hover{background:#1976d2;transform:scale(1.1);box-shadow:var(--shadow-md)}.placeholder-imagen,.placeholder-video{display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--color-text-light);background:var(--color-bg-light);width:100%;height:100%;border:2px dashed var(--color-border);border-radius:var(--radius-sm)}.placeholder-imagen:before{content:"🖼️"}.placeholder-video:before{content:"🎬"}.elemento.dragging{z-index:calc(var(--z-base) + 10);transform:rotate(3deg) scale(1.05);box-shadow:var(--shadow-lg);opacity:.9}.elemento.resizing{z-index:calc(var(--z-base) + 10)}@keyframes elementoEnter{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.elemento-nuevo{animation:elementoEnter var(--transition-slow) ease-out}@media (max-width: 768px){.handle{width:14px;height:14px}.boton-cerrar,.boton-editar{width:32px;height:32px;font-size:16px}.elemento.texto>div:not(.handle){padding:var(--spacing-xs);font-size:14px}}.modal-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);animation:overlayFadeIn var(--transition-normal) ease}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--color-bg-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);border:1px solid var(--color-border);position:relative;animation:modalSlideIn var(--transition-normal) ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-title{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-dark);font-size:1.5rem;font-weight:var(--font-weight-bold);text-align:center;position:relative;padding-bottom:var(--spacing-sm)}.modal-title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60px;height:3px;background:var(--color-primary);border-radius:var(--radius-sm)}.modal-subtitle{margin:var(--spacing-lg) 0 var(--spacing-md) 0;color:var(--color-text-medium);font-size:1.1rem;font-weight:var(--font-weight-medium)}.modal-input{width:100%;padding:var(--spacing-md);margin-bottom:var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:1rem;transition:all var(--transition-normal);background:var(--color-bg-white);color:var(--color-text-dark);font-family:inherit}.modal-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);background:var(--color-bg-white)}.modal-input::placeholder{color:var(--color-text-light)}.error{color:var(--color-danger);font-size:.875rem;margin-top:var(--spacing-xs);margin-bottom:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-xs)}.error:before{content:"⚠️";font-size:14px}.imagenes-guardadas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md);border:1px solid var(--color-border-light)}.imagen-thumbnail{width:100%;height:80px;object-fit:cover;cursor:pointer;border:2px solid;border-radius:var(--radius-sm);transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.imagen-thumbnail:hover{border-color:var(--color-primary);transform:scale(1.05);box-shadow:var(--shadow-md)}.imagen-thumbnail:active{transform:scale(.98)}.modal-buttons{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border-light)}.modal-button{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);border:2px solid;cursor:pointer;font-size:.95rem;font-weight:var(--font-weight-medium);transition:all var(--transition-normal);min-width:100px;position:relative;overflow:hidden}.modal-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.modal-button:active:before{width:300px;height:300px}.modal-button-cancel{background:var(--color-bg-light);color:var(--color-text-medium);border-color:var(--color-border)}.modal-button-cancel:hover{background:var(--color-bg-light-hover);color:var(--color-text-dark);border-color:var(--color-border-dark);transform:translateY(-1px)}.modal-button-confirm{background:var(--color-primary);color:var(--color-text-dark);border-color:var(--color-primary);font-weight:var(--font-weight-bold)}.modal-button-confirm:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.modal-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.editor-texto{border:2px solid var(--color-border)!important;border-radius:var(--radius-md)!important;overflow:hidden!important;background:var(--color-bg-white)!important}.editor-texto .ql-toolbar{border-bottom:1px solid var(--color-border)!important;background:var(--color-bg-light)!important}.editor-texto .ql-container{font-family:inherit!important;font-size:14px!important}.editor-texto .ql-editor{min-height:200px!important;padding:var(--spacing-md)!important}.editor-texto:focus-within{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px var(--color-primary-light)!important}@media (max-width: 768px){.modal-content{width:95%;padding:var(--spacing-lg);margin:var(--spacing-md)}.modal-title{font-size:1.3rem}.modal-buttons{flex-direction:column-reverse;gap:var(--spacing-sm)}.modal-button{width:100%;padding:var(--spacing-md)}.imagenes-guardadas-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:var(--spacing-sm)}.imagen-thumbnail{height:60px}}.modal-loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-xl)}.modal-loading:after{content:"";width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}:root{--color-primary: #D4AF37;--color-primary-hover: #B8941F;--color-primary-light: rgba(212, 175, 55, .1);--color-primary-dark: #9A7B2A;--color-text-dark: #1a1a1a;--color-text-medium: #666;--color-text-light: #999;--color-text-white: #ffffff;--color-bg-light: #f9f9f9;--color-bg-light-hover: #f0f0f0;--color-bg-white: #ffffff;--color-bg-sidebar: #2c3e50;--color-bg-canvas: #f5f5f5;--color-bg-dark: #1a1a1a;--color-success: #4caf50;--color-success-hover: #45a049;--color-danger: #e74c3c;--color-danger-hover: #c0392b;--color-warning: #ff9800;--color-info: #2196f3;--color-border: #e0e0e0;--color-border-light: #f0f0f0;--color-border-dark: #ddd;--sidebar-width: 80px;--handle-size: 12px;--toolbar-height: 64px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-round: 50%;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .15);--shadow-selected: 0 0 0 2px var(--color-primary);--shadow-hover: 0 8px 25px rgba(0, 0, 0, .15);--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-bold: 700;--z-base: 1;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}
