/* FUTURO: suporte a temas (light/dark/custom) via variáveis CSS em :root + classe data-theme no <body> */
:root { --sidebar-w: 220px; }
body { font-family: 'Inter', system-ui, sans-serif; }
.sidebar { width: var(--sidebar-w); }
.main { margin-left: var(--sidebar-w); transition: margin-right 0.3s ease; }
.main.panel-open { margin-right: 520px; }
.spin { animation: spin 1s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.fade-in { animation: fadeIn 0.25s ease; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #0f172a; }
::-webkit-scrollbar-thumb { background: #334155; border-radius: 3px; }
.trow { cursor: pointer; }
.trow:hover { background: rgba(148,163,184,0.06); }
.client-card { cursor: pointer; transition: background 0.15s ease; }
.client-card:hover { background: rgba(55,65,81,0.75); }
.badge { display: inline-flex; align-items: center; padding: 2px 8px; border-radius: 9999px; font-size: 11px; font-weight: 600; letter-spacing: 0.02em; }
#agentPanel { transform: translateX(100%); transition: transform 0.3s cubic-bezier(0.4,0,0.2,1); }
#agentPanel.open { transform: translateX(0); }
.disk-bar-fill { transition: width 0.5s ease; }
.trow .desc-edit-btn { opacity: 0; transition: opacity 0.15s; }
.trow:hover .desc-edit-btn { opacity: 1; }
