  @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');
  *{margin:0;padding:0;box-sizing:border-box;font-family:'Poppins',sans-serif;}
  body{background:#f4f7f9;min-height:100vh;color:#1e293b;}
  .topbar{background:linear-gradient(135deg,#0E2586,#1e3a8a);color:white;padding:16px 24px;display:flex;align-items:center;gap:12px;}
  .topbar i{font-size:1.4rem;color:#FFD100;}
  .topbar h1{font-size:1.1rem;font-weight:700;}
  .container{max-width:none;margin:0 auto;padding:24px 28px;}
  /* Tabs */
  .tabs{display:flex;gap:4px;background:#e2e8f0;border-radius:12px;padding:4px;margin-bottom:20px;}
  .tab-btn{flex:1;padding:10px;border:none;background:transparent;border-radius:9px;font-size:0.85rem;font-weight:600;cursor:pointer;color:#64748b;transition:all 0.15s;}
  .tab-btn.active{background:white;color:#0E2586;box-shadow:0 1px 3px rgba(0,0,0,0.1);}
  .tab-content{display:none;}.tab-content.active{display:block;}
  /* Cards */
  .alert-info{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;padding:12px 16px;margin-bottom:16px;font-size:0.82rem;color:#1e40af;display:flex;align-items:center;gap:10px;}
  .alert-warn{background:#fef3c7;border:1px solid #fcd34d;border-radius:12px;padding:12px 16px;margin-bottom:16px;font-size:0.82rem;color:#92400e;display:flex;align-items:center;gap:10px;}
  .toolbar{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;align-items:center;}
  .btn{border:none;border-radius:10px;padding:9px 16px;font-weight:600;font-size:0.82rem;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:all 0.15s;}
  .btn-primary{background:#0E2586;color:white;}.btn-primary:hover{background:#1e3a8a;}
  .btn-success{background:#10b981;color:white;}.btn-success:hover{background:#059669;}
  .btn-danger{background:#ef4444;color:white;}.btn-danger:hover{background:#dc2626;}
  .btn-warn{background:#f59e0b;color:white;}.btn-warn:hover{background:#d97706;}
  .btn-ghost{background:#f1f5f9;color:#475569;}.btn-ghost:hover{background:#e2e8f0;}
  .btn-sm{padding:5px 10px;font-size:0.75rem;}
  .search-box{flex:1;min-width:200px;border:1px solid #e2e8f0;border-radius:10px;padding:9px 14px;font-size:0.85rem;outline:none;}
  .search-box:focus{border-color:#0E2586;}
  .user-card{background:white;border-radius:14px;padding:18px;margin-bottom:12px;box-shadow:0 1px 3px rgba(0,0,0,0.06);border:1px solid #f1f5f9;}
  .user-card.suspendido{opacity:0.6;border-color:#fca5a5;}
  .user-header{display:flex;align-items:center;gap:14px;margin-bottom:14px;}
  .user-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#0E2586,#1e3a8a);color:white;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;flex-shrink:0;overflow:hidden;}
  .user-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;}
  .user-info{flex:1;min-width:0;}
  .user-name{font-weight:700;font-size:0.92rem;}
  .user-email{font-size:0.76rem;color:#64748b;}
  .rol-badge{font-size:0.68rem;font-weight:700;padding:3px 9px;border-radius:20px;white-space:nowrap;}
  .rol-5,.rol-admin{background:#fee2e2;color:#991b1b;}
  .rol-4,.rol-coordinacion{background:#fef3c7;color:#92400e;}
  .rol-3,.rol-dirigente{background:#dbeafe;color:#1e40af;}
  .rol-2,.rol-comite{background:#dcfce7;color:#166534;}
  .rol-1{background:#f1f5f9;color:#475569;}
  .rol-0{background:#f0f0f0;color:#999;}
  .user-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:12px;border-top:1px solid #f1f5f9;}
  .control-group label{font-size:0.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:0.5px;display:block;margin-bottom:5px;}
  .control-group select{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:7px 10px;font-size:0.82rem;outline:none;background:white;}
  .user-actions{display:flex;gap:6px;padding-top:10px;flex-wrap:wrap;}
  /* Permisos toggle */
  .permisos-toggle{margin-top:12px;padding-top:12px;border-top:1px solid #f1f5f9;}
  .permisos-toggle summary{cursor:pointer;font-size:0.78rem;font-weight:600;color:#0E2586;list-style:none;display:flex;align-items:center;gap:6px;}
  .permisos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px;margin-top:10px;}
  .permiso-item{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;background:#f8fafc;border-radius:8px;font-size:0.78rem;}
  .permiso-label{display:flex;align-items:center;gap:6px;}
  .permiso-base{width:6px;height:6px;border-radius:50%;background:#94a3b8;flex-shrink:0;}
  .permiso-override-true .permiso-base{background:#10b981;}
  .permiso-override-false .permiso-base{background:#ef4444;}
  .switch{position:relative;display:inline-block;width:38px;height:21px;flex-shrink:0;}
  .switch input{opacity:0;width:0;height:0;}
  .slider{position:absolute;cursor:pointer;inset:0;background:#cbd5e1;border-radius:21px;transition:0.2s;}
  .slider:before{content:"";position:absolute;height:15px;width:15px;left:3px;bottom:3px;background:white;border-radius:50%;transition:0.2s;}
  input:checked+.slider{background:#10b981;}
  input:checked+.slider:before{transform:translateX(17px);}
  /* Asesorados */
  .ap-section{margin-top:12px;padding-top:12px;border-top:1px solid #f1f5f9;}
  .ap-section h4{font-size:0.78rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:8px;}
  .ap-lista{display:flex;flex-wrap:wrap;gap:6px;min-height:28px;}
  .asesorado-badge{background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;padding:4px 10px;font-size:0.75rem;display:flex;align-items:center;gap:6px;}
  .asesorado-badge button{background:none;border:none;color:#64748b;cursor:pointer;padding:0;font-size:0.7rem;}
  .ap-empty{color:#94a3b8;font-size:0.78rem;font-style:italic;}
  .asesorado-search{position:relative;margin-top:8px;}
  .asesorado-search input{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:7px 10px;font-size:0.82rem;outline:none;}
  .ap-resultados{position:absolute;top:100%;left:0;right:0;background:white;border:1px solid #e2e8f0;border-radius:8px;z-index:100;max-height:200px;overflow-y:auto;display:none;box-shadow:0 4px 12px rgba(0,0,0,0.1);}
  .ap-resultado-item{padding:8px 12px;cursor:pointer;font-size:0.82rem;}
  .ap-resultado-item:hover{background:#f0f9ff;}
  /* Workspace tab */
  .ws-card{background:white;border-radius:14px;padding:16px;margin-bottom:10px;box-shadow:0 1px 3px rgba(0,0,0,0.06);border:1px solid #f1f5f9;display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
  .ws-status{font-size:0.7rem;font-weight:700;padding:3px 9px;border-radius:20px;white-space:nowrap;}
  .ws-en-erp{background:#dcfce7;color:#166534;}
  .ws-sin-erp{background:#fef3c7;color:#92400e;}
  .ws-suspendido{background:#fee2e2;color:#991b1b;}
  /* Modal */
  .modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:1000;display:none;align-items:center;justify-content:center;padding:20px;}
  .modal-overlay.active{display:flex;}
  .modal{background:white;border-radius:16px;padding:24px;max-width:460px;width:100%;max-height:90vh;overflow-y:auto;}
  .modal h3{font-size:1rem;font-weight:700;margin-bottom:16px;color:#0E2586;}
  .modal label{display:block;font-size:0.78rem;font-weight:600;color:#475569;margin:10px 0 5px;}
  .modal input,.modal select{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:9px 12px;font-size:0.85rem;outline:none;}
  .modal-actions{display:flex;gap:10px;margin-top:18px;}
  .loading{text-align:center;padding:40px;color:#94a3b8;}
  .no-access{text-align:center;padding:60px 20px;}
