/* Estilos complementarios a Tailwind. */
:root { color-scheme: light dark; }
html, body { font-family: 'Inter', system-ui, sans-serif; }

/* Scrollbar discreta */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb { background: #94a3b8; border-radius: 6px; }
.dark ::-webkit-scrollbar-thumb { background: #475569; }

/* Drag & drop highlight */
.drag-over { border-color: #06b6d4 !important; background: #ecfeff !important; }
.dark .drag-over { background: rgba(6,182,212,0.1) !important; }

/* Tarjeta de agente */
.agent-card { transition: all .2s ease; }
.agent-card.active { box-shadow: 0 0 0 2px #06b6d4; }

/* Fade-in sutil */
.fade-in { animation: fade .25s ease; }
@keyframes fade { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; } }

/* Spinner */
.spinner { border: 3px solid #cbd5e1; border-top-color:#06b6d4; border-radius:50%; width:20px;height:20px; animation: spin .8s linear infinite; display:inline-block; }
@keyframes spin { to { transform: rotate(360deg); } }

.notebook { height: calc(100vh - 7rem); min-height: 620px; margin: -1rem; display:flex; flex-direction:column; border:1px solid #cbd5e1; border-radius:12px; overflow:hidden; background:#fff; }
.notebook-fullscreen { position:fixed; inset:0; z-index:80; height:100vh; min-height:0; margin:0; border-radius:0; }
.dark .notebook { background:#0f172a; border-color:#334155; }
.notebook-toolbar { padding:.75rem 1rem; display:flex; justify-content:space-between; gap:.75rem; align-items:center; border-bottom:1px solid #cbd5e1; }
.notebook-workspace { min-height:0; flex:1; display:flex; }.notebook-sidebar { width:210px; padding:.75rem; overflow:auto; border-right:1px solid #cbd5e1; }.dark .notebook-sidebar,.dark .notebook-toolbar{border-color:#334155}
.notebook-main { min-width:0; flex:1; overflow:auto; padding:1rem; }
.nb-cell { overflow:hidden; }
.nb-cell-code { display:block; width:100%; resize:none; overflow:hidden; border:0; outline:0; padding:12px 16px; background:#0b1220; color:#e2e8f0; font:13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace; tab-size:4; white-space:pre; min-height:72px; }
.nb-cell-out:empty { display:none; }
.nb-icon-btn { border:1px solid #cbd5e1; border-radius:.4rem; padding:.1rem .5rem; font-size:.75rem; color:#475569; background:#fff; }
.nb-icon-btn:hover { background:#f1f5f9; border-color:#94a3b8; }
.dark .nb-icon-btn { background:#1e293b; border-color:#334155; color:#94a3b8; }
.dark .nb-icon-btn:hover { background:#334155; }
.nb-btn { border:1px solid #94a3b8; border-radius:.5rem; padding:.4rem .65rem; font-size:.8rem; }.nb-btn:hover{background:#f1f5f9}.dark .nb-btn:hover{background:#334155}.nb-btn.primary{background:#0891b2;color:#fff;border-color:#0891b2}
@media (max-width: 760px) { .notebook { margin:0; height:calc(100vh - 5rem); border-radius:0; }.notebook-sidebar{display:none}.notebook-toolbar{align-items:flex-start;flex-direction:column} }

/* Progreso de pipeline */
.step-line { height:2px; background:linear-gradient(90deg,#06b6d4,#0e7490); }
