Spaces:
Sleeping
Sleeping
| /* Custom styles */ | |
| .node { | |
| transition: all 0.3s ease; | |
| cursor: pointer; | |
| outline: none; | |
| position: relative; | |
| } | |
| .node:hover { | |
| transform: translateY(-4px); | |
| box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); | |
| } | |
| .node:focus { | |
| box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.5); | |
| } | |
| .node-content { | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| text-align: center; | |
| gap: 0.25rem; | |
| } | |
| .node-icon { | |
| font-size: 1.5rem; | |
| margin-bottom: 0.25rem; | |
| transition: transform 0.3s ease; | |
| } | |
| .node:hover .node-icon { | |
| transform: scale(1.1); | |
| } | |
| .node-name { | |
| font-weight: 600; | |
| word-break: break-all; | |
| line-height: 1.2; | |
| max-height: 2.4em; | |
| overflow: hidden; | |
| display: -webkit-box; | |
| -webkit-line-clamp: 2; | |
| -webkit-box-orient: vertical; | |
| } | |
| .node-info { | |
| font-size: 0.75rem; | |
| opacity: 0.8; | |
| margin-top: 0.25rem; | |
| } | |
| .hidden-node { | |
| display: none; | |
| } | |
| .search-highlight { | |
| background-color: #fef08a; | |
| padding: 0 2px; | |
| border-radius: 2px; | |
| font-weight: 700; | |
| } | |
| /* Responsive adjustments */ | |
| @media (max-width: 768px) { | |
| .node { | |
| padding: 0.5rem ; | |
| min-height: 80px; | |
| } | |
| .node-name { | |
| font-size: 0.875rem; | |
| } | |
| .node-icon { | |
| font-size: 1.25rem; | |
| } | |
| } | |
| /* Animation for loading */ | |
| @keyframes pulse { | |
| 0%, 100% { opacity: 1; } | |
| 50% { opacity: 0.5; } | |
| } | |
| .loading-pulse { | |
| animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; | |
| } | |
| /* Status colors */ | |
| .status-success { | |
| background-color: #dcfce7; | |
| color: #166534; | |
| border: 1px solid #bbf7d0; | |
| } | |
| .status-error { | |
| background-color: #fee2e2; | |
| color: #991b1b; | |
| border: 1px solid #fecaca; | |
| } | |
| .status-info { | |
| background-color: #dbeafe; | |
| color: #1e40af; | |
| border: 1px solid #bfdbfe; | |
| } | |
| /* Modal styles */ | |
| #fileInfoModal { | |
| backdrop-filter: blur(4px); | |
| } | |
| #fileInfoModal .bg-white { | |
| animation: modalSlideIn 0.3s ease-out; | |
| } | |
| @keyframes modalSlideIn { | |
| from { | |
| opacity: 0; | |
| transform: translateY(-20px) scale(0.95); | |
| } | |
| to { | |
| opacity: 1; | |
| transform: translateY(0) scale(1); | |
| } | |
| } | |
| /* Loading skeleton */ | |
| .skeleton { | |
| background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%); | |
| background-size: 200% 100%; | |
| animation: loading 1.5s infinite; | |
| } | |
| @keyframes loading { | |
| 0% { background-position: 200% 0; } | |
| 100% { background-position: -200% 0; } | |
| } | |
| /* Scrollbar styling */ | |
| #nodes::-webkit-scrollbar { | |
| width: 8px; | |
| height: 8px; | |
| } | |
| #nodes::-webkit-scrollbar-track { | |
| background: #f1f5f9; | |
| border-radius: 4px; | |
| } | |
| #nodes::-webkit-scrollbar-thumb { | |
| background: #cbd5e1; | |
| border-radius: 4px; | |
| } | |
| #nodes::-webkit-scrollbar-thumb:hover { | |
| background: #94a3b8; | |
| } | |
| /* Dark mode support */ | |
| .dark .node { | |
| background-color: #1e293b; | |
| border-color: #334155; | |
| color: #f1f5f9; | |
| } | |
| .dark .node:hover { | |
| box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.3), 0 10px 10px -5px rgba(0, 0, 0, 0.2); | |
| } | |
| .dark .connector { | |
| stroke: #475569; | |
| } | |
| .dark .connector:hover { | |
| stroke: #3b82f6; | |
| } | |
| .dark #fileInfoModal .bg-white { | |
| background-color: #1e293b; | |
| color: #f1f5f9; | |
| } | |
| .dark #filePreview pre { | |
| background-color: #0f172a; | |
| color: #e2e8f0; | |
| border-color: #334155; | |
| } | |
| /* Smooth transitions for dark mode */ | |
| body, .bg-white, .bg-slate-50, .bg-slate-100, .bg-blue-50, .bg-purple-50 { | |
| transition: background-color 0.3s ease, color 0.3s ease; | |
| } |