Spaces:
Sleeping
Sleeping
| :root { | |
| --bg-dark: #09090b; | |
| --bg-panel: #18181b; | |
| --border: #27272a; | |
| --primary: #6366f1; | |
| --text: #e4e4e7; | |
| --text-dim: #a1a1aa; | |
| } | |
| body { margin: 0; background: var(--bg-dark); color: var(--text); font-family: 'Inter', sans-serif; display: flex; height: 100vh; overflow: hidden; } | |
| /* Sidebar */ | |
| .sidebar { width: 300px; background: var(--bg-panel); border-right: 1px solid var(--border); display: flex; flex-direction: column; padding: 20px; } | |
| .brand { font-family: 'JetBrains Mono', monospace; font-weight: 700; font-size: 1.2rem; display: flex; align-items: center; gap: 10px; margin-bottom: 40px; } | |
| .logo-square { width: 20px; height: 20px; background: var(--primary); border-radius: 4px; } | |
| .nav-item { | |
| background: transparent; border: none; color: var(--text-dim); | |
| width: 100%; text-align: left; padding: 12px; margin-bottom: 5px; | |
| border-radius: 6px; cursor: pointer; font-size: 0.95rem; | |
| display: flex; gap: 10px; align-items: center; transition: 0.2s; | |
| } | |
| .nav-item:hover { background: #27272a; color: white; } | |
| .nav-item.active { background: #2e2e32; color: white; font-weight: 600; border-left: 3px solid var(--primary); } | |
| .sidebar-footer { margin-top: auto; font-size: 0.8rem; } | |
| .status-ready { color: #4ade80; } | |
| .status-working { color: #facc15; } | |
| .status-success { color: #6366f1; } | |
| .status-error { color: #ef4444; } | |
| /* Main Content */ | |
| .main-content { flex: 1; position: relative; } | |
| .tab-pane { display: none; height: 100%; } | |
| .tab-pane.active { display: flex; } | |
| /* Visualizer Tab Layout */ | |
| #tab-visualizer { flex-direction: row; } | |
| .editor-panel { width: 400px; border-right: 1px solid var(--border); display: flex; flex-direction: column; background: #111; } | |
| .panel-header { padding: 10px; background: #1f1f22; font-size: 0.8rem; color: #888; border-bottom: 1px solid var(--border); } | |
| textarea { flex: 1; background: #000; border: none; color: #ccc; padding: 15px; font-family: 'JetBrains Mono'; resize: none; outline: none; } | |
| .action-bar { padding: 15px; border-top: 1px solid var(--border); display: flex; gap: 10px; } | |
| .canvas-panel { flex: 1; background-image: radial-gradient(#333 1px, transparent 1px); background-size: 20px 20px; } | |
| /* Dataset Tab Layout */ | |
| #tab-dataset { flex-direction: column; padding: 40px; overflow-y: auto; } | |
| .dataset-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; } | |
| .header-actions { display: flex; gap: 10px; } | |
| /* Table */ | |
| .data-table { width: 100%; border-collapse: collapse; text-align: left; } | |
| .data-table th { border-bottom: 1px solid var(--border); padding: 15px; color: var(--text-dim); font-size: 0.85rem; font-weight: 600; } | |
| .data-table td { border-bottom: 1px solid #1f1f22; padding: 15px; font-size: 0.9rem; } | |
| .mono { font-family: 'JetBrains Mono'; color: var(--primary); } | |
| .mono-dim { font-family: 'JetBrains Mono'; color: #666; font-size: 0.8rem; } | |
| .badge { background: #27272a; padding: 4px 8px; border-radius: 4px; font-size: 0.75rem; } | |
| /* Buttons */ | |
| .btn { padding: 10px 16px; border-radius: 6px; border: none; cursor: pointer; font-weight: 500; font-size: 0.9rem; text-decoration: none; display: inline-block;} | |
| .btn-primary { background: var(--primary); color: white; } | |
| .btn-primary:hover { background: #4f46e5; } | |
| .btn-secondary { background: #3f3f46; color: white; } | |
| .btn-outline { background: transparent; border: 1px solid var(--border); color: var(--text); } | |
| .btn:disabled { opacity: 0.5; cursor: not-allowed; } | |
| /* Modal */ | |
| .modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.7); display: flex; align-items: center; justify-content: center; z-index: 1000; } | |
| .hidden { display: none; } | |
| .modal { background: var(--bg-panel); width: 400px; padding: 30px; border-radius: 12px; border: 1px solid var(--border); } | |
| .modal h3 { margin-top: 0; } | |
| .modal input { width: 100%; padding: 10px; margin-bottom: 15px; background: #000; border: 1px solid var(--border); color: white; border-radius: 4px; } | |
| .modal-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; } |