*,.app{margin:0;padding:0}.app{display:flex;flex-direction:column;font-family:Arial,sans-serif;max-height:100vh;max-width:100vw;overflow:hidden}.app.e-mode>div.mode-switcher{background-color:#b3b3b3}.mode-switcher{background:#414141;border-radius:10px;display:flex;justify-content:center;padding:10px}.mode-switcher button{align-items:center;background:#fff;border:0 solid #ddd;border-radius:6px;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 5px;padding:8px 16px;transition:all .2s cubic-bezier(.4,0,.2,1)}.mode-switcher button:hover{background:#f0f0f0;transform:translateY(-1px)}.mode-switcher button.active{background:#fbbf0b;box-shadow:0 4px 12px #fbbf0b4d;color:#2f2e2e}.main-content{display:flex;flex:1 1;height:calc(100vh - 60px)}.sidebar{background:#f5f5f5;border-right:1px solid #ddd;box-shadow:inset -5px 0 15px #00000005;overflow-y:auto;padding:20px;transition:all .4s cubic-bezier(.4,0,.2,1);width:300px}.s-mode .sidebar{background:#f1f4f9}.e-mode .sidebar{background:#fdfaf3}.sidebar h3{color:#333;margin-top:0}.baustein-item{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;margin-bottom:10px;padding:10px;transition:background .2s}.baustein-item:hover{background:#e8f4f8}.baustein-item.selected{background:#06c;border-color:#06c;color:#fff}.baustein-item.selected .baustein-id,.baustein-item.selected .baustein-name,.baustein-item.selected .baustein-size{color:#fff}.baustein-id{color:#06c;font-weight:700}.baustein-name{color:#666;font-size:12px}.baustein-size{color:#999;font-size:11px}.baustein-price{color:#2e7d32;font-size:12px;font-weight:700;margin-top:4px}.element-preview-sidebar{align-items:center;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;display:flex;height:48px;justify-content:center;overflow:hidden;width:40px}.element-preview-sidebar img{max-height:100%;max-width:100%;object-fit:contain;pointer-events:none;transition:transform .2s cubic-bezier(.175,.885,.32,1.275);-webkit-user-select:none;user-select:none}.element-preview-summary{align-items:center;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;display:flex;height:24px;justify-content:center;overflow:hidden;width:24px}.element-preview-summary img{max-height:100%;max-width:100%;object-fit:contain;pointer-events:none;transition:transform .2s ease}.element-item-sidebar .baustein-id{font-size:11px;opacity:.8}.element-item-sidebar .baustein-name{color:#333;font-size:13px;font-weight:600}.baustein-item.too-large{background:#fdf2f2;cursor:not-allowed;opacity:.5}.baustein-item.too-large:hover{background:#fde8e8}.error-text{color:#d32f2f;font-weight:700}.canvas-container{background:#fff;flex:1 1;position:relative}canvas{border:1px solid #ddd;cursor:crosshair}.controls{align-items:center;background:#2f2e2e1c;border:1px solid #ddd;border-radius:4px;display:flex;flex-direction:column;padding:10px;position:absolute;right:10px;top:105px}.controls button{background:#fff;border:1px solid #ddd;border-radius:3px;cursor:pointer;margin-left:10px;padding:5px 10px}.controls button:hover{background:#f0f0f0}.group-settings{background:#2f2e2e1c;border:1px solid #d0c5c5;border-radius:4px;padding:10px 10px 0;position:absolute;right:10px;top:10px;z-index:10}.group-settings h4{color:#333;font-size:14px;margin-bottom:10px;margin-top:0}.setting-row{align-items:center;display:flex;font-size:13px;justify-content:space-between;margin-bottom:8px}.number-control{border-radius:4px;gap:8px;padding:2px}.number-control,.number-control button{align-items:center;background:#fff;display:flex}.number-control button{border:1px solid #ccc;border-radius:3px;cursor:pointer;font-size:16px;font-weight:700;height:24px;justify-content:center;line-height:1;padding:0;width:24px}.number-control button:hover{background:#e0e0e0}.number-control span{font-weight:700;min-width:20px;text-align:center}.custom-alert-container{display:flex;flex-direction:column;gap:10px;left:50%;pointer-events:none;position:fixed;top:20px;transform:translateX(-50%);z-index:9999}.custom-alert{align-items:center;animation:alert-in .5s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-left:6px solid #ff9800;border-radius:12px;box-shadow:0 15px 35px #00000026;color:#333;display:flex;justify-content:space-between;max-width:500px;min-width:320px;padding:16px 24px;pointer-events:auto}.custom-alert.error{border-left-color:#f44336}.custom-alert-content{color:#2c3e50;flex:1 1;font-size:15px;font-weight:500;line-height:1.5}.custom-alert-close{align-items:center;border-radius:50%;color:#bdc3c7;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;margin-left:20px;transition:all .2s ease;width:32px}.custom-alert-close:hover{background:#0000000d;color:#2c3e50}@keyframes alert-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.custom-alert.confirm{align-items:flex-start;border-left-color:#2196f3;flex-direction:column}.confirm-buttons{display:flex;gap:10px;margin-top:15px;width:100%}.confirm-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s}.confirm-btn.yes{background:#f44336;color:#fff}.confirm-btn.yes:hover{background:#d32f2f}.confirm-btn.no{background:#eee;color:#333}.confirm-btn.no:hover{background:#ddd}.category-filter{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 6px #0000000d;margin-bottom:20px;padding:12px}.category-filter label{color:#888;display:block;font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:6px;text-transform:uppercase}.category-filter select{-webkit-appearance:none;appearance:none;background-color:#fcfcfc;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;border:1px solid #e0e0e0;border-radius:6px;color:#333;cursor:pointer;font-size:14px;outline:none;padding:10px 12px;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%}.category-filter select:focus{box-shadow:0 0 0 3px #0066cc1a}.category-filter select:focus,.category-filter select:hover{background-color:#fff;border-color:#06c}.category-filter .search-input{background-color:#fcfcfc;border:1px solid #e0e0e0;border-radius:6px;box-sizing:border-box;color:#333;font-size:14px;margin-top:10px;outline:none;padding:10px 12px;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%}.category-filter .search-input:focus{background-color:#fff;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.summary-toggle{align-items:center;background:#2f2e2e;border:none;border-radius:30px;bottom:20px;box-shadow:0 4px 15px #06c6;color:#fbbf0b;cursor:pointer;display:flex;font-size:18px;gap:10px;height:60px;justify-content:center;left:20px;min-width:60px;padding:0 20px;position:fixed;transition:all .3s cubic-bezier(.175,.885,.32,1.275);z-index:1002}.summary-toggle:hover{background:#0052a3;transform:scale(1.05)}.summary-toggle.open{background:#f44;border-radius:50%;box-shadow:0 4px 15px #ff44444d;color:#fff;left:775px;min-width:60px;padding:0;width:60px}.toggle-price{font-size:18px;font-weight:700;white-space:nowrap}.toggle-icon{align-items:center;color:#fff;display:flex;font-size:24px}.summary-sidebar{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffffe6;border-right:10px solid #fbbf0b80;box-shadow:5px 0 25px #0000001a;display:flex;flex-direction:column;height:100vh;left:-850px;position:fixed;top:0;transition:all .4s cubic-bezier(.4,0,.2,1);width:800px;z-index:1000}.summary-sidebar.open{left:0}.summary-header{background:#2f2e2e;color:#fff;padding:30px 25px}.summary-header h3{font-size:20px;letter-spacing:.5px;margin:0 0 20px}.total-price-large{display:flex;flex-direction:column}.total-price-large .label{font-size:12px;margin-bottom:5px;opacity:.7;text-transform:uppercase}.total-price-large .value{font-size:32px;font-weight:700}.summary-content{display:flex;flex:1 1;gap:30px;overflow-y:auto;padding:25px}.summary-column{display:flex;flex:1 1;flex-direction:column}.summary-section{margin-bottom:25px}.summary-section h4{border-bottom:1px solid #eee;color:#888;font-size:12px;margin-bottom:12px;padding-bottom:8px;text-transform:uppercase}.summary-row{align-items:center;display:flex;font-size:14px;justify-content:space-between;margin-bottom:10px}.summary-row .item-info strong{color:#06c;margin-right:5px}.summary-row .item-price{color:#2c3e50;font-weight:600}.empty-summary{color:#aaa;font-style:italic;margin-top:50px;text-align:center}.summary-footer{border-top:1px solid #eee;padding:25px}.checkout-btn{background:#fbbf0b;border:none;border-radius:8px;box-shadow:0 4px 10px #2e7d3233;color:#2f2e2e;cursor:pointer;font-size:16px;font-weight:700;padding:15px;transition:all .2s;width:100%}.checkout-btn:hover{background:#ecbe36;transform:translateY(-2px)}.custom-alert.success{border-left-color:#4caf50}.kf-header{align-items:center;background-color:#2f2e2e;color:#fff;display:flex;gap:1rem;justify-content:space-between;padding:1rem}#svglogo{fill:#fff}.config-buttons{bottom:35px;display:flex;gap:10px;position:absolute;right:15px;z-index:100}.config-btn{align-items:center;border:none;border-radius:6px;box-shadow:0 4px 12px #0003;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;padding:8px 16px;transition:all .2s cubic-bezier(.4,0,.2,1)}.config-btn svg{stroke-width:2.5px}.config-btn.load,.config-btn.save{background:#fbbf0b;color:#2f2e2e}.config-btn.load:hover,.config-btn.save:hover{background:#ecbe36;box-shadow:0 6px 16px #fbbf0b66;transform:translateY(-1px)}.config-btn.remove{background:#fff;border:1px solid #ff6b6b4d;color:#ff6b6b}.config-btn.remove:hover{background:#1a1a1a;border-color:#ff6b6b;transform:translateY(-1px)}.image-loader-spinner{animation:spin 1s linear infinite;border:2px solid #0000001a;border-radius:50%;border-top-color:#fbbf0b;display:inline-block}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.element-preview-sidebar.loading{background:#fdfdfd}.contact-form{gap:15px}.contact-form,.form-group{display:flex;flex-direction:column}.form-group{gap:5px}.form-group label{color:#555;font-size:12px;font-weight:700;text-transform:none}.form-input{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px;transition:border-color .2s}.form-input:focus{border-color:#fbbf0b;outline:none}textarea.form-input{min-height:80px;resize:vertical}
/*# sourceMappingURL=main.05391536.css.map*/