*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:#f6f7f9;color:#222}.app-container{display:flex;height:100vh;overflow:hidden}.sidebar{width:20rem;background-color:#202733;color:#fff;padding:1.2rem;display:flex;flex-direction:column;gap:.75rem;border-right:1px solid #2b3444}.sidebar h3{font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.component-item{background:#2d3545;padding:.6rem .8rem;border-radius:6px;cursor:grab;font-size:.95rem;transition:background .15s}.component-item:hover{background:#3a4357}.component-item.disabled{opacity:.5;cursor:not-allowed;background:#2d3545}.component-item.disabled:hover{background:#2d3545}.canvas{flex:1;background:#fafafa;padding:1.5rem;overflow-y:auto;position:relative}.canvas-dropzone{min-height:80vh;border:2px dashed #ccc;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;color:#999;font-size:1rem;transition:border-color .2s,background .2s}.canvas-dropzone.is-over{border-color:#007bff;background:#f0f7ff;color:#007bff}.canvas-empty{display:flex;align-items:center;justify-content:center;min-height:300px;color:#999;font-size:16px;text-align:center}.component-preview{background:#fff;border:1px solid #ddd;border-radius:6px;padding:1rem;margin-bottom:.8rem;box-shadow:0 1px 3px #00000014}.sortable-component{position:relative;margin:12px 0;border:2px solid transparent;border-radius:6px;transition:all .2s ease}.sortable-component:hover{border-color:#e5e7eb}.sortable-component.selected{border-color:#007bff;box-shadow:0 0 0 1px #007bff}.sortable-component.dragging{opacity:.5}.component-controls{position:absolute;top:-12px;right:-12px;display:none;gap:4px}.sortable-component:hover .component-controls,.sortable-component.selected .component-controls{display:flex}.control-button{width:24px;height:24px;border:none;border-radius:4px;background:#ef4444;color:#fff;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center}.control-button:hover{background:#dc2626}.toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#202733;color:#fff;border-bottom:1px solid #2b3444}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:12px}.toolbar h2{margin:0;font-size:18px;font-weight:600;color:#fff}.toolbar-button{padding:8px 16px;border:1px solid #3a4357;border-radius:6px;background:#2d3545;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.toolbar-button:hover{background:#3a4357;border-color:#4a5568}.toolbar-button.primary{background:#007bff;color:#fff;border-color:#007bff}.toolbar-button.primary:hover{background:#0056b3;border-color:#0056b3}.toolbar-button.danger{background:#ef4444;color:#fff;border-color:#ef4444}.toolbar-button.danger:hover{background:#dc2626;border-color:#dc2626}.properties-panel{width:20rem;background-color:#202733;color:#fff;padding:1.2rem;border-left:1px solid #2b3444;overflow-y:auto}.properties-panel h3{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:#fff}.properties-empty{color:#9ca3af;font-size:14px;text-align:center;padding:40px 20px}.dynamic-properties{display:flex;flex-direction:column;gap:1rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-label{font-size:14px;font-weight:500;color:#e5e7eb}.text-input,.textarea-input,.select-input,.number-input{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;color:#000;transition:border-color .2s ease}.text-input:focus,.textarea-input:focus,.select-input:focus,.number-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 1px #007bff}.textarea-input{resize:vertical;min-height:80px}.select-input{cursor:pointer}.color-input-wrapper{display:flex;gap:8px;align-items:center}.color-input{width:40px;height:40px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer}.color-text-input{flex:1;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;color:#000;font-family:monospace}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:#e5e7eb}.checkbox-input{width:16px;height:16px;margin:0}.checkbox-text{font-size:14px}.image-input-wrapper{display:flex;flex-direction:column;gap:8px}.image-preview{width:100%;max-height:120px;border:1px solid #3a4357;border-radius:6px;overflow:hidden;background:#1a1f29;display:flex;align-items:center;justify-content:center}.image-preview img{max-width:100%;max-height:100%;object-fit:contain}.no-properties{text-align:center;padding:2rem;color:#9ca3af}.property-group{margin-bottom:20px}.property-label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#e5e7eb}.property-input{width:100%;padding:8px 12px;border:1px solid #3a4357;border-radius:6px;font-size:14px;background:#2d3545;color:#fff;transition:border-color .2s ease}.property-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 1px #007bff}.property-textarea{min-height:80px;resize:vertical}.property-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23e5e7eb' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;padding-right:32px}.property-checkbox{width:auto;margin-right:8px}.checkbox-wrapper{display:flex;align-items:center}.drag-overlay{opacity:.8;transform:rotate(5deg);pointer-events:none}.drop-indicator{height:2px;background:#007bff;margin:8px 0;border-radius:1px;opacity:.8}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f3f3f3}::-webkit-scrollbar-thumb{background:#bbb;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#999}@media (max-width: 1024px){.sidebar,.properties-panel{width:16rem}}@media (max-width: 768px){.app-container{flex-direction:column}.sidebar,.properties-panel{width:100%;height:200px;border-right:none;border-bottom:1px solid #2b3444}.properties-panel{border-left:none;border-top:1px solid #2b3444;border-bottom:none}}.main-buttons{display:flex;flex-direction:column;flex:0 0 40%;max-inline-size:26rem;gap:14px;justify-content:center}.column-buttons{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);aspect-ratio:3 / 1;padding:0;border:1px solid rgba(0,0,0,.08);border-radius:12px;overflow:hidden;background:#f8f8f8;gap:0;cursor:pointer;box-shadow:0 1px 3px #00000014;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease}@media (hover: hover) and (pointer: fine){.column-buttons:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}}.column-buttons:focus-visible{outline:3px solid #111;outline-offset:3px}@media (prefers-reduced-motion: reduce){.column-buttons{transition:box-shadow .12s ease,background-color .12s ease}.column-buttons:hover{transform:none}}.button-image{grid-column:1 / 2;grid-row:1 / -1;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.activities-text{grid-column:2 / 3;display:flex;flex-direction:column;justify-content:center;gap:.25rem;padding:0 .875rem;min-width:0}.activities-title{font-weight:700;font-size:clamp(1rem,2vw,1.125rem);line-height:1.2;margin:0}.activities-description{color:#000000b3;line-height:1.35;margin:0}.paragraph-component{display:flex;flex-direction:column;gap:.75rem;line-height:1.6;max-inline-size:26rem}.paragraph-text{margin:0;white-space:pre-wrap;color:#333;transition:all .2s ease}.paragraph-small{font-size:.875rem}.paragraph-medium{font-size:1rem}.paragraph-large{font-size:1.25rem}.paragraph-xlarge{font-size:1.5rem}.paragraph-bold{font-weight:600}.paragraph-italic{font-style:italic}.paragraph-center{text-align:center}.paragraph-right{text-align:right}.paragraph-left{text-align:left}.paragraph-text:is(h1,h2,h3,h4,h5,h6){font-weight:600;margin:0}.paragraph-text:is(h1){font-size:2rem;line-height:1.2}.paragraph-text:is(h2){font-size:1.5rem;line-height:1.3}.paragraph-text:is(h3){font-size:1.25rem;line-height:1.4}.paragraph-text:is(h4){font-size:1.125rem;line-height:1.5}.paragraph-text:is(h5){font-size:1rem;line-height:1.5}.paragraph-text:is(h6){font-size:.875rem;line-height:1.5}.paragraph-blank{height:.01rem;margin:0;content:""}.image-component{margin:0;padding:0;display:block;width:100%;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a;transition:all .2s ease;max-inline-size:26rem}.image-component:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.image-element{width:100%;height:auto;max-width:100%;display:block;object-fit:cover;transition:transform .2s ease}.image-component:hover .image-element{transform:scale(1.02)}.image-caption{padding:12px 16px;font-size:.875rem;color:#6b7280;text-align:center;line-height:1.4;margin:0;background:#f9fafb;border-top:1px solid #f3f4f6}@media (max-width: 768px){.image-component{border-radius:6px}.image-caption{padding:10px 12px;font-size:.8rem}}.image-element[src*=default-placeholder]{background:linear-gradient(45deg,#f3f4f6,#e5e7eb);min-height:200px;display:flex;align-items:center;justify-content:center}.image-element[src$="default-placeholder.jpg"]{background:#f9fafb;border:2px dashed #d1d5db;min-height:200px}.webpage-editor{height:100vh;overflow:hidden}.editor-layout{display:flex;height:100%}.editor-main{flex:1;display:flex;flex-direction:column;min-width:0}.editor-canvas-container{flex:1;overflow:auto}.canvas.drag-over{border-color:#007bff!important;background:#f0f7ff!important}.sortable-component.is-overlay{opacity:.8;transform:rotate(5deg);pointer-events:none;z-index:1000}
