:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:2px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#f9f9f9;color:#213547;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}:root{--fm-primary-50: #eff6ff;--fm-primary-100: #dbeafe;--fm-primary-200: #bfdbfe;--fm-primary-300: #93c5fd;--fm-primary-400: #60a5fa;--fm-primary-500: #3b82f6;--fm-primary-600: #2563eb;--fm-primary-700: #1d4ed8;--fm-primary-800: #1e40af;--fm-primary-900: #1e3a8a;--fm-secondary-50: #f5f3ff;--fm-secondary-100: #ede9fe;--fm-secondary-200: #ddd6fe;--fm-secondary-300: #c4b5fd;--fm-secondary-400: #a78bfa;--fm-secondary-500: #8b5cf6;--fm-secondary-600: #7c3aed;--fm-secondary-700: #6d28d9;--fm-secondary-800: #5b21b6;--fm-secondary-900: #4c1d95;--fm-success-50: #f0fdf4;--fm-success-100: #dcfce7;--fm-success-200: #bbf7d0;--fm-success-300: #86efac;--fm-success-400: #4ade80;--fm-success-500: #22c55e;--fm-success-600: #16a34a;--fm-success-700: #15803d;--fm-success-800: #166534;--fm-success-900: #14532d;--fm-warning-50: #fffbeb;--fm-warning-100: #fef3c7;--fm-warning-200: #fde68a;--fm-warning-300: #fcd34d;--fm-warning-400: #fbbf24;--fm-warning-500: #f59e0b;--fm-warning-600: #d97706;--fm-warning-700: #b45309;--fm-warning-800: #92400e;--fm-warning-900: #78350f;--fm-error-50: #fef2f2;--fm-error-100: #fee2e2;--fm-error-200: #fecaca;--fm-error-300: #fca5a5;--fm-error-400: #f87171;--fm-error-500: #ef4444;--fm-error-600: #dc2626;--fm-error-700: #b91c1c;--fm-error-800: #991b1b;--fm-error-900: #7f1d1d;--fm-gray-50: #f8fafc;--fm-gray-100: #f1f5f9;--fm-gray-200: #e2e8f0;--fm-gray-300: #cbd5e1;--fm-gray-400: #94a3b8;--fm-gray-500: #64748b;--fm-gray-600: #475569;--fm-gray-700: #334155;--fm-gray-800: #1e293b;--fm-gray-900: #0f172a;--fm-white: #ffffff;--fm-black: #000000;--fm-bg-primary: var(--fm-white);--fm-bg-secondary: var(--fm-gray-50);--fm-bg-tertiary: var(--fm-gray-100);--fm-bg-hover: var(--fm-gray-50);--fm-bg-active: var(--fm-primary-50);--fm-bg-disabled: var(--fm-gray-100);--fm-text-primary: var(--fm-gray-900);--fm-text-secondary: var(--fm-gray-700);--fm-text-tertiary: var(--fm-gray-500);--fm-text-placeholder: var(--fm-gray-400);--fm-text-disabled: var(--fm-gray-400);--fm-text-inverse: var(--fm-white);--fm-border-default: var(--fm-gray-200);--fm-border-hover: var(--fm-gray-300);--fm-border-focus: var(--fm-primary-500);--fm-border-error: var(--fm-error-500);--fm-border-success: var(--fm-success-500);--fm-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--fm-font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--fm-text-xs: .75rem;--fm-text-sm: .8125rem;--fm-text-base: .875rem;--fm-text-lg: 1rem;--fm-text-xl: 1.25rem;--fm-text-2xl: 1.5rem;--fm-text-3xl: 1.875rem;--fm-font-normal: 400;--fm-font-medium: 500;--fm-font-semibold: 600;--fm-font-bold: 700;--fm-leading-none: 1;--fm-leading-tight: 1.25;--fm-leading-snug: 1.375;--fm-leading-normal: 1.5;--fm-leading-relaxed: 1.625;--fm-leading-loose: 2;--fm-spacing-0: 0;--fm-spacing-1: .25rem;--fm-spacing-2: .5rem;--fm-spacing-3: .75rem;--fm-spacing-4: 1rem;--fm-spacing-5: 1.25rem;--fm-spacing-6: 1.5rem;--fm-spacing-8: 2rem;--fm-spacing-10: 2.5rem;--fm-spacing-12: 3rem;--fm-spacing-16: 4rem;--fm-radius-none: 0;--fm-radius-sm: .125rem;--fm-radius-base: .25rem;--fm-radius-md: .375rem;--fm-radius-lg: .5rem;--fm-radius-xl: .75rem;--fm-radius-2xl: 1rem;--fm-radius-full: 9999px;--fm-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--fm-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--fm-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--fm-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--fm-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--fm-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--fm-shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .06);--fm-shadow-focus: 0 0 0 3px rgba(59, 130, 246, .1);--fm-z-0: 0;--fm-z-10: 10;--fm-z-20: 20;--fm-z-30: 30;--fm-z-40: 40;--fm-z-50: 50;--fm-z-dropdown: 100;--fm-z-sticky: 200;--fm-z-fixed: 300;--fm-z-modal: 400;--fm-z-popover: 500;--fm-z-tooltip: 600;--fm-z-notification: 700;--fm-transition-fast: .15s;--fm-transition-base: .2s;--fm-transition-slow: .3s;--fm-transition-slower: .5s;--fm-ease-in: cubic-bezier(.4, 0, 1, 1);--fm-ease-out: cubic-bezier(0, 0, .2, 1);--fm-ease-in-out: cubic-bezier(.4, 0, .2, 1);--fm-toolbar-height: 48px;--fm-toolbar-bg: var(--fm-bg-primary);--fm-toolbar-border: var(--fm-border-default);--fm-panel-width: 280px;--fm-panel-bg: var(--fm-bg-secondary);--fm-panel-header-bg: var(--fm-bg-primary);--fm-canvas-bg: var(--fm-bg-tertiary);--fm-canvas-field-bg: var(--fm-bg-primary);--fm-canvas-field-border: var(--fm-border-default);--fm-canvas-field-hover-border: var(--fm-border-hover);--fm-canvas-field-selected-border: var(--fm-border-focus);--fm-btn-primary-bg: var(--fm-primary-500);--fm-btn-primary-hover-bg: var(--fm-primary-600);--fm-btn-primary-text: var(--fm-white);--fm-btn-secondary-bg: var(--fm-gray-100);--fm-btn-secondary-hover-bg: var(--fm-gray-200);--fm-btn-secondary-text: var(--fm-gray-700);--fm-btn-danger-bg: var(--fm-error-500);--fm-btn-danger-hover-bg: var(--fm-error-600);--fm-btn-danger-text: var(--fm-white);--fm-field-bg: var(--fm-bg-primary);--fm-field-border: var(--fm-border-default);--fm-field-focus-border: var(--fm-border-focus);--fm-field-error-border: var(--fm-border-error);--fm-field-disabled-bg: var(--fm-bg-disabled);--fm-field-disabled-text: var(--fm-text-disabled)}.dark-theme{--fm-bg-primary: var(--fm-gray-900);--fm-bg-secondary: var(--fm-gray-800);--fm-bg-tertiary: var(--fm-gray-700);--fm-bg-hover: var(--fm-gray-700);--fm-bg-active: var(--fm-primary-900);--fm-text-primary: var(--fm-gray-100);--fm-text-secondary: var(--fm-gray-300);--fm-text-tertiary: var(--fm-gray-400);--fm-text-placeholder: var(--fm-gray-500);--fm-border-default: var(--fm-gray-700);--fm-border-hover: var(--fm-gray-600);--fm-canvas-bg: var(--fm-gray-800);--fm-canvas-field-bg: var(--fm-gray-900);--fm-panel-bg: var(--fm-gray-800);--fm-panel-header-bg: var(--fm-gray-900)}*{box-sizing:border-box;margin:0;padding:0}.form-builder-container{display:flex;height:100%;min-height:0;background:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif;font-size:14px;color:#1e293b;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;position:relative}.component-panel{width:300px;background:#f8fafc;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;height:100%;overflow:hidden}.panel-header{padding:16px;border-bottom:1px solid #e2e8f0;background:#fff;flex-shrink:0}.panel-header h3{margin:0 0 12px;font-size:14px;font-weight:600;color:#0f172a;text-transform:uppercase;letter-spacing:.025em}.search-input{width:100%;padding:8px 12px;border:1px solid #e2e8f0;border-radius:2px;font-size:13px;background:#fff;transition:all .15s}.search-input::placeholder{color:#94a3b8}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f60d}.field-categories{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px 8px 20px;min-height:0}.field-category{margin-bottom:2px}.category-header{width:100%;padding:8px 12px;background:transparent;border:none;text-align:left;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:#64748b;border-radius:0;transition:all .15s;text-transform:uppercase;letter-spacing:.025em}.category-header:hover{background:#3b82f60d;color:#3b82f6}.category-icon{font-size:14px;opacity:.6}.category-name{flex:1}.category-toggle{font-size:10px;color:#94a3b8;transition:transform .15s}.category-header[aria-expanded=true] .category-toggle{transform:rotate(90deg)}.category-fields{padding:4px;display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.draggable-field{padding:9px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:4px;cursor:move;display:flex;align-items:center;gap:8px;transition:all .15s;font-size:12px;color:#475569;-webkit-user-select:none;user-select:none;position:relative;min-height:36px;line-height:1}.draggable-field:hover{background:#f0f9ff;color:#3b82f6;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626;transform:translateY(-1px);z-index:10}.draggable-field:hover .field-icon svg{color:#3b82f6!important}.draggable-field:active{transform:scale(.98)}.field-icon{font-size:16px;opacity:.7;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:16px;height:16px;line-height:1}.field-icon svg{width:16px;height:16px;display:block}.draggable-field .field-label{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:16px;height:16px;flex:1;display:flex;align-items:center;margin-bottom:0}.form-canvas-wrapper{flex:1;display:flex;flex-direction:column;background:#f1f5f9;overflow:hidden}.toolbar{padding:12px 20px;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;gap:8px;height:52px}.toolbar-button{padding:6px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:2px;cursor:pointer;font-size:12px;font-weight:500;display:flex;align-items:center;gap:6px;transition:all .15s;color:#64748b;height:32px}.toolbar-button:hover:not(:disabled){background:#f8fafc;border-color:#3b82f6;color:#3b82f6}.toolbar-button:hover:not(:disabled) svg{color:#3b82f6}.toolbar-button:active{background:#e2e8f0}.toolbar-button:disabled{opacity:.4;cursor:not-allowed}.toolbar-separator{width:1px;height:20px;background:#e2e8f0;margin:0 4px}.device-preview-switcher{display:flex;gap:2px;background:#e2e8f0;padding:3px;border-radius:8px}.device-button{display:flex;align-items:center;gap:8px;padding:8px 12px;background:transparent;border:none;border-radius:6px;cursor:pointer;font-size:12px;color:#64748b;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.device-button:hover{background:#ffffff80;color:#475569}.device-button.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0000001a}.device-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.device-button svg{transition:all .2s ease}.device-button.active svg{color:#3b82f6}.device-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;flex:1}.device-label{font-weight:600;font-size:12px;line-height:1}.device-width{font-size:10px;color:#94a3b8;font-weight:500;line-height:1}.device-button.active .device-width{color:#64748b}.form-canvas{flex:1;margin:20px;background:#fff;border-radius:4px;border:1px solid #e2e8f0;overflow:auto;display:flex;flex-direction:column}.canvas-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;background:#fff}.canvas-header h2{margin:0;font-size:18px;font-weight:600;color:#0f172a;-webkit-user-select:none;user-select:none;pointer-events:none}.canvas-header p{margin:4px 0 0;font-size:13px;color:#64748b}.canvas-drop-zone{flex:1;padding:20px;min-height:300px;background:#fff;border:2px solid transparent;transition:all .2s ease;position:relative}.canvas-drop-zone.empty{display:flex;align-items:center;justify-content:center}.empty-state{text-align:center;color:#94a3b8;font-size:13px;padding:40px;border:2px dashed #e2e8f0;border-radius:4px;background:#f8fafc;max-width:400px;width:100%}.sortable-field{margin-bottom:12px;border:2px solid #e2e8f0;border-radius:2px;background:#fff;transition:all .2s ease;position:relative;min-height:50px;cursor:pointer}.sortable-field:hover{border-color:#cbd5e1;background:#f8fafc;box-shadow:0 2px 8px #0000000f}.sortable-field.selected{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 3px #3b82f61a}.sortable-field.selected:hover{background:#dbeafe;box-shadow:0 0 0 3px #3b82f626}.sortable-field.dragging{opacity:.3;border-style:dashed}.sortable-field.drag-over-top:before,.sortable-field.drag-over-bottom:after{content:"";position:absolute;left:0;right:0;height:3px;background:#3b82f6;z-index:10}.sortable-field.drag-over-top:before{top:-6px}.sortable-field.drag-over-bottom:after{bottom:-6px}.sortable-field.drop-indicator:before{content:"";position:absolute;top:-3px;left:0;right:0;height:3px;background:#3b82f6;border-radius:2px;z-index:10;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.field-controls{position:absolute;right:8px;top:8px;display:flex;gap:4px;opacity:0;transition:opacity .2s ease;z-index:10}.sortable-field:hover .field-controls,.sortable-field.selected .field-controls{opacity:1}.drag-handle{width:28px;height:28px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:2px;cursor:move;display:flex;align-items:center;justify-content:center;font-size:12px;color:#94a3b8;transition:all .2s ease}.drag-handle:hover{background:#f0f9ff;border-color:#3b82f6;color:#3b82f6}.drag-handle:hover svg{color:#3b82f6}.field-action{width:28px;height:28px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s ease;color:#94a3b8}.field-action:hover{background:#f0fdf4;border-color:#10b981;color:#10b981}.field-action:hover svg{color:#10b981}.field-action.delete:hover{background:#fef2f2;border-color:#ef4444;color:#ef4444}.field-action.delete:hover svg{color:#ef4444}.field-content{padding:16px 120px 16px 16px}.field-wrapper{width:100%}.field-label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:#334155}.required-mark{color:#ef4444;margin-left:2px}.field-input,.field-textarea,.field-select,.field-file{width:100%;padding:8px 12px;border:1px solid #e2e8f0;border-radius:2px;font-size:13px;font-family:inherit;transition:all .2s ease;background:#fff}.field-input:hover:not(:focus):not(:disabled),.field-textarea:hover:not(:focus):not(:disabled),.field-select:hover:not(:focus):not(:disabled){border-color:#3b82f6;background:#f0f9ff}.field-input:focus,.field-textarea:focus,.field-select:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f60d}.field-input:disabled,.field-textarea:disabled,.field-select:disabled{background:#f1f5f9;cursor:not-allowed;opacity:.6}.field-textarea{resize:vertical;min-height:80px;line-height:1.5}.field-checkbox-group,.field-radio-group{display:flex;flex-direction:column;gap:8px}.checkbox-label,.radio-label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;color:#475569;transition:color .2s ease}.checkbox-label:hover,.radio-label:hover{color:#1e293b}.field-checkbox,.field-radio{width:16px;height:16px;cursor:pointer;accent-color:#3b82f6}.field-help{display:block;margin-top:4px;font-size:12px;color:#94a3b8}.field-error{display:block;margin-top:4px;font-size:12px;color:#ef4444}.field-header{margin:0 0 12px;color:#0f172a;font-weight:600}.field-paragraph{margin:0 0 12px;color:#64748b;line-height:1.6;font-size:13px}.field-divider{margin:16px 0;border:none;border-top:1px solid #e2e8f0}.properties-panel{width:320px;background:#f8fafc;border-left:1px solid #e2e8f0;display:flex;flex-direction:column;height:100%;overflow:hidden}.properties-panel .panel-header{background:#fff;flex-shrink:0}.panel-tabs{display:flex;background:#fff;border-bottom:1px solid #e2e8f0;padding:0 8px;flex-shrink:0}.tab{flex:1;padding:10px 12px;background:transparent;border:none;cursor:pointer;font-size:13px;font-weight:500;color:#94a3b8;transition:all .15s;position:relative}.tab:hover:not(:disabled){color:#64748b;background:#64748b0d}.tab.active{color:#3b82f6;background:transparent}.tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#3b82f6}.tab:disabled{opacity:.4;cursor:not-allowed}.panel-content{flex:1;padding:16px 16px 24px;overflow-y:auto;overflow-x:hidden;background:#f8fafc;min-height:0}.form-properties{width:100%;height:100%;position:relative}.property-section{margin-bottom:20px;background:#fff;border:1px solid #e2e8f0;border-radius:2px;padding:8px 12px;position:relative}.property-section h4{margin:0 0 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.025em;color:#94a3b8;-webkit-user-select:none;user-select:none}.property-group{margin-bottom:12px;position:relative}.property-group:last-child{margin-bottom:0}.property-group label{display:block;margin-bottom:4px;font-size:12px;font-weight:500;color:#475569}.property-group input[type=text],.property-group input[type=number],.property-group select,.property-group textarea{width:100%;padding:6px 10px;border:1px solid #e2e8f0;border-radius:2px;font-size:13px;font-family:inherit;background:#fff;transition:all .15s;position:relative;z-index:10}.property-group input:focus,.property-group select:focus,.property-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f60d}.property-group input[type=checkbox]{margin-right:6px;width:14px;height:14px;accent-color:#3b82f6}.property-label{display:block;margin-bottom:4px;font-size:12px;font-weight:500;color:#475569;-webkit-user-select:none;user-select:none;cursor:pointer}.property-input,.property-textarea{width:100%;padding:6px 10px;border:1px solid #e2e8f0;border-radius:2px;font-size:13px;font-family:inherit;background:#fff;transition:all .15s;outline:none;color:#1e293b;cursor:text;position:relative;z-index:1;-webkit-appearance:none;-moz-appearance:none;appearance:none}.property-input:hover:not(:focus),.property-textarea:hover:not(:focus){border-color:#cbd5e1;background:#fafafa}.property-input:focus,.property-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f60d;background:#fff;color:#1e293b;caret-color:#3b82f6}.property-input::placeholder,.property-textarea::placeholder{color:#94a3b8;opacity:1}.property-input:focus::placeholder,.property-textarea:focus::placeholder{color:#cbd5e1}.property-textarea{resize:vertical;min-height:50px;line-height:1.5}.options-list{margin-bottom:8px}.option-item{display:flex;gap:6px;margin-bottom:6px}.option-item input{flex:1;padding:6px 10px;border:1px solid #e2e8f0;border-radius:2px;font-size:12px;background:#fff;transition:all .15s}.option-item button{width:28px;height:28px;background:#fff;border:1px solid #e2e8f0;border-radius:2px;cursor:pointer;font-size:14px;color:#94a3b8;transition:all .15s;display:flex;align-items:center;justify-content:center}.option-item button:hover{background:#fee2e2;border-color:#fca5a5;color:#ef4444}.btn-add-option{width:100%;padding:8px;background:#3b82f6;border:none;border-radius:2px;cursor:pointer;font-size:12px;font-weight:500;color:#fff;transition:all .15s}.btn-add-option:hover{background:#2563eb}.btn-add-option:active{background:#1d4ed8}.no-selection{text-align:center;padding:32px 16px;color:#94a3b8;font-size:13px}.form-actions{padding:16px 20px;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:8px}.btn{padding:8px 16px;border-radius:2px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;border:1px solid}.btn-primary:active{background:#1d4ed8;border-color:#1d4ed8}.btn-secondary{background:#fff;color:#64748b;border-color:#e2e8f0}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1;color:#475569}.btn-secondary:active{background:#e2e8f0}.drag-overlay{padding:16px;background:#fff;border:1px solid #3b82f6;border-radius:6px;box-shadow:0 4px 6px #0000001a;opacity:.9;max-width:300px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.text-xs{font-size:12px}.text-sm{font-size:13px}.text-base{font-size:14px}.text-lg{font-size:16px}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}@media (max-width: 1200px){.component-panel,.properties-panel{width:280px}}@media (max-width: 992px){.form-builder-container{flex-direction:column}.component-panel,.properties-panel{width:100%;height:auto;max-height:200px}.form-canvas-wrapper{min-height:400px}}*:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;border-radius:2px}.field-range-wrapper{display:flex;align-items:center;gap:12px}.field-range{flex:1;-webkit-appearance:none;height:4px;background:#e2e8f0;border-radius:2px;outline:none}.field-range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;background:#3b82f6;border-radius:50%;cursor:pointer}.field-range::-moz-range-thumb{width:16px;height:16px;background:#3b82f6;border-radius:50%;cursor:pointer;border:none}.range-value{min-width:40px;text-align:center;font-weight:500;color:#475569}.field-color{width:100%;height:40px;padding:4px;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer}.field-switch{display:inline-flex;align-items:center;cursor:pointer;gap:8px}.switch-input{display:none}.switch-slider{width:44px;height:24px;background:#cbd5e1;border-radius:12px;position:relative;transition:background .2s}.switch-slider:after{content:"";position:absolute;width:18px;height:18px;background:#fff;border-radius:50%;top:3px;left:3px;transition:transform .2s}.switch-input:checked+.switch-slider{background:#3b82f6}.switch-input:checked+.switch-slider:after{transform:translate(20px)}.switch-label{font-size:13px;color:#475569}.field-rating{display:flex;gap:4px}.rating-star{background:none;border:none;font-size:24px;color:#e2e8f0;cursor:pointer;transition:color .15s;padding:0;line-height:1}.rating-star.filled{color:#fbbf24}.rating-star:hover:not(:disabled){color:#f59e0b}.rating-star:disabled{cursor:not-allowed;opacity:.5}.field-daterange{display:flex;gap:12px}.daterange-input{flex:1}.daterange-input label{display:block;font-size:12px;color:#64748b;margin-bottom:4px}.field-richtext{border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.richtext-toolbar{display:flex;gap:2px;padding:8px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.toolbar-btn{padding:6px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:4px;font-size:12px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s}.toolbar-btn:hover{background:#3b82f6;border-color:#3b82f6;color:#fff}.richtext-editor{min-height:120px;padding:8px 12px;font-size:14px;line-height:1.6;outline:none}.richtext-editor:focus{background:#f8fafc}.field-signature{display:flex;flex-direction:column;gap:8px}.signature-canvas{background:#fff;cursor:crosshair}.signature-clear{align-self:flex-start;padding:6px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;font-size:12px;color:#475569;cursor:pointer;transition:all .15s}.signature-clear:hover{background:#e2e8f0;color:#1e293b}.field-section{border:1px solid #e2e8f0;border-radius:6px;overflow:hidden;margin:12px 0}.section-header{padding:8px 12px;background:#f8fafc;font-weight:600;color:#1e293b;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between}.section-header:after{content:"▼";font-size:10px;color:#64748b;transition:transform .2s}.field-section[open] .section-header:after{transform:rotate(180deg)}.section-content{padding:8px 12px;background:#fff}.field-alert{padding:8px 12px;border-radius:6px;font-size:13px;margin:8px 0}.alert-info{background:#dbeafe;color:#1e40af;border-left:3px solid #3b82f6}.alert-success{background:#d1fae5;color:#065f46;border-left:3px solid #10b981}.alert-warning{background:#fed7aa;color:#92400e;border-left:3px solid #f97316}.alert-error{background:#fee2e2;color:#991b1b;border-left:3px solid #ef4444}.field-unsupported{padding:8px 12px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:6px;color:#64748b;font-size:13px;text-align:center}.toolbar-button svg,.field-action svg,.drag-handle svg,.category-icon svg,.field-icon svg{width:18px;height:18px;display:flex}.category-toggle svg{width:16px;height:16px;transition:transform .2s}.rating-star svg{width:20px;height:20px}.field-action svg,.drag-handle svg{pointer-events:none}.toolbar-button span{line-height:1}.field-action,.drag-handle{display:flex;align-items:center;justify-content:center;padding:4px}.draggable-field{display:flex;align-items:center;gap:8px}.field-icon{display:flex;align-items:center;color:#64748b}.form-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.form-preview-container{background:#fff;border-radius:12px;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideIn .3s ease}.preview-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.preview-header h2{margin:0;font-size:18px;font-weight:600;color:#0f172a}.close-button{width:32px;height:32px;border:none;background:#f8fafc;border-radius:6px;font-size:20px;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.close-button:hover{background:#e2e8f0;color:#475569}.preview-content{flex:1;overflow-y:auto;padding:24px}.preview-empty{text-align:center;padding:60px 20px;color:#94a3b8}.preview-empty p{margin:8px 0;font-size:14px}.preview-form{max-width:600px;margin:0 auto}.form-header{margin-bottom:32px}.form-header h3{margin:0 0 8px;font-size:24px;font-weight:600;color:#0f172a}.form-description{margin:0;font-size:14px;color:#64748b;line-height:1.5}.form-fields{margin-bottom:32px}.preview-field{margin-bottom:24px}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e2e8f0}.btn-primary,.btn-secondary{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;border:1px solid transparent}.btn-primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.btn-primary:hover{background:#2563eb;border-color:#2563eb}.btn-secondary{background:#fff;color:#475569;border-color:#e2e8f0}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.drag-overlay{background:#fff;border:2px solid #3b82f6;border-radius:8px;padding:16px;box-shadow:0 10px 30px #0003;opacity:.9;max-width:300px}.new-field-overlay{padding:12px 20px;background:#3b82f6;color:#fff;font-size:14px;font-weight:500;border:none}.canvas-drop-zone.drag-over{background:#fafbfc;border:2px solid transparent}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ab3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:8px;box-shadow:0 20px 60px #0000004d;max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column;animation:slideIn .2s ease-out}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.modal-header h3{font-size:18px;font-weight:600;color:#0f172a;margin:0}.modal-close{background:none;border:none;cursor:pointer;padding:4px;color:#64748b;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background:#f1f5f9;color:#0f172a}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-footer{padding:16px 24px;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;flex-shrink:0}.condition-modal-content{max-width:720px}.condition-field-info{margin-bottom:24px;padding:16px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:8px;border:1px solid #e2e8f0}.condition-field-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;display:block}.condition-field-value{font-size:15px;font-weight:600;color:#0f172a;display:flex;align-items:center;gap:8px}.condition-field-type{display:inline-flex;align-items:center;padding:2px 8px;background:#fff;border:1px solid #e2e8f0;border-radius:4px;font-size:11px;font-weight:500;color:#64748b;text-transform:uppercase}.condition-section{margin-bottom:24px}.condition-section-label{display:block;font-size:13px;font-weight:600;color:#475569;margin-bottom:12px}.toggle-group{display:flex;gap:12px;flex-wrap:wrap}.toggle-option{flex:1;min-width:240px;position:relative}.toggle-option input[type=radio]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.toggle-option label{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:14px 16px;background:#fff;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:500;color:#64748b;width:100%;box-sizing:border-box;white-space:nowrap}.toggle-option label:hover{border-color:#cbd5e1;background:#f8fafc}.toggle-option input[type=radio]:checked+label{background:#eff6ff;border-color:#3b82f6;color:#1e40af;box-shadow:0 0 0 3px #3b82f61a}.toggle-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;line-height:1}.toggle-icon svg{width:20px;height:20px;display:block}.logic-toggle-group{display:inline-flex;gap:8px;padding:4px;background:#f1f5f9;border-radius:6px}.logic-toggle-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.logic-toggle-option label{display:inline-flex;align-items:center;padding:6px 16px;background:transparent;border:none;border-radius:4px;cursor:pointer;transition:all .15s ease;font-size:13px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.025em}.logic-toggle-option label:hover{color:#475569}.logic-toggle-option input[type=radio]:checked+label{background:#fff;color:#3b82f6;box-shadow:0 1px 3px #0000001a}.condition-rules-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.condition-card{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff;border:2px solid #e2e8f0;border-radius:8px;transition:all .2s ease;animation:slideInRule .3s ease-out}@keyframes slideInRule{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.condition-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000d}.condition-card-content{flex:1;display:flex;flex-direction:column;gap:10px;min-width:0}.condition-card-actions{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;padding-top:2px}.condition-input,.condition-select{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;font-family:inherit;background:#f8fafc;color:#0f172a;transition:all .2s ease}.condition-input:hover,.condition-select:hover{background:#f1f5f9;border-color:#94a3b8}.condition-input:focus,.condition-select:focus{outline:none;background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.condition-input::placeholder{color:#94a3b8}.condition-select{cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%2364748b' d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;padding-right:40px}.condition-btn{padding:10px 18px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;font-family:inherit}.condition-btn-primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.condition-btn-primary:hover{background:#2563eb;border-color:#2563eb;box-shadow:0 2px 8px #3b82f64d}.condition-btn-primary:active{background:#1d4ed8;transform:translateY(1px)}.condition-btn-secondary{background:#fff;color:#475569;border-color:#cbd5e1}.condition-btn-secondary:hover{background:#f8fafc;border-color:#94a3b8}.condition-btn-secondary:active{background:#f1f5f9}.condition-btn-danger{background:#fff;color:#ef4444;border-color:#fecaca}.condition-btn-danger:hover{background:#fef2f2;border-color:#ef4444}.condition-btn-add{background:#fff;color:#3b82f6;border-color:#bfdbfe;justify-content:center}.condition-btn-add:hover{background:#eff6ff;border-color:#3b82f6;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f633}.condition-btn-add:active{transform:translateY(0)}.condition-btn-icon{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:6px}.condition-btn-icon.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.field-condition-badge{position:absolute;top:8px;right:128px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:10px;font-weight:600;padding:3px 8px;border-radius:10px;display:flex;align-items:center;gap:4px;box-shadow:0 2px 4px #6366f14d;animation:badgePulse 2s ease-in-out infinite}@keyframes badgePulse{0%,to{box-shadow:0 2px 4px #6366f14d}50%{box-shadow:0 2px 8px #6366f180}}.field-condition-badge-icon{font-size:12px;display:flex;align-items:center;justify-content:center;width:12px;height:12px}.field-condition-badge-icon svg{width:12px;height:12px}.field-action.settings:hover{background:#f5f3ff;border-color:#8b5cf6;color:#8b5cf6}.field-action.settings:hover svg{color:#8b5cf6}.field-action.settings.has-conditions{background:#f5f3ff;border-color:#a78bfa;color:#7c3aed}.field-action.settings.has-conditions svg{color:#7c3aed}.condition-empty-state{text-align:center;padding:48px 24px}.condition-empty-icon{font-size:48px;margin-bottom:16px;opacity:.3;display:flex;align-items:center;justify-content:center;color:#f59e0b}.condition-empty-icon svg{width:48px;height:48px}.condition-empty-title{font-size:16px;font-weight:600;color:#475569;margin-bottom:8px}.condition-empty-text{font-size:14px;color:#94a3b8;line-height:1.6;max-width:400px;margin:0 auto}@media (max-width: 768px){.condition-modal-content{max-width:95%}.toggle-option{min-width:100%}.condition-card{flex-direction:column}.condition-card-actions{flex-direction:row;justify-content:flex-end}}.canvas-end-drop-zone{min-height:50px;margin-top:8px;border:2px dashed transparent;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.canvas-end-drop-zone.drag-over-end{border-color:#3b82f6;background:#eff6ff}.drop-indicator-end{color:#3b82f6;font-size:14px;font-weight:500;padding:8px 12px}.field-drop-indicator{min-height:50px;margin:8px 0;border:2px dashed #3b82f6;border-radius:8px;background:#eff6ff;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.drop-indicator-text{color:#3b82f6;font-size:14px;font-weight:500;padding:8px 12px}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.drop-indicator{min-height:50px;margin:8px 0;border:2px dashed #3b82f6;border-radius:8px;background:#eff6ff;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.form-viewer{width:100%;max-width:100%}.form-viewer-header{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e5e7eb}.form-viewer-title{margin:0 0 8px;font-size:28px;font-weight:600;color:#0f172a}.form-viewer-description{margin:0;font-size:15px;color:#64748b;line-height:1.6}.form-viewer-fields{display:flex;flex-direction:column;gap:24px}.form-viewer-footer{margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb;display:flex;gap:12px}.form-viewer-button{padding:10px 20px;font-size:14px;font-weight:500;border:none;border-radius:2px;cursor:pointer;transition:all .2s}.form-viewer-button-primary{background:#3b82f6;color:#fff}.form-viewer-button-primary:hover:not(:disabled){background:#2563eb}.form-viewer-button-secondary{background:#f1f5f9;color:#475569}.form-viewer-button-secondary:hover:not(:disabled){background:#e2e8f0}.form-viewer-button:disabled{opacity:.5;cursor:not-allowed}.form-field{display:flex;flex-direction:column;gap:8px}.form-field-label{font-size:14px;font-weight:500;color:#334155;display:block}.required-mark{color:#ef4444;margin-left:4px}.form-field-input,.form-field-textarea-input,.form-field-select-input{width:100%;padding:8px 12px;font-size:14px;color:#1e293b;border:1px solid #cbd5e1;border-radius:2px;background:#fff;transition:all .2s;cursor:text}.form-field-input::placeholder,.form-field-textarea-input::placeholder,.form-field-select-input::placeholder{color:#94a3b8;opacity:1}.form-field-input:focus,.form-field-textarea-input:focus,.form-field-select-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-field-input.has-error,.form-field-textarea-input.has-error,.form-field-select-input.has-error{border-color:#ef4444}.form-field-input.has-error:focus,.form-field-textarea-input.has-error:focus,.form-field-select-input.has-error:focus{box-shadow:0 0 0 3px #ef44441a}.form-field-input:disabled,.form-field-textarea-input:disabled,.form-field-select-input:disabled,.form-field-input[readonly],.form-field-textarea-input[readonly],.form-field-select-input[readonly]{background:#f8fafc;color:#94a3b8;cursor:not-allowed}.form-field-textarea-input{min-height:80px;resize:vertical}.form-field-help{font-size:13px;color:#64748b;line-height:1.4}.form-field-error{font-size:13px;color:#dc2626;line-height:1.4;display:flex;align-items:center;gap:4px}.form-field-error:before{content:"!";display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#fee2e2;color:#dc2626;font-size:11px;font-weight:600;flex-shrink:0}.form-field-checkbox,.form-field-checkbox-group{display:flex;flex-direction:column;gap:8px}.form-field-checkbox-wrapper{display:flex;align-items:center;gap:8px}.form-field-checkbox-options{display:flex;flex-direction:column;gap:12px}.form-field-checkbox-input{width:18px;height:18px;border:1px solid #cbd5e1;border-radius:2px;cursor:pointer;flex-shrink:0}.form-field-checkbox-input:checked{accent-color:#3b82f6}.form-field-checkbox-input:disabled{cursor:not-allowed;opacity:.5}.form-field-checkbox-label{font-size:14px;color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none}.form-field-checkbox-input:disabled+.form-field-checkbox-label{cursor:not-allowed;opacity:.5}.form-field-radio{display:flex;flex-direction:column;gap:8px}.form-field-radio-options{display:flex;flex-direction:column;gap:12px}.form-field-radio-wrapper{display:flex;align-items:center;gap:8px}.form-field-radio-input{width:18px;height:18px;border:1px solid #cbd5e1;cursor:pointer;flex-shrink:0}.form-field-radio-input:checked{accent-color:#3b82f6}.form-field-radio-input:disabled{cursor:not-allowed;opacity:.5}.form-field-radio-label{font-size:14px;color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none}.form-field-radio-input:disabled+.form-field-radio-label{cursor:not-allowed;opacity:.5}.form-viewer-status{margin-top:20px;padding:12px 16px;border-radius:2px;animation:slideIn .3s ease}.form-viewer-status-content{display:flex;align-items:center;gap:10px}.form-viewer-status-icon{font-size:18px;font-weight:600;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}.form-viewer-status-message{font-size:14px;line-height:1.4}.form-viewer-status-success{background:#f0fdf4;border:1px solid #86efac;color:#166534}.form-viewer-status-success .form-viewer-status-icon{background:#22c55e;color:#fff}.form-viewer-status-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.form-viewer-status-error .form-viewer-status-icon{background:#ef4444;color:#fff}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.field-header{margin:16px 0 8px}.field-header h3{margin:0;font-size:18px;font-weight:600;color:#1e293b}.field-paragraph{margin:8px 0}.field-paragraph p{margin:0;font-size:14px;color:#64748b;line-height:1.6}.field-divider{margin:24px 0;border:none;border-top:1px solid #e5e7eb}.field-unsupported{padding:16px;background:#fef2f2;border:1px solid #fecaca;border-radius:2px}.field-unsupported p{margin:0;font-size:14px;color:#991b1b}.form-field-switch-wrapper{display:flex;align-items:center;gap:12px}.form-field-switch-container{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.form-field-switch-input{opacity:0;width:0;height:0}.form-field-switch-slider{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;transition:.3s;border-radius:24px}.form-field-switch-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}.form-field-switch-input:checked+.form-field-switch-slider{background-color:#3b82f6}.form-field-switch-input:checked+.form-field-switch-slider:before{transform:translate(20px)}.form-field-switch-input:disabled+.form-field-switch-slider{opacity:.5;cursor:not-allowed}.form-field-switch-label{font-size:14px;color:#475569;-webkit-user-select:none;user-select:none}.form-field-range-wrapper{display:flex;align-items:center;gap:12px}.form-field-range-container{flex:1;position:relative}.form-field-range-input{width:100%;height:6px;border-radius:3px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.form-field-range-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#3b82f6;cursor:pointer;box-shadow:0 2px 4px #0003}.form-field-range-input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#3b82f6;cursor:pointer;box-shadow:0 2px 4px #0003}.form-field-range-input:disabled{opacity:.5;cursor:not-allowed}.form-field-range-value{position:absolute;top:-25px;left:50%;transform:translate(-50%);background:#1e293b;color:#fff;padding:2px 8px;border-radius:2px;font-size:12px;font-weight:500}.form-field-range-label-min,.form-field-range-label-max{font-size:12px;color:#64748b;min-width:30px}.form-field-rating-wrapper{display:flex;align-items:center;gap:16px}.form-field-rating-stars{display:flex;gap:4px}.form-field-rating-star{font-size:24px;color:#e5e7eb;cursor:pointer;transition:color .2s;background:none;border:none;padding:0}.form-field-rating-star:hover:not(:disabled){color:#fbbf24}.form-field-rating-star-filled{color:#f59e0b}.form-field-rating-star:disabled{cursor:not-allowed;opacity:.5}.form-field-rating-label{font-size:14px;color:#64748b;font-style:italic}.form-field-file-wrapper{display:flex;align-items:center;gap:12px}.form-field-file-input{display:none}.form-field-file-button{padding:8px 16px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:2px;color:#475569;font-size:14px;cursor:pointer;transition:all .2s}.form-field-file-button:hover:not(:disabled){background:#e2e8f0;border-color:#94a3b8}.form-field-file-button:disabled{opacity:.5;cursor:not-allowed}.form-field-color-wrapper{display:flex;align-items:center;gap:12px}.form-field-color-input{width:50px;height:40px;border:1px solid #cbd5e1;border-radius:2px;cursor:pointer;padding:2px}.form-field-color-input:disabled{opacity:.5;cursor:not-allowed}.form-field-color-value{font-size:14px;color:#475569;font-family:monospace;text-transform:uppercase}.form-field-section{margin:24px 0;border:1px solid #e5e7eb;border-radius:2px;overflow:hidden}.form-field-section-header{padding:16px;background:#f8fafc;border-bottom:1px solid #e5e7eb}.form-field-section-header.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;justify-content:space-between;align-items:center}.form-field-section-header.collapsible:hover{background:#f1f5f9}.form-field-section-title{margin:0;font-size:16px;font-weight:600;color:#1e293b}.form-field-section-description{margin:4px 0 0;font-size:14px;color:#64748b}.form-field-section-toggle{font-size:14px;color:#64748b;transition:transform .2s}.form-field-section-content{padding:20px}.form-field-section.collapsed .form-field-section-header{border-bottom:none}.form-field-alert{padding:12px 16px;border-radius:2px;margin:16px 0;display:flex;justify-content:space-between;align-items:flex-start}.form-field-alert-content{display:flex;gap:12px;flex:1}.form-field-alert-icon{font-size:18px;font-weight:600;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}.form-field-alert-text{flex:1}.form-field-alert-title{font-size:14px;font-weight:600;margin-bottom:4px}.form-field-alert-message{font-size:14px;line-height:1.5}.form-field-alert-dismiss{background:none;border:none;font-size:18px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:opacity .2s}.form-field-alert-dismiss:hover{opacity:1}.form-field-alert-info{background:#eff6ff;border:1px solid #93c5fd;color:#1e40af}.form-field-alert-info .form-field-alert-icon{background:#3b82f6;color:#fff}.form-field-alert-success{background:#f0fdf4;border:1px solid #86efac;color:#166534}.form-field-alert-success .form-field-alert-icon{background:#22c55e;color:#fff}.form-field-alert-warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.form-field-alert-warning .form-field-alert-icon{background:#f59e0b;color:#fff}.form-field-alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.form-field-alert-error .form-field-alert-icon{background:#ef4444;color:#fff}*,*:before,*:after{box-sizing:border-box}.fm-root{font-family:var(--fm-font-sans);font-size:var(--fm-text-base);line-height:var(--fm-leading-normal);color:var(--fm-text-primary);background-color:var(--fm-bg-primary)}.fm-text-xs{font-size:var(--fm-text-xs)}.fm-text-sm{font-size:var(--fm-text-sm)}.fm-text-base{font-size:var(--fm-text-base)}.fm-text-lg{font-size:var(--fm-text-lg)}.fm-text-xl{font-size:var(--fm-text-xl)}.fm-font-normal{font-weight:var(--fm-font-normal)}.fm-font-medium{font-weight:var(--fm-font-medium)}.fm-font-semibold{font-weight:var(--fm-font-semibold)}.fm-font-bold{font-weight:var(--fm-font-bold)}.fm-m-0{margin:var(--fm-spacing-0)}.fm-m-1{margin:var(--fm-spacing-1)}.fm-m-2{margin:var(--fm-spacing-2)}.fm-m-3{margin:var(--fm-spacing-3)}.fm-m-4{margin:var(--fm-spacing-4)}.fm-p-0{padding:var(--fm-spacing-0)}.fm-p-1{padding:var(--fm-spacing-1)}.fm-p-2{padding:var(--fm-spacing-2)}.fm-p-3{padding:var(--fm-spacing-3)}.fm-p-4{padding:var(--fm-spacing-4)}.fm-shadow-sm{box-shadow:var(--fm-shadow-sm)}.fm-shadow-md{box-shadow:var(--fm-shadow-md)}.fm-shadow-lg{box-shadow:var(--fm-shadow-lg)}.fm-rounded-none{border-radius:var(--fm-radius-none)}.fm-rounded-sm{border-radius:var(--fm-radius-sm)}.fm-rounded{border-radius:var(--fm-radius-base)}.fm-rounded-md{border-radius:var(--fm-radius-md)}.fm-rounded-lg{border-radius:var(--fm-radius-lg)}.fm-transition-fast{transition-duration:var(--fm-transition-fast);transition-timing-function:var(--fm-ease-in-out)}.fm-transition{transition-duration:var(--fm-transition-base);transition-timing-function:var(--fm-ease-in-out)}.fm-transition-slow{transition-duration:var(--fm-transition-slow);transition-timing-function:var(--fm-ease-in-out)}.preview-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.preview-modal{background:#f8fafc;border-radius:12px;width:95vw;height:95vh;max-width:1800px;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.preview-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:#fff;border-radius:12px 12px 0 0}.preview-modal-title{display:flex;align-items:center;gap:12px}.preview-modal-title .icon-renderer{color:#3b82f6}.preview-modal-title .material-icons-outlined{color:#3b82f6;font-size:24px}.preview-modal-title h3{margin:0;font-size:18px;font-weight:600;color:#0f172a}.preview-modal-controls{display:flex;align-items:center;gap:16px}.preview-close-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s;flex-shrink:0}.preview-close-button .icon-renderer,.preview-close-button .material-icons-outlined{color:#64748b}.preview-close-button:hover{background:#fee2e2;border-color:#ef4444}.preview-close-button:hover .icon-renderer,.preview-close-button:hover .material-icons-outlined{color:#ef4444}.preview-modal-content{flex:1;overflow:auto;padding:32px;background:#f8fafc;display:flex;align-items:flex-start;justify-content:center}.preview-device-frame{background:#fff;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:32px;width:100%;transition:all .3s ease}.preview-device-frame.device-desktop{max-width:100%}.preview-device-frame.device-tablet{max-width:768px;margin:0 auto}.preview-device-frame.device-mobile{max-width:375px;margin:0 auto}.preview-form{width:100%}.toolbar-button-primary{background:#3b82f6!important;color:#fff!important;border-color:#3b82f6!important}.toolbar-button-primary:hover:not(:disabled){background:#2563eb!important;border-color:#2563eb!important;transform:translateY(-1px);box-shadow:0 4px 6px -1px #3b82f64d}.toolbar-button-primary svg,.toolbar-button-primary .material-icons-outlined{color:#fff!important}#root{width:100%;height:100vh;margin:0;padding:0}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}
