*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100vh;overflow:hidden}.app-shell{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.panel{width:260px;background-color:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;z-index:10;flex-shrink:0;height:100%}#properties{border-right:none;border-left:1px solid #e0e0e0}.panel-header{padding:15px;background:#f8f9fa;border-bottom:1px solid #e0e0e0;font-weight:700;color:#333;text-transform:uppercase;font-size:12px;letter-spacing:1px}.tools-container,.actions-container,#properties-content{padding:15px}.tool-btn{display:block;width:100%;padding:10px;margin-bottom:8px;background:#fff;border:1px solid #ccc;border-radius:4px;cursor:move;text-align:left;transition:all .2s}.tool-btn:hover{background:#f0f0f5;border-color:#007bff}.action-btn{width:100%;padding:10px;border:none;border-radius:4px;cursor:pointer;margin-top:10px;font-weight:700}.primary{background-color:#007bff}.success{background-color:#28a745}#workspace{flex-grow:1;background-color:#e9e9e9;background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px);background-size:20px 20px;display:flex;justify-content:center;align-items:flex-start;overflow:auto;padding:40px}.page-sheet{position:relative;width:794px;min-height:1122px;background-color:#fff;box-shadow:0 5px 15px #0003;flex-shrink:0}.report-element{position:absolute;border:1px dashed transparent;cursor:pointer}.report-element:hover{border-color:#007bff}.report-element.selected{border:1px solid #007bff;background:#007bff1a}.right-panel-layout{display:flex!important;flex-direction:column;height:100%;overflow:hidden}.panel-section{flex:1;display:flex;flex-direction:column;min-height:0;position:relative;min-height:200px;overflow:hidden}.panel-body{flex-grow:1!important;overflow-y:auto;padding:15px}.panel-body::-webkit-scrollbar{width:6px}.panel-body::-webkit-scrollbar-track{background:#f1f1f1}.panel-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.panel-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.section-divider{height:1px;background-color:#ddd;flex-shrink:0}.db-status{float:right;font-size:12px}.db-status.connected{color:#28a745}.db-status.disconnected{color:#dc3545}.db-schema-list details{margin-bottom:10px}.db-schema-list summary{cursor:pointer;font-weight:700;font-size:13px;padding:5px;background:#f8f9fa;border-radius:4px;list-style:none}.db-schema-list summary:hover{background:#e2e6ea}.db-schema-list summary:before{content:"▶";font-size:10px;margin-right:5px;display:inline-block;transition:transform .2s}.db-schema-list details[open] summary:before{transform:rotate(90deg)}.db-schema-list ul{list-style:none;padding-left:20px;margin-top:5px}.db-schema-list li{font-size:12px;padding:4px;cursor:grab;color:#555;border-bottom:1px solid #f0f0f0}.db-schema-list li:hover{background-color:#e8f0fe;color:#007bff}.tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.tool-btn{display:flex;align-items:center;justify-content:center;background-color:#fff;border:1px solid #ced4da;border-radius:4px;padding:8px;margin:0 4px;width:32px;height:32px;cursor:pointer;color:#495057;font-size:14px;transition:all .2s ease}.tool-btn:hover{background-color:#e9ecef;border-color:#007bff}.tool-btn i{margin:0}.tool-btn i{font-size:14px;margin-bottom:0;color:#007bff;width:16px;text-align:center}.tool-btn:hover{background-color:#eef6fc;border-color:#007bff;color:#007bff;transform:translateY(0);box-shadow:0 1px 2px #0000001a}.zoom-controls{margin-top:20px;padding:10px;background:#f8f9fa;border-radius:5px;border:1px solid #eee}.zoom-actions{display:flex;align-items:center;justify-content:space-between;margin-top:5px}.zoom-actions button{background:#fff;border:1px solid #ccc;width:25px;height:25px;border-radius:4px;cursor:pointer}#workspace-grid{flex-grow:1;display:grid;grid-template-columns:20px 1fr;grid-template-rows:20px 1fr;overflow:hidden;background-color:#e9e9e9}.ruler-corner{grid-column:1;grid-row:1;background-color:#fff;border-right:1px solid #999;border-bottom:1px solid #999;z-index:20}.ruler-h-wrapper{grid-column:2;grid-row:1;overflow:hidden;background-color:#fff;border-bottom:1px solid #999;z-index:10}.ruler-v-wrapper{grid-column:1;grid-row:2;overflow:hidden;background-color:#fff;border-right:1px solid #999;z-index:10}.ruler-h{height:20px;width:5000px;background-image:linear-gradient(90deg,#999 1px,transparent 1px),linear-gradient(90deg,#ccc 1px,transparent 1px);background-size:100px 100%,10px 30%;background-repeat:repeat-x;background-position:bottom;position:relative}.ruler-h:after{content:"0         100        200        300        400        500        600        700        800";font-family:monospace;font-size:10px;color:#555;position:absolute;top:2px;left:4px;white-space:pre;letter-spacing:38px}.ruler-v{width:20px;height:5000px;background-image:linear-gradient(#999 1px,transparent 1px),linear-gradient(#ccc 1px,transparent 1px);background-size:100% 100px,30% 10px;background-repeat:repeat-y;background-position:right}#workspace-scroll-area{grid-column:2;grid-row:2;overflow:auto;padding:40px;display:flex;justify-content:center;align-items:flex-start;background-color:#e9e9e9;background-image:none}#zoom-wrapper{transition:transform .1s ease-out;transform-origin:top center}.page-sheet{position:relative;width:794px;height:1122px;background-color:#fff;box-shadow:0 0 15px #00000080;flex-shrink:0;overflow:hidden;background-image:linear-gradient(rgba(0,0,0,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.1) 1px,transparent 1px);background-size:20px 20px;background-position:0 0}.watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-45deg);font-size:120px;font-weight:700;color:#00000008;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap}#pages-stack{display:flex;flex-direction:column;align-items:center;gap:40px}.page-sheet{position:relative;width:794px;height:1122px;background-color:#fff;box-shadow:0 1px 1px #00000026,0 2px 2px #00000026,0 4px 4px #00000026,0 8px 8px #00000026;flex-shrink:0;overflow:hidden;counter-increment:page-counter}.page-sheet:after{content:"Pág " counter(page-counter);position:absolute;bottom:10px;right:20px;font-size:10px;color:#ccc;pointer-events:none}.page-controls{margin-top:40px;margin-bottom:80px}.add-page-btn{background-color:transparent;border:2px dashed #aaa;color:#666;padding:15px 30px;font-size:14px;font-weight:700;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:10px}.add-page-btn:hover{border-color:#007bff;color:#007bff;background-color:#007bff0d}.resize-handle{width:12px;height:12px;background-color:#fff;border:1px solid #007bff;position:absolute;bottom:-6px;right:-6px;cursor:se-resize;z-index:100;border-radius:50%;box-shadow:0 1px 3px #0003;display:none}.report-element.selected .resize-handle{display:block}.report-element.selected{border:1px dashed #007bff;background:transparent;box-shadow:0 0 0 1px #007bff4d}.plugin-content table{width:100%;border-collapse:collapse}.plugin-content th,.plugin-content td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.config-btn{flex:1;padding:8px;background:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer}.config-btn.active{background-color:#e3f2fd;border-color:#007bff;color:#007bff}.page-margin-overlay{position:absolute;inset:40px;border:1px dashed #ff9800;pointer-events:none;z-index:999;display:none}.page-sheet.show-margins .page-margin-overlay{display:block!important}.page-sheet.landscape{width:1122px;height:794px}.action-row{display:flex;gap:5px;margin-top:15px;padding-top:15px;border-top:1px solid #eee}.btn-action-icon{flex:1;padding:8px;border:1px solid #ddd;background:#f8f9fa;cursor:pointer;border-radius:4px;font-size:12px}.btn-action-icon:hover{background:#e2e6ea}.btn-delete{background-color:#fff5f5;border-color:#ffc9c9;color:#dc3545}.btn-delete:hover{background-color:#dc3545;color:#fff}.context-menu{display:none;position:fixed;z-index:10000;width:200px;background-color:#fff;border:1px solid #d0d0d0;border-radius:6px;box-shadow:0 4px 12px #00000026;padding:5px 0;overflow:hidden;font-family:Segoe UI,sans-serif;font-size:13px}.context-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 15px;background:none;border:none;text-align:left;cursor:pointer;color:#333;transition:background .1s}.context-menu button:hover{background-color:#f0f0f0}.context-menu button i{width:15px;text-align:center;color:#666}.menu-divider{height:1px;background-color:#e0e0e0;margin:4px 0}.context-menu button.text-danger:hover{background-color:#fff5f5;color:#dc3545}.context-menu button.text-danger:hover i{color:#dc3545}details>summary{list-style:none}details>summary::-webkit-details-marker{display:none}#properties-content ::-webkit-scrollbar{width:4px}#properties-content ::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:20000;align-items:center;justify-content:center}.modal-window{background-color:#fff;width:600px;max-height:80vh;border-radius:8px;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;animation:slideDown .2s ease-out}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:15px 20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:16px;color:#333}.close-modal-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#999}.close-modal-btn:hover{color:#333}.modal-body{padding:20px;overflow-y:auto;background-color:#f8f9fa}.modal-footer{padding:15px 20px;border-top:1px solid #eee;text-align:right;background-color:#fff;border-radius:0 0 8px 8px}.column-config-item{background:#fff;border:1px solid #ddd;border-radius:6px;padding:10px;margin-bottom:10px;display:grid;grid-template-columns:30px 2fr 1fr 1fr 1fr;gap:10px;align-items:center}.column-config-header{display:grid;grid-template-columns:30px 2fr 1fr 1fr 1fr;gap:10px;padding:0 10px 5px;font-size:11px;font-weight:700;color:#666}.explorer-container{flex-grow:1;overflow-y:auto;padding:5px 0;background-color:#fff;min-height:150px;border-bottom:1px solid #eee}.explorer-page-header{padding:8px 10px;font-size:11px;font-weight:700;color:#666;background-color:#f8f9fa;border-bottom:1px solid #eee;border-top:1px solid #eee;margin-top:5px}.explorer-page-header:first-child{margin-top:0}.explorer-item{padding:6px 10px 6px 20px;font-size:12px;color:#333;cursor:pointer;display:flex;align-items:center;border-left:3px solid transparent}.explorer-item:hover{background-color:#f0f8ff}.explorer-item i{margin-right:8px;color:#007bff;width:16px;text-align:center}.explorer-item.active{background-color:#e3f2fd;border-left-color:#007bff;font-weight:600}@media(max-height:700px){.panel-header,.tools-container{padding:10px}}.main-body{display:flex;flex:1;overflow:hidden}#top-toolbar{height:50px;background-color:#fff;border-bottom:1px solid #d0d0d0;display:flex;align-items:center;padding:0 15px;gap:10px;box-shadow:0 1px 3px #0000000d;z-index:100}.brand{font-weight:700;color:#333;font-size:14px;margin-right:10px}.toolbar-separator{width:1px;height:24px;background-color:#e0e0e0;margin:0 5px}.tools-row{display:flex;gap:4px}.action-btn-top{height:32px;padding:0 12px;border:1px solid #ccc;background-color:#fff;border-radius:4px;font-size:12px;font-weight:600;color:#444;cursor:pointer;display:flex;align-items:center;gap:6px}.action-btn-top:hover{background-color:#f8f9fa;border-color:#bbb}.action-btn-top.success{background-color:#28a745;color:#fff!important;border-color:#218838}.action-btn-top.success:hover{background-color:#218838}.file-actions{display:flex;gap:8px}.panel{width:240px;background-color:#f9f9f9;border-right:1px solid #e0e0e0}#left-panel{border-right:1px solid #e0e0e0}#properties{border-left:1px solid #e0e0e0;background-color:#fff}#workspace-grid{flex-grow:1}.panel-splitter{height:5px;background-color:#f0f0f0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;cursor:row-resize;flex-shrink:0;transition:background .2s}.panel-splitter:hover,.panel-splitter.active{background-color:#007bff}.align-toolbar{display:flex;gap:4px;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #eee}.btn-align{flex:1;padding:6px 0;border:1px solid #ddd;background-color:#f8f9fa;border-radius:4px;cursor:pointer;color:#555;font-size:14px;display:flex;justify-content:center;align-items:center}.btn-align:hover{background-color:#e2e6ea;color:#007bff;border-color:#007bff}.page-sheet .footer-guide:after{content:"--------- ÁREA DE RODAPÉ ---------";background:#fff;padding:0 10px;position:absolute;top:-7px}.layout-guide{position:absolute;left:0;width:100%;height:5px;z-index:50;cursor:row-resize;display:flex;align-items:center;justify-content:center}.layout-guide:before{content:"";width:100%;height:1px;border-top:1px dashed #ccc}.layout-guide:after{content:attr(data-label);position:absolute;background-color:#fff;padding:0 8px;font-size:9px;color:#aaa;font-weight:700;text-transform:uppercase}.layout-guide:hover:before{border-color:#007bff}.layout-guide:hover:after{color:#007bff}.header-guide{top:100px}.footer-guide{bottom:80px}body.preview-mode #top-toolbar,body.preview-mode #left-panel,body.preview-mode #properties,body.preview-mode .ruler-h-wrapper,body.preview-mode .ruler-v-wrapper,body.preview-mode .ruler-corner,body.preview-mode .resize-handle,body.preview-mode .page-margin-overlay,body.preview-mode .footer-guide,body.preview-mode .layout-guide,body.preview-mode .page-controls{display:none!important}body.preview-mode .main-body{background-color:#333}body.preview-mode #workspace-grid{display:block;height:100vh}body.preview-mode #workspace-scroll-area{height:100%;background:#333;background-image:none;padding-top:50px}#btn-exit-preview{display:none;position:fixed;bottom:30px;right:30px;padding:15px 30px;background-color:#007bff;color:#fff;border:none;border-radius:50px;font-weight:700;box-shadow:0 5px 15px #0000004d;cursor:pointer;z-index:20000;font-size:16px}#btn-exit-preview:hover{background-color:#0056b3;transform:scale(1.05)}body.preview-mode #btn-exit-preview{display:block}.editor-footer-mask{position:absolute;bottom:0;left:0;width:100%;background-color:#fff;z-index:20;pointer-events:none;border-top:1px solid #f0f0f0}.layout-guide{z-index:100!important}.plugin-content,.plugin-content *{pointer-events:none!important}.format-btn.active-radio{background-color:#007bff;color:#fff;border-color:#0056b3;box-shadow:inset 0 2px 4px #0003}.plugin-content{width:100%;height:100%;position:absolute;top:0;left:0;z-index:1}.click-shield{position:absolute;top:0;left:0;width:100%;height:100%;z-index:50;cursor:move;background:transparent}.resize-handle{z-index:100!important}.explorer-delete-btn{float:inline-end}.app-status-bar{position:fixed;bottom:0;left:0;width:100%;height:30px;background-color:#333;color:#f0f0f0;display:flex;align-items:center;padding:0 15px;font-size:11px;z-index:1000;box-shadow:0 -1px 5px #0003}@media print{@page{margin:0;size:auto}html,body{display:block!important;height:auto!important;overflow:visible!important;background:#fff!important;margin:0!important;padding:0!important}#screen-upload,.viewer-toolbar,.card-viewer,#btn-print,#btn-close{display:none!important}#screen-preview{display:block!important;height:auto!important;overflow:visible!important;position:static!important}#report-container{display:block!important;padding:0!important;margin:0!important;overflow:visible!important;background:none!important;height:auto!important;position:static!important}.page-sheet{margin:0!important;box-shadow:none!important;border:none!important;page-break-after:always!important;break-after:page;position:relative!important;overflow:hidden!important;left:0!important;top:0!important;width:794px!important;height:1122px!important}.page-sheet:last-child{page-break-after:auto!important;break-after:auto}.report-element{position:absolute!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.editor-footer-mask{background:#fff!important;display:block!important}table{page-break-inside:auto}tr{page-break-inside:avoid}}.prop-accordion{border:1px solid #e0e0e0;border-radius:4px;margin-bottom:8px;background:#fff;overflow:hidden}.prop-accordion-header{padding:10px;background-color:#f8f9fa;cursor:pointer;font-weight:600;font-size:12px;color:#444;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none}.prop-accordion-header:hover{background-color:#e9ecef}.prop-accordion-header:after{content:"▼";font-size:10px;color:#999;transition:transform .2s}.prop-accordion.closed .prop-accordion-content{display:none}.prop-accordion.closed .prop-accordion-header:after{transform:rotate(-90deg)}.prop-accordion-content{padding:10px;border-top:1px solid #e0e0e0}.prop-group{margin-bottom:10px}.prop-group label{font-size:11px;color:#666;font-weight:600;margin-bottom:4px;display:block}.prop-group input,.prop-group select,.prop-group textarea{width:100%;padding:6px;border:1px solid #ced4da;border-radius:4px;font-size:12px;transition:border .2s}.prop-group input:focus{border-color:#80bdff;outline:none}.format-toolbar{display:flex;gap:5px;margin-bottom:10px;background:#f8f9fa;padding:5px;border-radius:4px;border:1px solid #eee}.format-toolbar input[type=checkbox]{display:none}.format-btn{flex:1;display:flex;align-items:center;justify-content:center;height:30px;border:1px solid #ccc;background-color:#fff;border-radius:3px;cursor:pointer;color:#555;font-size:14px;transition:all .2s}.format-btn:hover{background-color:#e2e6ea}.format-toolbar input[type=checkbox]:checked+.format-btn{background-color:#007bff;color:#fff;border-color:#0056b3;box-shadow:inset 0 2px 4px #0003}.menu-data-base{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.menu-data-base>div:last-child{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.separator{width:4px;background:linear-gradient(to bottom,#e0e0e0,#bfbfbf);border-left:1px solid #fff;border-right:1px solid #8a8a8a;background-color:#333;color:#f0f0f0;display:flex;align-items:center;padding:0 15px;font-size:11px;z-index:1000;box-shadow:0 -1px 5px #0003}.status-item{padding:0 10px;border-right:1px solid #444;white-space:nowrap}.status-item:last-child{border-right:none}.status-indicator{font-weight:700}.status-indicator i{margin-right:5px}.status-connected{color:#28a745}.status-disconnected{color:#ffc107}.status-error{color:#dc3545}.spacer{flex-grow:1}.guide-line{position:absolute;background-color:#00e5ff;z-index:900;pointer-events:auto;box-shadow:0 0 3px #0003}.guide-x{width:1px;height:100%;top:0;cursor:col-resize}.guide-x:after{content:"";position:absolute;left:-4px;top:0;width:9px;height:100%;cursor:col-resize}.guide-y{height:1px;width:100%;left:0;cursor:row-resize}.guide-y:after{content:"";position:absolute;top:-4px;left:0;height:9px;width:100%;cursor:row-resize}.guide-line:hover{background-color:#00bfff;width:2px}.guide-y:hover{height:2px;width:100%}
