| | |
| | @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap'); |
| |
|
| | body { |
| | font-family: 'Inter', sans-serif; |
| | } |
| |
|
| | |
| | ::-webkit-scrollbar { |
| | width: 8px; |
| | } |
| |
|
| | ::-webkit-scrollbar-track { |
| | background: #1f2937; |
| | } |
| |
|
| | ::-webkit-scrollbar-thumb { |
| | background: #4b5563; |
| | border-radius: 4px; |
| | } |
| |
|
| | ::-webkit-scrollbar-thumb:hover { |
| | background: #6b7280; |
| | } |
| |
|
| | |
| | .toolbox-item { |
| | transition: transform 0.2s ease; |
| | } |
| |
|
| | .toolbox-item:hover { |
| | transform: translateY(-2px); |
| | } |
| |
|
| | .toolbox-item:active { |
| | transform: translateY(0); |
| | } |
| |
|
| | |
| | .canvas-component { |
| | background: linear-gradient(135deg, #374151 0%, #4b5563 100%); |
| | border: 2px solid #6b7280; |
| | border-radius: 8px; |
| | padding: 16px; |
| | margin: 8px; |
| | min-width: 200px; |
| | cursor: move; |
| | transition: all 0.3s ease; |
| | position: relative; |
| | } |
| |
|
| | .canvas-component:hover { |
| | border-color: #3b82f6; |
| | box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3); |
| | } |
| |
|
| | .canvas-component.selected { |
| | border-color: #10b981; |
| | box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3); |
| | } |
| |
|
| | .component-handle { |
| | cursor: move; |
| | padding: 8px; |
| | background: rgba(0, 0, 0, 0.2); |
| | border-radius: 4px; |
| | margin-bottom: 8px; |
| | } |
| |
|
| | .connection-point { |
| | width: 12px; |
| | height: 12px; |
| | border-radius: 50%; |
| | background: #6b7280; |
| | position: absolute; |
| | cursor: crosshair; |
| | } |
| |
|
| | .connection-point.input { |
| | top: 50%; |
| | left: -6px; |
| | transform: translateY(-50%); |
| | } |
| |
|
| | .connection-point.output { |
| | top: 50%; |
| | right: -6px; |
| | transform: translateY(-50%); |
| | } |
| |
|
| | .connection-line { |
| | stroke: #3b82f6; |
| | stroke-width: 2; |
| | fill: none; |
| | } |
| |
|
| | |
| | .property-group { |
| | margin-bottom: 1.5rem; |
| | } |
| |
|
| | .property-label { |
| | display: block; |
| | margin-bottom: 0.5rem; |
| | font-weight: 500; |
| | color: #d1d5db; |
| | } |
| |
|
| | .property-input { |
| | width: 100%; |
| | padding: 0.5rem; |
| | border-radius: 0.375rem; |
| | background: #374151; |
| | border: 1px solid #4b5563; |
| | color: white; |
| | } |
| |
|
| | .property-input:focus { |
| | outline: none; |
| | border-color: #3b82f6; |
| | ring: 2px solid #3b82f6; |
| | } |
| |
|
| | |
| | .modal-overlay { |
| | position: fixed; |
| | top: 0; |
| | left: 0; |
| | right: 0; |
| | bottom: 0; |
| | background: rgba(0, 0, 0, 0.8); |
| | display: flex; |
| | align-items: center; |
| | justify-content: center; |
| | z-index: 1000; |
| | } |
| |
|
| | .modal-content { |
| | background: #1f2937; |
| | border-radius: 12px; |
| | padding: 2rem; |
| | max-width: 90vw; |
| | max-height: 90vh; |
| | overflow: auto; |
| | } |
| | |
| | .quick-example { |
| | transition: all 0.3s ease; |
| | cursor: pointer; |
| | } |
| |
|
| | .quick-example:hover { |
| | transform: translateY(-2px); |
| | box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3); |
| | } |
| |
|
| | |
| | .notification { |
| | animation: slideIn 0.3s ease-out; |
| | } |
| |
|
| | @keyframes slideIn { |
| | from { |
| | transform: translateX(100%); |
| | opacity: 0; |
| | } |
| | to { |
| | transform: translateX(0); |
| | opacity: 1; |
| | } |
| | } |
| |
|
| | |
| | @media (max-width: 768px) { |
| | .grid-cols-4 { |
| | grid-template-columns: repeat(2, 1fr); |
| | } |
| | } |
| |
|
| | @media (max-width: 480px) { |
| | .grid-cols-4 { |
| | grid-template-columns: 1fr; |
| | } |
| | } |
| |
|